@azure/search-documents 12.2.0-beta.1 → 12.2.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +3 -3
- package/README.md +208 -232
- package/dist/browser/base64-browser.d.mts.map +1 -0
- package/dist/browser/base64-browser.mjs.map +1 -0
- package/dist/browser/base64.d.ts +11 -0
- package/{dist-esm/src/base64.browser.js → dist/browser/base64.js} +1 -1
- package/dist/browser/errorModels.d.ts +56 -0
- package/dist/browser/errorModels.d.ts.map +1 -0
- package/dist/browser/errorModels.js.map +1 -0
- package/dist/browser/generated/data/index.d.ts +4 -0
- package/dist/browser/generated/data/index.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/data/index.js +3 -3
- package/dist/browser/generated/data/index.js.map +1 -0
- package/dist/browser/generated/data/models/index.d.ts +1330 -0
- package/dist/browser/generated/data/models/index.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/data/models/index.js +30 -14
- package/dist/browser/generated/data/models/index.js.map +1 -0
- package/dist/browser/generated/data/models/mappers.d.ts +52 -0
- package/dist/browser/generated/data/models/mappers.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/data/models/mappers.js +210 -23
- package/dist/browser/generated/data/models/mappers.js.map +1 -0
- package/dist/browser/generated/data/models/parameters.d.ts +63 -0
- package/dist/browser/generated/data/models/parameters.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/data/models/parameters.js +19 -1
- package/dist/browser/generated/data/models/parameters.js.map +1 -0
- package/dist/browser/generated/data/operations/documents.d.ts +70 -0
- package/dist/browser/generated/data/operations/documents.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/data/operations/documents.js +17 -5
- package/dist/browser/generated/data/operations/documents.js.map +1 -0
- package/dist/browser/generated/data/operations/index.d.ts +2 -0
- package/dist/browser/generated/data/operations/index.d.ts.map +1 -0
- package/{dist-esm/src/generated/data/operationsInterfaces → dist/browser/generated/data/operations}/index.js +1 -1
- package/dist/browser/generated/data/operations/index.js.map +1 -0
- package/dist/browser/generated/data/operationsInterfaces/documents.d.ts +62 -0
- package/dist/browser/generated/data/operationsInterfaces/documents.d.ts.map +1 -0
- package/dist/browser/generated/data/operationsInterfaces/documents.js.map +1 -0
- package/dist/browser/generated/data/operationsInterfaces/index.d.ts +2 -0
- package/dist/browser/generated/data/operationsInterfaces/index.d.ts.map +1 -0
- package/{dist-esm/src/generated/data/operations → dist/browser/generated/data/operationsInterfaces}/index.js +1 -1
- package/dist/browser/generated/data/operationsInterfaces/index.js.map +1 -0
- package/dist/browser/generated/data/searchClient.d.ts +21 -0
- package/dist/browser/generated/data/searchClient.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/data/searchClient.js +15 -5
- package/dist/browser/generated/data/searchClient.js.map +1 -0
- package/dist/browser/generated/knowledgeAgent/index.d.ts +4 -0
- package/dist/browser/generated/knowledgeAgent/index.d.ts.map +1 -0
- package/{dist-esm/src/generated/service → dist/browser/generated/knowledgeAgent}/index.js +3 -3
- package/dist/browser/generated/knowledgeAgent/index.js.map +1 -0
- package/dist/browser/generated/knowledgeAgent/models/index.d.ts +264 -0
- package/dist/browser/generated/knowledgeAgent/models/index.d.ts.map +1 -0
- package/dist/browser/generated/knowledgeAgent/models/index.js +30 -0
- package/dist/browser/generated/knowledgeAgent/models/index.js.map +1 -0
- package/dist/browser/generated/knowledgeAgent/models/mappers.d.ts +43 -0
- package/dist/browser/generated/knowledgeAgent/models/mappers.d.ts.map +1 -0
- package/dist/browser/generated/knowledgeAgent/models/mappers.js +627 -0
- package/dist/browser/generated/knowledgeAgent/models/mappers.js.map +1 -0
- package/dist/browser/generated/knowledgeAgent/models/parameters.d.ts +9 -0
- package/dist/browser/generated/knowledgeAgent/models/parameters.d.ts.map +1 -0
- package/dist/browser/generated/knowledgeAgent/models/parameters.js +75 -0
- package/dist/browser/generated/knowledgeAgent/models/parameters.js.map +1 -0
- package/dist/browser/generated/knowledgeAgent/operations/index.d.ts +2 -0
- package/dist/browser/generated/knowledgeAgent/operations/index.d.ts.map +1 -0
- package/dist/browser/generated/knowledgeAgent/operations/index.js +9 -0
- package/dist/browser/generated/knowledgeAgent/operations/index.js.map +1 -0
- package/dist/browser/generated/knowledgeAgent/operations/knowledgeRetrieval.d.ts +19 -0
- package/dist/browser/generated/knowledgeAgent/operations/knowledgeRetrieval.d.ts.map +1 -0
- package/dist/browser/generated/knowledgeAgent/operations/knowledgeRetrieval.js +54 -0
- package/dist/browser/generated/knowledgeAgent/operations/knowledgeRetrieval.js.map +1 -0
- package/dist/browser/generated/knowledgeAgent/operationsInterfaces/index.d.ts +2 -0
- package/dist/browser/generated/knowledgeAgent/operationsInterfaces/index.d.ts.map +1 -0
- package/dist/browser/generated/knowledgeAgent/operationsInterfaces/index.js +9 -0
- package/dist/browser/generated/knowledgeAgent/operationsInterfaces/index.js.map +1 -0
- package/dist/browser/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.d.ts +11 -0
- package/dist/browser/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.d.ts.map +1 -0
- package/dist/browser/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.js +9 -0
- package/dist/browser/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.js.map +1 -0
- package/dist/browser/generated/knowledgeAgent/searchClient.d.ts +21 -0
- package/dist/browser/generated/knowledgeAgent/searchClient.d.ts.map +1 -0
- package/dist/browser/generated/knowledgeAgent/searchClient.js +88 -0
- package/dist/browser/generated/knowledgeAgent/searchClient.js.map +1 -0
- package/dist/browser/generated/service/index.d.ts +4 -0
- package/dist/browser/generated/service/index.d.ts.map +1 -0
- package/dist/browser/generated/service/index.js +11 -0
- package/dist/browser/generated/service/index.js.map +1 -0
- package/dist/browser/generated/service/models/index.d.ts +5321 -0
- package/dist/browser/generated/service/models/index.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/service/models/index.js +205 -27
- package/dist/browser/generated/service/models/index.js.map +1 -0
- package/dist/browser/generated/service/models/mappers.d.ts +322 -0
- package/dist/browser/generated/service/models/mappers.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/service/models/mappers.js +1948 -558
- package/dist/browser/generated/service/models/mappers.js.map +1 -0
- package/dist/browser/generated/service/models/parameters.d.ts +34 -0
- package/dist/browser/generated/service/models/parameters.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/service/models/parameters.js +39 -7
- package/dist/browser/generated/service/models/parameters.js.map +1 -0
- package/dist/browser/generated/service/operations/aliases.d.ts +44 -0
- package/dist/browser/generated/service/operations/aliases.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/service/operations/aliases.js +3 -2
- package/dist/browser/generated/service/operations/aliases.js.map +1 -0
- package/dist/browser/generated/service/operations/dataSources.d.ts +43 -0
- package/dist/browser/generated/service/operations/dataSources.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/service/operations/dataSources.js +3 -2
- package/dist/browser/generated/service/operations/dataSources.js.map +1 -0
- package/dist/browser/generated/service/operations/index.d.ts +9 -0
- package/dist/browser/generated/service/operations/index.d.ts.map +1 -0
- package/dist/browser/generated/service/operations/index.js +16 -0
- package/dist/browser/generated/service/operations/index.js.map +1 -0
- package/dist/browser/generated/service/operations/indexers.d.ts +74 -0
- package/dist/browser/generated/service/operations/indexers.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/service/operations/indexers.js +28 -2
- package/dist/browser/generated/service/operations/indexers.js.map +1 -0
- package/dist/browser/generated/service/operations/indexes.d.ts +58 -0
- package/dist/browser/generated/service/operations/indexes.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/service/operations/indexes.js +3 -2
- package/dist/browser/generated/service/operations/indexes.js.map +1 -0
- package/dist/browser/generated/service/operations/knowledgeAgents.d.ts +43 -0
- package/dist/browser/generated/service/operations/knowledgeAgents.d.ts.map +1 -0
- package/dist/browser/generated/service/operations/knowledgeAgents.js +160 -0
- package/dist/browser/generated/service/operations/knowledgeAgents.js.map +1 -0
- package/dist/browser/generated/service/operations/knowledgeSources.d.ts +43 -0
- package/dist/browser/generated/service/operations/knowledgeSources.d.ts.map +1 -0
- package/dist/browser/generated/service/operations/knowledgeSources.js +160 -0
- package/dist/browser/generated/service/operations/knowledgeSources.js.map +1 -0
- package/dist/browser/generated/service/operations/skillsets.d.ts +50 -0
- package/dist/browser/generated/service/operations/skillsets.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/service/operations/skillsets.js +3 -2
- package/dist/browser/generated/service/operations/skillsets.js.map +1 -0
- package/dist/browser/generated/service/operations/synonymMaps.d.ts +43 -0
- package/dist/browser/generated/service/operations/synonymMaps.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/service/operations/synonymMaps.js +3 -2
- package/dist/browser/generated/service/operations/synonymMaps.js.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/aliases.d.ts +36 -0
- package/dist/browser/generated/service/operationsInterfaces/aliases.d.ts.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/aliases.js.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/dataSources.d.ts +35 -0
- package/dist/browser/generated/service/operationsInterfaces/dataSources.d.ts.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/dataSources.js.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/index.d.ts +9 -0
- package/dist/browser/generated/service/operationsInterfaces/index.d.ts.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/index.js +16 -0
- package/dist/browser/generated/service/operationsInterfaces/index.js.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/indexers.d.ts +66 -0
- package/dist/browser/generated/service/operationsInterfaces/indexers.d.ts.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/indexers.js.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/indexes.d.ts +50 -0
- package/dist/browser/generated/service/operationsInterfaces/indexes.d.ts.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/indexes.js.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/knowledgeAgents.d.ts +35 -0
- package/dist/browser/generated/service/operationsInterfaces/knowledgeAgents.d.ts.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/knowledgeAgents.js +9 -0
- package/dist/browser/generated/service/operationsInterfaces/knowledgeAgents.js.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/knowledgeSources.d.ts +35 -0
- package/dist/browser/generated/service/operationsInterfaces/knowledgeSources.d.ts.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/knowledgeSources.js +9 -0
- package/dist/browser/generated/service/operationsInterfaces/knowledgeSources.js.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/skillsets.d.ts +42 -0
- package/dist/browser/generated/service/operationsInterfaces/skillsets.d.ts.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/skillsets.js.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/synonymMaps.d.ts +35 -0
- package/dist/browser/generated/service/operationsInterfaces/synonymMaps.d.ts.map +1 -0
- package/dist/browser/generated/service/operationsInterfaces/synonymMaps.js.map +1 -0
- package/dist/browser/generated/service/searchServiceClient.d.ts +36 -0
- package/dist/browser/generated/service/searchServiceClient.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/generated/service/searchServiceClient.js +46 -7
- package/dist/browser/generated/service/searchServiceClient.js.map +1 -0
- package/dist/browser/geographyPoint.d.ts +27 -0
- package/dist/browser/geographyPoint.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/geographyPoint.js +8 -0
- package/dist/browser/geographyPoint.js.map +1 -0
- package/dist/browser/index.d.ts +18 -0
- package/dist/browser/index.d.ts.map +1 -0
- package/dist/browser/index.js +18 -0
- package/dist/browser/index.js.map +1 -0
- package/dist/browser/indexDocumentsBatch.d.ts +42 -0
- package/dist/browser/indexDocumentsBatch.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/indexDocumentsBatch.js +25 -8
- package/dist/browser/indexDocumentsBatch.js.map +1 -0
- package/dist/browser/indexModels.d.ts +928 -0
- package/dist/browser/indexModels.d.ts.map +1 -0
- package/dist/browser/indexModels.js.map +1 -0
- package/dist/browser/knowledgeAgentModels.d.ts +43 -0
- package/dist/browser/knowledgeAgentModels.d.ts.map +1 -0
- package/dist/browser/knowledgeAgentModels.js +4 -0
- package/dist/browser/knowledgeAgentModels.js.map +1 -0
- package/dist/browser/knowledgeRetrievalClient.d.ts +68 -0
- package/dist/browser/knowledgeRetrievalClient.d.ts.map +1 -0
- package/dist/browser/knowledgeRetrievalClient.js +108 -0
- package/dist/browser/knowledgeRetrievalClient.js.map +1 -0
- package/dist/browser/logger.d.ts +5 -0
- package/dist/browser/logger.d.ts.map +1 -0
- package/dist/browser/odata.d.ts +17 -0
- package/dist/browser/odata.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/odata.js +5 -2
- package/dist/browser/odata.js.map +1 -0
- package/dist/browser/odataMetadataPolicy.d.ts +9 -0
- package/dist/browser/odataMetadataPolicy.d.ts.map +1 -0
- package/dist/browser/odataMetadataPolicy.js.map +1 -0
- package/dist/browser/package.json +3 -0
- package/dist/browser/searchApiKeyCredentialPolicy.d.ts +8 -0
- package/dist/browser/searchApiKeyCredentialPolicy.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/searchApiKeyCredentialPolicy.js +2 -2
- package/dist/browser/searchApiKeyCredentialPolicy.js.map +1 -0
- package/dist/browser/searchAudience.d.ts +18 -0
- package/dist/browser/searchAudience.d.ts.map +1 -0
- package/dist/browser/searchClient.d.ts +277 -0
- package/dist/browser/searchClient.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/searchClient.js +238 -141
- package/dist/browser/searchClient.js.map +1 -0
- package/dist/browser/searchIndexClient.d.ts +310 -0
- package/dist/browser/searchIndexClient.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/searchIndexClient.js +474 -180
- package/dist/browser/searchIndexClient.js.map +1 -0
- package/dist/browser/searchIndexerClient.d.ts +202 -0
- package/dist/browser/searchIndexerClient.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/searchIndexerClient.js +95 -50
- package/dist/browser/searchIndexerClient.js.map +1 -0
- package/dist/browser/searchIndexingBufferedSender.d.ts +193 -0
- package/dist/browser/searchIndexingBufferedSender.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/searchIndexingBufferedSender.js +55 -16
- package/dist/browser/searchIndexingBufferedSender.js.map +1 -0
- package/dist/browser/serialization.d.ts +3 -0
- package/dist/browser/serialization.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/serialization.js +2 -2
- package/dist/browser/serialization.js.map +1 -0
- package/dist/browser/serviceModels.d.ts +3087 -0
- package/dist/browser/serviceModels.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/serviceModels.js +8 -7
- package/dist/browser/serviceModels.js.map +1 -0
- package/dist/browser/serviceUtils.d.ts +41 -0
- package/dist/browser/serviceUtils.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/serviceUtils.js +282 -75
- package/dist/browser/serviceUtils.js.map +1 -0
- package/dist/browser/synonymMapHelper-browser.d.mts.map +1 -0
- package/dist/browser/synonymMapHelper-browser.mjs.map +1 -0
- package/dist/browser/synonymMapHelper.d.ts +11 -0
- package/{dist-esm/src/synonymMapHelper.browser.js → dist/browser/synonymMapHelper.js} +1 -1
- package/dist/browser/tracing.d.ts +7 -0
- package/dist/browser/tracing.d.ts.map +1 -0
- package/dist/browser/walk.d.ts +2 -0
- package/dist/browser/walk.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/walk.js +9 -12
- package/dist/browser/walk.js.map +1 -0
- package/dist/commonjs/base64.d.ts +11 -0
- package/dist/commonjs/base64.d.ts.map +1 -0
- package/dist/commonjs/base64.js +21 -0
- package/dist/commonjs/base64.js.map +1 -0
- package/dist/commonjs/errorModels.d.ts +56 -0
- package/dist/commonjs/errorModels.d.ts.map +1 -0
- package/dist/commonjs/errorModels.js +5 -0
- package/dist/commonjs/errorModels.js.map +1 -0
- package/dist/commonjs/generated/data/index.d.ts +4 -0
- package/dist/commonjs/generated/data/index.d.ts.map +1 -0
- package/dist/commonjs/generated/data/index.js +16 -0
- package/dist/commonjs/generated/data/index.js.map +1 -0
- package/dist/commonjs/generated/data/models/index.d.ts +1330 -0
- package/dist/commonjs/generated/data/models/index.d.ts.map +1 -0
- package/dist/commonjs/generated/data/models/index.js +293 -0
- package/dist/commonjs/generated/data/models/index.js.map +1 -0
- package/dist/commonjs/generated/data/models/mappers.d.ts +52 -0
- package/dist/commonjs/generated/data/models/mappers.d.ts.map +1 -0
- package/dist/commonjs/generated/data/models/mappers.js +1522 -0
- package/dist/commonjs/generated/data/models/mappers.js.map +1 -0
- package/dist/commonjs/generated/data/models/parameters.d.ts +63 -0
- package/dist/commonjs/generated/data/models/parameters.d.ts.map +1 -0
- package/dist/commonjs/generated/data/models/parameters.js +632 -0
- package/dist/commonjs/generated/data/models/parameters.js.map +1 -0
- package/dist/commonjs/generated/data/operations/documents.d.ts +70 -0
- package/dist/commonjs/generated/data/operations/documents.d.ts.map +1 -0
- package/dist/commonjs/generated/data/operations/documents.js +328 -0
- package/dist/commonjs/generated/data/operations/documents.js.map +1 -0
- package/dist/commonjs/generated/data/operations/index.d.ts +2 -0
- package/dist/commonjs/generated/data/operations/index.d.ts.map +1 -0
- package/dist/commonjs/generated/data/operations/index.js +12 -0
- package/dist/commonjs/generated/data/operations/index.js.map +1 -0
- package/dist/commonjs/generated/data/operationsInterfaces/documents.d.ts +62 -0
- package/dist/commonjs/generated/data/operationsInterfaces/documents.d.ts.map +1 -0
- package/dist/commonjs/generated/data/operationsInterfaces/documents.js +10 -0
- package/dist/commonjs/generated/data/operationsInterfaces/documents.js.map +1 -0
- package/dist/commonjs/generated/data/operationsInterfaces/index.d.ts +2 -0
- package/dist/commonjs/generated/data/operationsInterfaces/index.d.ts.map +1 -0
- package/dist/commonjs/generated/data/operationsInterfaces/index.js +12 -0
- package/dist/commonjs/generated/data/operationsInterfaces/index.js.map +1 -0
- package/dist/commonjs/generated/data/searchClient.d.ts +21 -0
- package/dist/commonjs/generated/data/searchClient.d.ts.map +1 -0
- package/dist/commonjs/generated/data/searchClient.js +93 -0
- package/dist/commonjs/generated/data/searchClient.js.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/index.d.ts +4 -0
- package/dist/commonjs/generated/knowledgeAgent/index.d.ts.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/index.js +16 -0
- package/dist/commonjs/generated/knowledgeAgent/index.js.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/models/index.d.ts +264 -0
- package/dist/commonjs/generated/knowledgeAgent/models/index.d.ts.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/models/index.js +33 -0
- package/dist/commonjs/generated/knowledgeAgent/models/index.js.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/models/mappers.d.ts +43 -0
- package/dist/commonjs/generated/knowledgeAgent/models/mappers.d.ts.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/models/mappers.js +630 -0
- package/dist/commonjs/generated/knowledgeAgent/models/mappers.js.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/models/parameters.d.ts +9 -0
- package/dist/commonjs/generated/knowledgeAgent/models/parameters.d.ts.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/models/parameters.js +78 -0
- package/dist/commonjs/generated/knowledgeAgent/models/parameters.js.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/operations/index.d.ts +2 -0
- package/dist/commonjs/generated/knowledgeAgent/operations/index.d.ts.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/operations/index.js +12 -0
- package/dist/commonjs/generated/knowledgeAgent/operations/index.js.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/operations/knowledgeRetrieval.d.ts +19 -0
- package/dist/commonjs/generated/knowledgeAgent/operations/knowledgeRetrieval.d.ts.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/operations/knowledgeRetrieval.js +59 -0
- package/dist/commonjs/generated/knowledgeAgent/operations/knowledgeRetrieval.js.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/operationsInterfaces/index.d.ts +2 -0
- package/dist/commonjs/generated/knowledgeAgent/operationsInterfaces/index.d.ts.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/operationsInterfaces/index.js +12 -0
- package/dist/commonjs/generated/knowledgeAgent/operationsInterfaces/index.js.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.d.ts +11 -0
- package/dist/commonjs/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.d.ts.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.js +10 -0
- package/dist/commonjs/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.js.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/searchClient.d.ts +21 -0
- package/dist/commonjs/generated/knowledgeAgent/searchClient.d.ts.map +1 -0
- package/dist/commonjs/generated/knowledgeAgent/searchClient.js +93 -0
- package/dist/commonjs/generated/knowledgeAgent/searchClient.js.map +1 -0
- package/dist/commonjs/generated/service/index.d.ts +4 -0
- package/dist/commonjs/generated/service/index.d.ts.map +1 -0
- package/dist/commonjs/generated/service/index.js +16 -0
- package/dist/commonjs/generated/service/index.js.map +1 -0
- package/dist/commonjs/generated/service/models/index.d.ts +5321 -0
- package/dist/commonjs/generated/service/models/index.d.ts.map +1 -0
- package/dist/commonjs/generated/service/models/index.js +1632 -0
- package/dist/commonjs/generated/service/models/index.js.map +1 -0
- package/dist/commonjs/generated/service/models/mappers.d.ts +322 -0
- package/dist/commonjs/generated/service/models/mappers.d.ts.map +1 -0
- package/dist/commonjs/generated/service/models/mappers.js +7456 -0
- package/dist/commonjs/generated/service/models/mappers.js.map +1 -0
- package/dist/commonjs/generated/service/models/parameters.d.ts +34 -0
- package/dist/commonjs/generated/service/models/parameters.d.ts.map +1 -0
- package/dist/commonjs/generated/service/models/parameters.js +258 -0
- package/dist/commonjs/generated/service/models/parameters.js.map +1 -0
- package/dist/commonjs/generated/service/operations/aliases.d.ts +44 -0
- package/dist/commonjs/generated/service/operations/aliases.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operations/aliases.js +166 -0
- package/dist/commonjs/generated/service/operations/aliases.js.map +1 -0
- package/dist/commonjs/generated/service/operations/dataSources.d.ts +43 -0
- package/dist/commonjs/generated/service/operations/dataSources.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operations/dataSources.js +168 -0
- package/dist/commonjs/generated/service/operations/dataSources.js.map +1 -0
- package/dist/commonjs/generated/service/operations/index.d.ts +9 -0
- package/dist/commonjs/generated/service/operations/index.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operations/index.js +19 -0
- package/dist/commonjs/generated/service/operations/index.js.map +1 -0
- package/dist/commonjs/generated/service/operations/indexers.d.ts +74 -0
- package/dist/commonjs/generated/service/operations/indexers.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operations/indexers.js +286 -0
- package/dist/commonjs/generated/service/operations/indexers.js.map +1 -0
- package/dist/commonjs/generated/service/operations/indexes.d.ts +58 -0
- package/dist/commonjs/generated/service/operations/indexes.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operations/indexes.js +218 -0
- package/dist/commonjs/generated/service/operations/indexes.js.map +1 -0
- package/dist/commonjs/generated/service/operations/knowledgeAgents.d.ts +43 -0
- package/dist/commonjs/generated/service/operations/knowledgeAgents.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operations/knowledgeAgents.js +165 -0
- package/dist/commonjs/generated/service/operations/knowledgeAgents.js.map +1 -0
- package/dist/commonjs/generated/service/operations/knowledgeSources.d.ts +43 -0
- package/dist/commonjs/generated/service/operations/knowledgeSources.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operations/knowledgeSources.js +165 -0
- package/dist/commonjs/generated/service/operations/knowledgeSources.js.map +1 -0
- package/dist/commonjs/generated/service/operations/skillsets.d.ts +50 -0
- package/dist/commonjs/generated/service/operations/skillsets.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operations/skillsets.js +194 -0
- package/dist/commonjs/generated/service/operations/skillsets.js.map +1 -0
- package/dist/commonjs/generated/service/operations/synonymMaps.d.ts +43 -0
- package/dist/commonjs/generated/service/operations/synonymMaps.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operations/synonymMaps.js +165 -0
- package/dist/commonjs/generated/service/operations/synonymMaps.js.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/aliases.d.ts +36 -0
- package/dist/commonjs/generated/service/operationsInterfaces/aliases.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/aliases.js +10 -0
- package/dist/commonjs/generated/service/operationsInterfaces/aliases.js.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/dataSources.d.ts +35 -0
- package/dist/commonjs/generated/service/operationsInterfaces/dataSources.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/dataSources.js +10 -0
- package/dist/commonjs/generated/service/operationsInterfaces/dataSources.js.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/index.d.ts +9 -0
- package/dist/commonjs/generated/service/operationsInterfaces/index.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/index.js +19 -0
- package/dist/commonjs/generated/service/operationsInterfaces/index.js.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/indexers.d.ts +66 -0
- package/dist/commonjs/generated/service/operationsInterfaces/indexers.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/indexers.js +10 -0
- package/dist/commonjs/generated/service/operationsInterfaces/indexers.js.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/indexes.d.ts +50 -0
- package/dist/commonjs/generated/service/operationsInterfaces/indexes.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/indexes.js +10 -0
- package/dist/commonjs/generated/service/operationsInterfaces/indexes.js.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/knowledgeAgents.d.ts +35 -0
- package/dist/commonjs/generated/service/operationsInterfaces/knowledgeAgents.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/knowledgeAgents.js +10 -0
- package/dist/commonjs/generated/service/operationsInterfaces/knowledgeAgents.js.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/knowledgeSources.d.ts +35 -0
- package/dist/commonjs/generated/service/operationsInterfaces/knowledgeSources.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/knowledgeSources.js +10 -0
- package/dist/commonjs/generated/service/operationsInterfaces/knowledgeSources.js.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/skillsets.d.ts +42 -0
- package/dist/commonjs/generated/service/operationsInterfaces/skillsets.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/skillsets.js +10 -0
- package/dist/commonjs/generated/service/operationsInterfaces/skillsets.js.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/synonymMaps.d.ts +35 -0
- package/dist/commonjs/generated/service/operationsInterfaces/synonymMaps.d.ts.map +1 -0
- package/dist/commonjs/generated/service/operationsInterfaces/synonymMaps.js +10 -0
- package/dist/commonjs/generated/service/operationsInterfaces/synonymMaps.js.map +1 -0
- package/dist/commonjs/generated/service/searchServiceClient.d.ts +36 -0
- package/dist/commonjs/generated/service/searchServiceClient.d.ts.map +1 -0
- package/dist/commonjs/generated/service/searchServiceClient.js +150 -0
- package/dist/commonjs/generated/service/searchServiceClient.js.map +1 -0
- package/dist/commonjs/geographyPoint.d.ts +27 -0
- package/dist/commonjs/geographyPoint.d.ts.map +1 -0
- package/dist/commonjs/geographyPoint.js +39 -0
- package/dist/commonjs/geographyPoint.js.map +1 -0
- package/dist/commonjs/index.d.ts +18 -0
- package/dist/commonjs/index.d.ts.map +1 -0
- package/dist/commonjs/index.js +109 -0
- package/dist/commonjs/index.js.map +1 -0
- package/dist/commonjs/indexDocumentsBatch.d.ts +42 -0
- package/dist/commonjs/indexDocumentsBatch.d.ts.map +1 -0
- package/dist/commonjs/indexDocumentsBatch.js +84 -0
- package/dist/commonjs/indexDocumentsBatch.js.map +1 -0
- package/dist/commonjs/indexModels.d.ts +928 -0
- package/dist/commonjs/indexModels.d.ts.map +1 -0
- package/dist/commonjs/indexModels.js +5 -0
- package/dist/commonjs/indexModels.js.map +1 -0
- package/dist/commonjs/knowledgeAgentModels.d.ts +43 -0
- package/dist/commonjs/knowledgeAgentModels.d.ts.map +1 -0
- package/dist/commonjs/knowledgeAgentModels.js +5 -0
- package/dist/commonjs/knowledgeAgentModels.js.map +1 -0
- package/dist/commonjs/knowledgeRetrievalClient.d.ts +68 -0
- package/dist/commonjs/knowledgeRetrievalClient.d.ts.map +1 -0
- package/dist/commonjs/knowledgeRetrievalClient.js +113 -0
- package/dist/commonjs/knowledgeRetrievalClient.js.map +1 -0
- package/dist/commonjs/logger.d.ts +5 -0
- package/dist/commonjs/logger.d.ts.map +1 -0
- package/dist/commonjs/logger.js +11 -0
- package/dist/commonjs/logger.js.map +1 -0
- package/dist/commonjs/odata.d.ts +17 -0
- package/dist/commonjs/odata.d.ts.map +1 -0
- package/dist/commonjs/odata.js +53 -0
- package/dist/commonjs/odata.js.map +1 -0
- package/dist/commonjs/odataMetadataPolicy.d.ts +9 -0
- package/dist/commonjs/odataMetadataPolicy.d.ts.map +1 -0
- package/dist/commonjs/odataMetadataPolicy.js +21 -0
- package/dist/commonjs/odataMetadataPolicy.js.map +1 -0
- package/dist/commonjs/package.json +3 -0
- package/dist/commonjs/searchApiKeyCredentialPolicy.d.ts +8 -0
- package/dist/commonjs/searchApiKeyCredentialPolicy.d.ts.map +1 -0
- package/dist/commonjs/searchApiKeyCredentialPolicy.js +23 -0
- package/dist/commonjs/searchApiKeyCredentialPolicy.js.map +1 -0
- package/dist/commonjs/searchAudience.d.ts +18 -0
- package/dist/commonjs/searchAudience.d.ts.map +1 -0
- package/dist/commonjs/searchAudience.js +24 -0
- package/dist/commonjs/searchAudience.js.map +1 -0
- package/dist/commonjs/searchClient.d.ts +277 -0
- package/dist/commonjs/searchClient.d.ts.map +1 -0
- package/dist/commonjs/searchClient.js +729 -0
- package/dist/commonjs/searchClient.js.map +1 -0
- package/dist/commonjs/searchIndexClient.d.ts +310 -0
- package/dist/commonjs/searchIndexClient.d.ts.map +1 -0
- package/dist/commonjs/searchIndexClient.js +955 -0
- package/dist/commonjs/searchIndexClient.js.map +1 -0
- package/dist/commonjs/searchIndexerClient.d.ts +202 -0
- package/dist/commonjs/searchIndexerClient.d.ts.map +1 -0
- package/dist/commonjs/searchIndexerClient.js +646 -0
- package/dist/commonjs/searchIndexerClient.js.map +1 -0
- package/dist/commonjs/searchIndexingBufferedSender.d.ts +193 -0
- package/dist/commonjs/searchIndexingBufferedSender.d.ts.map +1 -0
- package/dist/commonjs/searchIndexingBufferedSender.js +327 -0
- package/dist/commonjs/searchIndexingBufferedSender.js.map +1 -0
- package/dist/commonjs/serialization.d.ts +3 -0
- package/dist/commonjs/serialization.d.ts.map +1 -0
- package/dist/commonjs/serialization.js +149 -0
- package/dist/commonjs/serialization.js.map +1 -0
- package/dist/commonjs/serviceModels.d.ts +3087 -0
- package/dist/commonjs/serviceModels.d.ts.map +1 -0
- package/dist/commonjs/serviceModels.js +659 -0
- package/dist/commonjs/serviceModels.js.map +1 -0
- package/dist/commonjs/serviceUtils.d.ts +41 -0
- package/dist/commonjs/serviceUtils.d.ts.map +1 -0
- package/dist/commonjs/serviceUtils.js +734 -0
- package/dist/commonjs/serviceUtils.js.map +1 -0
- package/dist/commonjs/synonymMapHelper.d.ts +10 -0
- package/dist/commonjs/synonymMapHelper.d.ts.map +1 -0
- package/dist/commonjs/synonymMapHelper.js +28 -0
- package/dist/commonjs/synonymMapHelper.js.map +1 -0
- package/dist/commonjs/tracing.d.ts +7 -0
- package/dist/commonjs/tracing.d.ts.map +1 -0
- package/dist/commonjs/tracing.js +16 -0
- package/dist/commonjs/tracing.js.map +1 -0
- package/dist/commonjs/tsdoc-metadata.json +11 -0
- package/dist/commonjs/walk.d.ts +2 -0
- package/dist/commonjs/walk.d.ts.map +1 -0
- package/dist/commonjs/walk.js +79 -0
- package/dist/commonjs/walk.js.map +1 -0
- package/dist/esm/base64.d.ts +11 -0
- package/dist/esm/base64.d.ts.map +1 -0
- package/dist/esm/errorModels.d.ts +56 -0
- package/dist/esm/errorModels.d.ts.map +1 -0
- package/dist/esm/errorModels.js +4 -0
- package/dist/esm/errorModels.js.map +1 -0
- package/dist/esm/generated/data/index.d.ts +4 -0
- package/dist/esm/generated/data/index.d.ts.map +1 -0
- package/dist/esm/generated/data/index.js +11 -0
- package/dist/esm/generated/data/index.js.map +1 -0
- package/dist/esm/generated/data/models/index.d.ts +1330 -0
- package/dist/esm/generated/data/models/index.d.ts.map +1 -0
- package/dist/esm/generated/data/models/index.js +290 -0
- package/dist/esm/generated/data/models/index.js.map +1 -0
- package/dist/esm/generated/data/models/mappers.d.ts +52 -0
- package/dist/esm/generated/data/models/mappers.d.ts.map +1 -0
- package/dist/esm/generated/data/models/mappers.js +1519 -0
- package/dist/esm/generated/data/models/mappers.js.map +1 -0
- package/dist/esm/generated/data/models/parameters.d.ts +63 -0
- package/dist/esm/generated/data/models/parameters.d.ts.map +1 -0
- package/dist/esm/generated/data/models/parameters.js +628 -0
- package/dist/esm/generated/data/models/parameters.js.map +1 -0
- package/dist/esm/generated/data/operations/documents.d.ts +70 -0
- package/dist/esm/generated/data/operations/documents.d.ts.map +1 -0
- package/dist/esm/generated/data/operations/documents.js +323 -0
- package/dist/esm/generated/data/operations/documents.js.map +1 -0
- package/dist/esm/generated/data/operations/index.d.ts +2 -0
- package/dist/esm/generated/data/operations/index.d.ts.map +1 -0
- package/dist/esm/generated/data/operations/index.js +9 -0
- package/dist/esm/generated/data/operations/index.js.map +1 -0
- package/dist/esm/generated/data/operationsInterfaces/documents.d.ts +62 -0
- package/dist/esm/generated/data/operationsInterfaces/documents.d.ts.map +1 -0
- package/dist/esm/generated/data/operationsInterfaces/documents.js +9 -0
- package/dist/esm/generated/data/operationsInterfaces/documents.js.map +1 -0
- package/dist/esm/generated/data/operationsInterfaces/index.d.ts +2 -0
- package/dist/esm/generated/data/operationsInterfaces/index.d.ts.map +1 -0
- package/dist/esm/generated/data/operationsInterfaces/index.js +9 -0
- package/dist/esm/generated/data/operationsInterfaces/index.js.map +1 -0
- package/dist/esm/generated/data/searchClient.d.ts +21 -0
- package/dist/esm/generated/data/searchClient.d.ts.map +1 -0
- package/dist/esm/generated/data/searchClient.js +88 -0
- package/dist/esm/generated/data/searchClient.js.map +1 -0
- package/dist/esm/generated/knowledgeAgent/index.d.ts +4 -0
- package/dist/esm/generated/knowledgeAgent/index.d.ts.map +1 -0
- package/dist/esm/generated/knowledgeAgent/index.js +11 -0
- package/dist/esm/generated/knowledgeAgent/index.js.map +1 -0
- package/dist/esm/generated/knowledgeAgent/models/index.d.ts +264 -0
- package/dist/esm/generated/knowledgeAgent/models/index.d.ts.map +1 -0
- package/dist/esm/generated/knowledgeAgent/models/index.js +30 -0
- package/dist/esm/generated/knowledgeAgent/models/index.js.map +1 -0
- package/dist/esm/generated/knowledgeAgent/models/mappers.d.ts +43 -0
- package/dist/esm/generated/knowledgeAgent/models/mappers.d.ts.map +1 -0
- package/dist/esm/generated/knowledgeAgent/models/mappers.js +627 -0
- package/dist/esm/generated/knowledgeAgent/models/mappers.js.map +1 -0
- package/dist/esm/generated/knowledgeAgent/models/parameters.d.ts +9 -0
- package/dist/esm/generated/knowledgeAgent/models/parameters.d.ts.map +1 -0
- package/dist/esm/generated/knowledgeAgent/models/parameters.js +75 -0
- package/dist/esm/generated/knowledgeAgent/models/parameters.js.map +1 -0
- package/dist/esm/generated/knowledgeAgent/operations/index.d.ts +2 -0
- package/dist/esm/generated/knowledgeAgent/operations/index.d.ts.map +1 -0
- package/dist/esm/generated/knowledgeAgent/operations/index.js +9 -0
- package/dist/esm/generated/knowledgeAgent/operations/index.js.map +1 -0
- package/dist/esm/generated/knowledgeAgent/operations/knowledgeRetrieval.d.ts +19 -0
- package/dist/esm/generated/knowledgeAgent/operations/knowledgeRetrieval.d.ts.map +1 -0
- package/dist/esm/generated/knowledgeAgent/operations/knowledgeRetrieval.js +54 -0
- package/dist/esm/generated/knowledgeAgent/operations/knowledgeRetrieval.js.map +1 -0
- package/dist/esm/generated/knowledgeAgent/operationsInterfaces/index.d.ts +2 -0
- package/dist/esm/generated/knowledgeAgent/operationsInterfaces/index.d.ts.map +1 -0
- package/dist/esm/generated/knowledgeAgent/operationsInterfaces/index.js +9 -0
- package/dist/esm/generated/knowledgeAgent/operationsInterfaces/index.js.map +1 -0
- package/dist/esm/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.d.ts +11 -0
- package/dist/esm/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.d.ts.map +1 -0
- package/dist/esm/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.js +9 -0
- package/dist/esm/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.js.map +1 -0
- package/dist/esm/generated/knowledgeAgent/searchClient.d.ts +21 -0
- package/dist/esm/generated/knowledgeAgent/searchClient.d.ts.map +1 -0
- package/dist/esm/generated/knowledgeAgent/searchClient.js +88 -0
- package/dist/esm/generated/knowledgeAgent/searchClient.js.map +1 -0
- package/dist/esm/generated/service/index.d.ts +4 -0
- package/dist/esm/generated/service/index.d.ts.map +1 -0
- package/dist/esm/generated/service/index.js +11 -0
- package/dist/esm/generated/service/index.js.map +1 -0
- package/dist/esm/generated/service/models/index.d.ts +5321 -0
- package/dist/esm/generated/service/models/index.d.ts.map +1 -0
- package/dist/esm/generated/service/models/index.js +1628 -0
- package/dist/esm/generated/service/models/index.js.map +1 -0
- package/dist/esm/generated/service/models/mappers.d.ts +322 -0
- package/dist/esm/generated/service/models/mappers.d.ts.map +1 -0
- package/dist/esm/generated/service/models/mappers.js +7449 -0
- package/dist/esm/generated/service/models/mappers.js.map +1 -0
- package/dist/esm/generated/service/models/parameters.d.ts +34 -0
- package/dist/esm/generated/service/models/parameters.d.ts.map +1 -0
- package/dist/esm/generated/service/models/parameters.js +255 -0
- package/dist/esm/generated/service/models/parameters.js.map +1 -0
- package/dist/esm/generated/service/operations/aliases.d.ts +44 -0
- package/dist/esm/generated/service/operations/aliases.d.ts.map +1 -0
- package/dist/esm/generated/service/operations/aliases.js +161 -0
- package/dist/esm/generated/service/operations/aliases.js.map +1 -0
- package/dist/esm/generated/service/operations/dataSources.d.ts +43 -0
- package/dist/esm/generated/service/operations/dataSources.d.ts.map +1 -0
- package/dist/esm/generated/service/operations/dataSources.js +163 -0
- package/dist/esm/generated/service/operations/dataSources.js.map +1 -0
- package/dist/esm/generated/service/operations/index.d.ts +9 -0
- package/dist/esm/generated/service/operations/index.d.ts.map +1 -0
- package/dist/esm/generated/service/operations/index.js +16 -0
- package/dist/esm/generated/service/operations/index.js.map +1 -0
- package/dist/esm/generated/service/operations/indexers.d.ts +74 -0
- package/dist/esm/generated/service/operations/indexers.d.ts.map +1 -0
- package/dist/esm/generated/service/operations/indexers.js +281 -0
- package/dist/esm/generated/service/operations/indexers.js.map +1 -0
- package/dist/esm/generated/service/operations/indexes.d.ts +58 -0
- package/dist/esm/generated/service/operations/indexes.d.ts.map +1 -0
- package/dist/esm/generated/service/operations/indexes.js +213 -0
- package/dist/esm/generated/service/operations/indexes.js.map +1 -0
- package/dist/esm/generated/service/operations/knowledgeAgents.d.ts +43 -0
- package/dist/esm/generated/service/operations/knowledgeAgents.d.ts.map +1 -0
- package/dist/esm/generated/service/operations/knowledgeAgents.js +160 -0
- package/dist/esm/generated/service/operations/knowledgeAgents.js.map +1 -0
- package/dist/esm/generated/service/operations/knowledgeSources.d.ts +43 -0
- package/dist/esm/generated/service/operations/knowledgeSources.d.ts.map +1 -0
- package/dist/esm/generated/service/operations/knowledgeSources.js +160 -0
- package/dist/esm/generated/service/operations/knowledgeSources.js.map +1 -0
- package/dist/esm/generated/service/operations/skillsets.d.ts +50 -0
- package/dist/esm/generated/service/operations/skillsets.d.ts.map +1 -0
- package/dist/esm/generated/service/operations/skillsets.js +189 -0
- package/dist/esm/generated/service/operations/skillsets.js.map +1 -0
- package/dist/esm/generated/service/operations/synonymMaps.d.ts +43 -0
- package/dist/esm/generated/service/operations/synonymMaps.d.ts.map +1 -0
- package/dist/esm/generated/service/operations/synonymMaps.js +160 -0
- package/dist/esm/generated/service/operations/synonymMaps.js.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/aliases.d.ts +36 -0
- package/dist/esm/generated/service/operationsInterfaces/aliases.d.ts.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/aliases.js +9 -0
- package/dist/esm/generated/service/operationsInterfaces/aliases.js.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/dataSources.d.ts +35 -0
- package/dist/esm/generated/service/operationsInterfaces/dataSources.d.ts.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/dataSources.js +9 -0
- package/dist/esm/generated/service/operationsInterfaces/dataSources.js.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/index.d.ts +9 -0
- package/dist/esm/generated/service/operationsInterfaces/index.d.ts.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/index.js +16 -0
- package/dist/esm/generated/service/operationsInterfaces/index.js.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/indexers.d.ts +66 -0
- package/dist/esm/generated/service/operationsInterfaces/indexers.d.ts.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/indexers.js +9 -0
- package/dist/esm/generated/service/operationsInterfaces/indexers.js.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/indexes.d.ts +50 -0
- package/dist/esm/generated/service/operationsInterfaces/indexes.d.ts.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/indexes.js +9 -0
- package/dist/esm/generated/service/operationsInterfaces/indexes.js.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/knowledgeAgents.d.ts +35 -0
- package/dist/esm/generated/service/operationsInterfaces/knowledgeAgents.d.ts.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/knowledgeAgents.js +9 -0
- package/dist/esm/generated/service/operationsInterfaces/knowledgeAgents.js.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/knowledgeSources.d.ts +35 -0
- package/dist/esm/generated/service/operationsInterfaces/knowledgeSources.d.ts.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/knowledgeSources.js +9 -0
- package/dist/esm/generated/service/operationsInterfaces/knowledgeSources.js.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/skillsets.d.ts +42 -0
- package/dist/esm/generated/service/operationsInterfaces/skillsets.d.ts.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/skillsets.js +9 -0
- package/dist/esm/generated/service/operationsInterfaces/skillsets.js.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/synonymMaps.d.ts +35 -0
- package/dist/esm/generated/service/operationsInterfaces/synonymMaps.d.ts.map +1 -0
- package/dist/esm/generated/service/operationsInterfaces/synonymMaps.js +9 -0
- package/dist/esm/generated/service/operationsInterfaces/synonymMaps.js.map +1 -0
- package/dist/esm/generated/service/searchServiceClient.d.ts +36 -0
- package/dist/esm/generated/service/searchServiceClient.d.ts.map +1 -0
- package/dist/esm/generated/service/searchServiceClient.js +145 -0
- package/dist/esm/generated/service/searchServiceClient.js.map +1 -0
- package/dist/esm/geographyPoint.d.ts +27 -0
- package/dist/esm/geographyPoint.d.ts.map +1 -0
- package/dist/esm/geographyPoint.js +36 -0
- package/dist/esm/geographyPoint.js.map +1 -0
- package/dist/esm/index.d.ts +18 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +18 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/indexDocumentsBatch.d.ts +42 -0
- package/dist/esm/indexDocumentsBatch.d.ts.map +1 -0
- package/dist/esm/indexDocumentsBatch.js +80 -0
- package/dist/esm/indexDocumentsBatch.js.map +1 -0
- package/dist/esm/indexModels.d.ts +928 -0
- package/dist/esm/indexModels.d.ts.map +1 -0
- package/dist/esm/indexModels.js +4 -0
- package/dist/esm/indexModels.js.map +1 -0
- package/dist/esm/knowledgeAgentModels.d.ts +43 -0
- package/dist/esm/knowledgeAgentModels.d.ts.map +1 -0
- package/dist/esm/knowledgeAgentModels.js +4 -0
- package/dist/esm/knowledgeAgentModels.js.map +1 -0
- package/dist/esm/knowledgeRetrievalClient.d.ts +68 -0
- package/dist/esm/knowledgeRetrievalClient.d.ts.map +1 -0
- package/dist/esm/knowledgeRetrievalClient.js +108 -0
- package/dist/esm/knowledgeRetrievalClient.js.map +1 -0
- package/dist/esm/logger.d.ts +5 -0
- package/dist/esm/logger.d.ts.map +1 -0
- package/dist/esm/logger.js +8 -0
- package/dist/esm/logger.js.map +1 -0
- package/dist/esm/odata.d.ts +17 -0
- package/dist/esm/odata.d.ts.map +1 -0
- package/dist/esm/odata.js +50 -0
- package/dist/esm/odata.js.map +1 -0
- package/dist/esm/odataMetadataPolicy.d.ts +9 -0
- package/dist/esm/odataMetadataPolicy.d.ts.map +1 -0
- package/dist/esm/odataMetadataPolicy.js +18 -0
- package/dist/esm/odataMetadataPolicy.js.map +1 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/searchApiKeyCredentialPolicy.d.ts +8 -0
- package/dist/esm/searchApiKeyCredentialPolicy.d.ts.map +1 -0
- package/dist/esm/searchApiKeyCredentialPolicy.js +20 -0
- package/dist/esm/searchApiKeyCredentialPolicy.js.map +1 -0
- package/dist/esm/searchAudience.d.ts +18 -0
- package/dist/esm/searchAudience.d.ts.map +1 -0
- package/dist/esm/searchAudience.js +21 -0
- package/dist/esm/searchAudience.js.map +1 -0
- package/dist/esm/searchClient.d.ts +277 -0
- package/dist/esm/searchClient.d.ts.map +1 -0
- package/dist/esm/searchClient.js +724 -0
- package/dist/esm/searchClient.js.map +1 -0
- package/dist/esm/searchIndexClient.d.ts +310 -0
- package/dist/esm/searchIndexClient.d.ts.map +1 -0
- package/dist/esm/searchIndexClient.js +950 -0
- package/dist/esm/searchIndexClient.js.map +1 -0
- package/dist/esm/searchIndexerClient.d.ts +202 -0
- package/dist/esm/searchIndexerClient.d.ts.map +1 -0
- package/dist/esm/searchIndexerClient.js +641 -0
- package/dist/esm/searchIndexerClient.js.map +1 -0
- package/dist/esm/searchIndexingBufferedSender.d.ts +193 -0
- package/dist/esm/searchIndexingBufferedSender.d.ts.map +1 -0
- package/dist/esm/searchIndexingBufferedSender.js +322 -0
- package/dist/esm/searchIndexingBufferedSender.js.map +1 -0
- package/dist/esm/serialization.d.ts +3 -0
- package/dist/esm/serialization.d.ts.map +1 -0
- package/dist/esm/serialization.js +144 -0
- package/dist/esm/serialization.js.map +1 -0
- package/dist/esm/serviceModels.d.ts +3087 -0
- package/dist/esm/serviceModels.d.ts.map +1 -0
- package/dist/esm/serviceModels.js +655 -0
- package/dist/esm/serviceModels.js.map +1 -0
- package/dist/esm/serviceUtils.d.ts +41 -0
- package/dist/esm/serviceUtils.d.ts.map +1 -0
- package/dist/esm/serviceUtils.js +699 -0
- package/dist/esm/serviceUtils.js.map +1 -0
- package/dist/esm/synonymMapHelper.d.ts +10 -0
- package/dist/esm/synonymMapHelper.d.ts.map +1 -0
- package/{dist-esm/src → dist/esm}/synonymMapHelper.js +2 -2
- package/dist/esm/synonymMapHelper.js.map +1 -0
- package/dist/esm/tracing.d.ts +7 -0
- package/dist/esm/tracing.d.ts.map +1 -0
- package/dist/esm/tracing.js +13 -0
- package/dist/esm/tracing.js.map +1 -0
- package/dist/esm/walk.d.ts +2 -0
- package/dist/esm/walk.d.ts.map +1 -0
- package/dist/esm/walk.js +76 -0
- package/dist/esm/walk.js.map +1 -0
- package/dist/react-native/base64.d.ts +11 -0
- package/dist/react-native/base64.d.ts.map +1 -0
- package/dist/react-native/base64.js +17 -0
- package/dist/react-native/base64.js.map +1 -0
- package/dist/react-native/errorModels.d.ts +56 -0
- package/dist/react-native/errorModels.d.ts.map +1 -0
- package/dist/react-native/errorModels.js +4 -0
- package/dist/react-native/errorModels.js.map +1 -0
- package/dist/react-native/generated/data/index.d.ts +4 -0
- package/dist/react-native/generated/data/index.d.ts.map +1 -0
- package/dist/react-native/generated/data/index.js +11 -0
- package/dist/react-native/generated/data/index.js.map +1 -0
- package/dist/react-native/generated/data/models/index.d.ts +1330 -0
- package/dist/react-native/generated/data/models/index.d.ts.map +1 -0
- package/dist/react-native/generated/data/models/index.js +290 -0
- package/dist/react-native/generated/data/models/index.js.map +1 -0
- package/dist/react-native/generated/data/models/mappers.d.ts +52 -0
- package/dist/react-native/generated/data/models/mappers.d.ts.map +1 -0
- package/dist/react-native/generated/data/models/mappers.js +1519 -0
- package/dist/react-native/generated/data/models/mappers.js.map +1 -0
- package/dist/react-native/generated/data/models/parameters.d.ts +63 -0
- package/dist/react-native/generated/data/models/parameters.d.ts.map +1 -0
- package/dist/react-native/generated/data/models/parameters.js +628 -0
- package/dist/react-native/generated/data/models/parameters.js.map +1 -0
- package/dist/react-native/generated/data/operations/documents.d.ts +70 -0
- package/dist/react-native/generated/data/operations/documents.d.ts.map +1 -0
- package/dist/react-native/generated/data/operations/documents.js +323 -0
- package/dist/react-native/generated/data/operations/documents.js.map +1 -0
- package/dist/react-native/generated/data/operations/index.d.ts +2 -0
- package/dist/react-native/generated/data/operations/index.d.ts.map +1 -0
- package/dist/react-native/generated/data/operations/index.js +9 -0
- package/dist/react-native/generated/data/operations/index.js.map +1 -0
- package/dist/react-native/generated/data/operationsInterfaces/documents.d.ts +62 -0
- package/dist/react-native/generated/data/operationsInterfaces/documents.d.ts.map +1 -0
- package/dist/react-native/generated/data/operationsInterfaces/documents.js +9 -0
- package/dist/react-native/generated/data/operationsInterfaces/documents.js.map +1 -0
- package/dist/react-native/generated/data/operationsInterfaces/index.d.ts +2 -0
- package/dist/react-native/generated/data/operationsInterfaces/index.d.ts.map +1 -0
- package/dist/react-native/generated/data/operationsInterfaces/index.js +9 -0
- package/dist/react-native/generated/data/operationsInterfaces/index.js.map +1 -0
- package/dist/react-native/generated/data/searchClient.d.ts +21 -0
- package/dist/react-native/generated/data/searchClient.d.ts.map +1 -0
- package/dist/react-native/generated/data/searchClient.js +88 -0
- package/dist/react-native/generated/data/searchClient.js.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/index.d.ts +4 -0
- package/dist/react-native/generated/knowledgeAgent/index.d.ts.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/index.js +11 -0
- package/dist/react-native/generated/knowledgeAgent/index.js.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/models/index.d.ts +264 -0
- package/dist/react-native/generated/knowledgeAgent/models/index.d.ts.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/models/index.js +30 -0
- package/dist/react-native/generated/knowledgeAgent/models/index.js.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/models/mappers.d.ts +43 -0
- package/dist/react-native/generated/knowledgeAgent/models/mappers.d.ts.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/models/mappers.js +627 -0
- package/dist/react-native/generated/knowledgeAgent/models/mappers.js.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/models/parameters.d.ts +9 -0
- package/dist/react-native/generated/knowledgeAgent/models/parameters.d.ts.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/models/parameters.js +75 -0
- package/dist/react-native/generated/knowledgeAgent/models/parameters.js.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/operations/index.d.ts +2 -0
- package/dist/react-native/generated/knowledgeAgent/operations/index.d.ts.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/operations/index.js +9 -0
- package/dist/react-native/generated/knowledgeAgent/operations/index.js.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/operations/knowledgeRetrieval.d.ts +19 -0
- package/dist/react-native/generated/knowledgeAgent/operations/knowledgeRetrieval.d.ts.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/operations/knowledgeRetrieval.js +54 -0
- package/dist/react-native/generated/knowledgeAgent/operations/knowledgeRetrieval.js.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/operationsInterfaces/index.d.ts +2 -0
- package/dist/react-native/generated/knowledgeAgent/operationsInterfaces/index.d.ts.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/operationsInterfaces/index.js +9 -0
- package/dist/react-native/generated/knowledgeAgent/operationsInterfaces/index.js.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.d.ts +11 -0
- package/dist/react-native/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.d.ts.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.js +9 -0
- package/dist/react-native/generated/knowledgeAgent/operationsInterfaces/knowledgeRetrieval.js.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/searchClient.d.ts +21 -0
- package/dist/react-native/generated/knowledgeAgent/searchClient.d.ts.map +1 -0
- package/dist/react-native/generated/knowledgeAgent/searchClient.js +88 -0
- package/dist/react-native/generated/knowledgeAgent/searchClient.js.map +1 -0
- package/dist/react-native/generated/service/index.d.ts +4 -0
- package/dist/react-native/generated/service/index.d.ts.map +1 -0
- package/dist/react-native/generated/service/index.js +11 -0
- package/dist/react-native/generated/service/index.js.map +1 -0
- package/dist/react-native/generated/service/models/index.d.ts +5321 -0
- package/dist/react-native/generated/service/models/index.d.ts.map +1 -0
- package/dist/react-native/generated/service/models/index.js +1628 -0
- package/dist/react-native/generated/service/models/index.js.map +1 -0
- package/dist/react-native/generated/service/models/mappers.d.ts +322 -0
- package/dist/react-native/generated/service/models/mappers.d.ts.map +1 -0
- package/dist/react-native/generated/service/models/mappers.js +7449 -0
- package/dist/react-native/generated/service/models/mappers.js.map +1 -0
- package/dist/react-native/generated/service/models/parameters.d.ts +34 -0
- package/dist/react-native/generated/service/models/parameters.d.ts.map +1 -0
- package/dist/react-native/generated/service/models/parameters.js +255 -0
- package/dist/react-native/generated/service/models/parameters.js.map +1 -0
- package/dist/react-native/generated/service/operations/aliases.d.ts +44 -0
- package/dist/react-native/generated/service/operations/aliases.d.ts.map +1 -0
- package/dist/react-native/generated/service/operations/aliases.js +161 -0
- package/dist/react-native/generated/service/operations/aliases.js.map +1 -0
- package/dist/react-native/generated/service/operations/dataSources.d.ts +43 -0
- package/dist/react-native/generated/service/operations/dataSources.d.ts.map +1 -0
- package/dist/react-native/generated/service/operations/dataSources.js +163 -0
- package/dist/react-native/generated/service/operations/dataSources.js.map +1 -0
- package/dist/react-native/generated/service/operations/index.d.ts +9 -0
- package/dist/react-native/generated/service/operations/index.d.ts.map +1 -0
- package/dist/react-native/generated/service/operations/index.js +16 -0
- package/dist/react-native/generated/service/operations/index.js.map +1 -0
- package/dist/react-native/generated/service/operations/indexers.d.ts +74 -0
- package/dist/react-native/generated/service/operations/indexers.d.ts.map +1 -0
- package/dist/react-native/generated/service/operations/indexers.js +281 -0
- package/dist/react-native/generated/service/operations/indexers.js.map +1 -0
- package/dist/react-native/generated/service/operations/indexes.d.ts +58 -0
- package/dist/react-native/generated/service/operations/indexes.d.ts.map +1 -0
- package/dist/react-native/generated/service/operations/indexes.js +213 -0
- package/dist/react-native/generated/service/operations/indexes.js.map +1 -0
- package/dist/react-native/generated/service/operations/knowledgeAgents.d.ts +43 -0
- package/dist/react-native/generated/service/operations/knowledgeAgents.d.ts.map +1 -0
- package/dist/react-native/generated/service/operations/knowledgeAgents.js +160 -0
- package/dist/react-native/generated/service/operations/knowledgeAgents.js.map +1 -0
- package/dist/react-native/generated/service/operations/knowledgeSources.d.ts +43 -0
- package/dist/react-native/generated/service/operations/knowledgeSources.d.ts.map +1 -0
- package/dist/react-native/generated/service/operations/knowledgeSources.js +160 -0
- package/dist/react-native/generated/service/operations/knowledgeSources.js.map +1 -0
- package/dist/react-native/generated/service/operations/skillsets.d.ts +50 -0
- package/dist/react-native/generated/service/operations/skillsets.d.ts.map +1 -0
- package/dist/react-native/generated/service/operations/skillsets.js +189 -0
- package/dist/react-native/generated/service/operations/skillsets.js.map +1 -0
- package/dist/react-native/generated/service/operations/synonymMaps.d.ts +43 -0
- package/dist/react-native/generated/service/operations/synonymMaps.d.ts.map +1 -0
- package/dist/react-native/generated/service/operations/synonymMaps.js +160 -0
- package/dist/react-native/generated/service/operations/synonymMaps.js.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/aliases.d.ts +36 -0
- package/dist/react-native/generated/service/operationsInterfaces/aliases.d.ts.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/aliases.js +9 -0
- package/dist/react-native/generated/service/operationsInterfaces/aliases.js.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/dataSources.d.ts +35 -0
- package/dist/react-native/generated/service/operationsInterfaces/dataSources.d.ts.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/dataSources.js +9 -0
- package/dist/react-native/generated/service/operationsInterfaces/dataSources.js.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/index.d.ts +9 -0
- package/dist/react-native/generated/service/operationsInterfaces/index.d.ts.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/index.js +16 -0
- package/dist/react-native/generated/service/operationsInterfaces/index.js.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/indexers.d.ts +66 -0
- package/dist/react-native/generated/service/operationsInterfaces/indexers.d.ts.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/indexers.js +9 -0
- package/dist/react-native/generated/service/operationsInterfaces/indexers.js.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/indexes.d.ts +50 -0
- package/dist/react-native/generated/service/operationsInterfaces/indexes.d.ts.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/indexes.js +9 -0
- package/dist/react-native/generated/service/operationsInterfaces/indexes.js.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/knowledgeAgents.d.ts +35 -0
- package/dist/react-native/generated/service/operationsInterfaces/knowledgeAgents.d.ts.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/knowledgeAgents.js +9 -0
- package/dist/react-native/generated/service/operationsInterfaces/knowledgeAgents.js.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/knowledgeSources.d.ts +35 -0
- package/dist/react-native/generated/service/operationsInterfaces/knowledgeSources.d.ts.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/knowledgeSources.js +9 -0
- package/dist/react-native/generated/service/operationsInterfaces/knowledgeSources.js.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/skillsets.d.ts +42 -0
- package/dist/react-native/generated/service/operationsInterfaces/skillsets.d.ts.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/skillsets.js +9 -0
- package/dist/react-native/generated/service/operationsInterfaces/skillsets.js.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/synonymMaps.d.ts +35 -0
- package/dist/react-native/generated/service/operationsInterfaces/synonymMaps.d.ts.map +1 -0
- package/dist/react-native/generated/service/operationsInterfaces/synonymMaps.js +9 -0
- package/dist/react-native/generated/service/operationsInterfaces/synonymMaps.js.map +1 -0
- package/dist/react-native/generated/service/searchServiceClient.d.ts +36 -0
- package/dist/react-native/generated/service/searchServiceClient.d.ts.map +1 -0
- package/dist/react-native/generated/service/searchServiceClient.js +145 -0
- package/dist/react-native/generated/service/searchServiceClient.js.map +1 -0
- package/dist/react-native/geographyPoint.d.ts +27 -0
- package/dist/react-native/geographyPoint.d.ts.map +1 -0
- package/dist/react-native/geographyPoint.js +36 -0
- package/dist/react-native/geographyPoint.js.map +1 -0
- package/dist/react-native/index.d.ts +18 -0
- package/dist/react-native/index.d.ts.map +1 -0
- package/dist/react-native/index.js +18 -0
- package/dist/react-native/index.js.map +1 -0
- package/dist/react-native/indexDocumentsBatch.d.ts +42 -0
- package/dist/react-native/indexDocumentsBatch.d.ts.map +1 -0
- package/dist/react-native/indexDocumentsBatch.js +80 -0
- package/dist/react-native/indexDocumentsBatch.js.map +1 -0
- package/dist/react-native/indexModels.d.ts +928 -0
- package/dist/react-native/indexModels.d.ts.map +1 -0
- package/dist/react-native/indexModels.js +4 -0
- package/dist/react-native/indexModels.js.map +1 -0
- package/dist/react-native/knowledgeAgentModels.d.ts +43 -0
- package/dist/react-native/knowledgeAgentModels.d.ts.map +1 -0
- package/dist/react-native/knowledgeAgentModels.js +4 -0
- package/dist/react-native/knowledgeAgentModels.js.map +1 -0
- package/dist/react-native/knowledgeRetrievalClient.d.ts +68 -0
- package/dist/react-native/knowledgeRetrievalClient.d.ts.map +1 -0
- package/dist/react-native/knowledgeRetrievalClient.js +108 -0
- package/dist/react-native/knowledgeRetrievalClient.js.map +1 -0
- package/dist/react-native/logger.d.ts +5 -0
- package/dist/react-native/logger.d.ts.map +1 -0
- package/dist/react-native/logger.js +8 -0
- package/dist/react-native/logger.js.map +1 -0
- package/dist/react-native/odata.d.ts +17 -0
- package/dist/react-native/odata.d.ts.map +1 -0
- package/dist/react-native/odata.js +50 -0
- package/dist/react-native/odata.js.map +1 -0
- package/dist/react-native/odataMetadataPolicy.d.ts +9 -0
- package/dist/react-native/odataMetadataPolicy.d.ts.map +1 -0
- package/dist/react-native/odataMetadataPolicy.js +18 -0
- package/dist/react-native/odataMetadataPolicy.js.map +1 -0
- package/dist/react-native/package.json +3 -0
- package/dist/react-native/searchApiKeyCredentialPolicy.d.ts +8 -0
- package/dist/react-native/searchApiKeyCredentialPolicy.d.ts.map +1 -0
- package/dist/react-native/searchApiKeyCredentialPolicy.js +20 -0
- package/dist/react-native/searchApiKeyCredentialPolicy.js.map +1 -0
- package/dist/react-native/searchAudience.d.ts +18 -0
- package/dist/react-native/searchAudience.d.ts.map +1 -0
- package/dist/react-native/searchAudience.js +21 -0
- package/dist/react-native/searchAudience.js.map +1 -0
- package/dist/react-native/searchClient.d.ts +277 -0
- package/dist/react-native/searchClient.d.ts.map +1 -0
- package/dist/react-native/searchClient.js +724 -0
- package/dist/react-native/searchClient.js.map +1 -0
- package/dist/react-native/searchIndexClient.d.ts +310 -0
- package/dist/react-native/searchIndexClient.d.ts.map +1 -0
- package/dist/react-native/searchIndexClient.js +950 -0
- package/dist/react-native/searchIndexClient.js.map +1 -0
- package/dist/react-native/searchIndexerClient.d.ts +202 -0
- package/dist/react-native/searchIndexerClient.d.ts.map +1 -0
- package/dist/react-native/searchIndexerClient.js +641 -0
- package/dist/react-native/searchIndexerClient.js.map +1 -0
- package/dist/react-native/searchIndexingBufferedSender.d.ts +193 -0
- package/dist/react-native/searchIndexingBufferedSender.d.ts.map +1 -0
- package/dist/react-native/searchIndexingBufferedSender.js +322 -0
- package/dist/react-native/searchIndexingBufferedSender.js.map +1 -0
- package/dist/react-native/serialization.d.ts +3 -0
- package/dist/react-native/serialization.d.ts.map +1 -0
- package/dist/react-native/serialization.js +144 -0
- package/dist/react-native/serialization.js.map +1 -0
- package/dist/react-native/serviceModels.d.ts +3087 -0
- package/dist/react-native/serviceModels.d.ts.map +1 -0
- package/dist/react-native/serviceModels.js +655 -0
- package/dist/react-native/serviceModels.js.map +1 -0
- package/dist/react-native/serviceUtils.d.ts +41 -0
- package/dist/react-native/serviceUtils.d.ts.map +1 -0
- package/dist/react-native/serviceUtils.js +699 -0
- package/dist/react-native/serviceUtils.js.map +1 -0
- package/dist/react-native/synonymMapHelper.d.ts +10 -0
- package/dist/react-native/synonymMapHelper.d.ts.map +1 -0
- package/dist/react-native/synonymMapHelper.js +24 -0
- package/dist/react-native/synonymMapHelper.js.map +1 -0
- package/dist/react-native/tracing.d.ts +7 -0
- package/dist/react-native/tracing.d.ts.map +1 -0
- package/dist/react-native/tracing.js +13 -0
- package/dist/react-native/tracing.js.map +1 -0
- package/dist/react-native/walk.d.ts +2 -0
- package/dist/react-native/walk.d.ts.map +1 -0
- package/dist/react-native/walk.js +76 -0
- package/dist/react-native/walk.js.map +1 -0
- package/package.json +90 -86
- package/dist/index.js +0 -15564
- package/dist/index.js.map +0 -1
- package/dist-esm/src/base64.browser.js.map +0 -1
- package/dist-esm/src/errorModels.js.map +0 -1
- package/dist-esm/src/generated/data/index.js.map +0 -1
- package/dist-esm/src/generated/data/models/index.js.map +0 -1
- package/dist-esm/src/generated/data/models/mappers.js.map +0 -1
- package/dist-esm/src/generated/data/models/parameters.js.map +0 -1
- package/dist-esm/src/generated/data/operations/documents.js.map +0 -1
- package/dist-esm/src/generated/data/operations/index.js.map +0 -1
- package/dist-esm/src/generated/data/operationsInterfaces/documents.js.map +0 -1
- package/dist-esm/src/generated/data/operationsInterfaces/index.js.map +0 -1
- package/dist-esm/src/generated/data/searchClient.js.map +0 -1
- package/dist-esm/src/generated/service/index.js.map +0 -1
- package/dist-esm/src/generated/service/models/index.js.map +0 -1
- package/dist-esm/src/generated/service/models/mappers.js.map +0 -1
- package/dist-esm/src/generated/service/models/parameters.js.map +0 -1
- package/dist-esm/src/generated/service/operations/aliases.js.map +0 -1
- package/dist-esm/src/generated/service/operations/dataSources.js.map +0 -1
- package/dist-esm/src/generated/service/operations/index.js +0 -14
- package/dist-esm/src/generated/service/operations/index.js.map +0 -1
- package/dist-esm/src/generated/service/operations/indexers.js.map +0 -1
- package/dist-esm/src/generated/service/operations/indexes.js.map +0 -1
- package/dist-esm/src/generated/service/operations/skillsets.js.map +0 -1
- package/dist-esm/src/generated/service/operations/synonymMaps.js.map +0 -1
- package/dist-esm/src/generated/service/operationsInterfaces/aliases.js.map +0 -1
- package/dist-esm/src/generated/service/operationsInterfaces/dataSources.js.map +0 -1
- package/dist-esm/src/generated/service/operationsInterfaces/index.js +0 -14
- package/dist-esm/src/generated/service/operationsInterfaces/index.js.map +0 -1
- package/dist-esm/src/generated/service/operationsInterfaces/indexers.js.map +0 -1
- package/dist-esm/src/generated/service/operationsInterfaces/indexes.js.map +0 -1
- package/dist-esm/src/generated/service/operationsInterfaces/skillsets.js.map +0 -1
- package/dist-esm/src/generated/service/operationsInterfaces/synonymMaps.js.map +0 -1
- package/dist-esm/src/generated/service/searchServiceClient.js.map +0 -1
- package/dist-esm/src/geographyPoint.js.map +0 -1
- package/dist-esm/src/index.js +0 -16
- package/dist-esm/src/index.js.map +0 -1
- package/dist-esm/src/indexDocumentsBatch.js.map +0 -1
- package/dist-esm/src/indexModels.js.map +0 -1
- package/dist-esm/src/odata.js.map +0 -1
- package/dist-esm/src/odataMetadataPolicy.js.map +0 -1
- package/dist-esm/src/searchApiKeyCredentialPolicy.js.map +0 -1
- package/dist-esm/src/searchClient.js.map +0 -1
- package/dist-esm/src/searchIndexClient.js.map +0 -1
- package/dist-esm/src/searchIndexerClient.js.map +0 -1
- package/dist-esm/src/searchIndexingBufferedSender.js.map +0 -1
- package/dist-esm/src/serialization.js.map +0 -1
- package/dist-esm/src/serviceModels.js.map +0 -1
- package/dist-esm/src/serviceUtils.js.map +0 -1
- package/dist-esm/src/synonymMapHelper.browser.js.map +0 -1
- package/dist-esm/src/synonymMapHelper.js.map +0 -1
- package/dist-esm/src/walk.js.map +0 -1
- package/types/search-documents.d.ts +0 -7792
- /package/{dist-esm/src → dist/browser}/errorModels.js +0 -0
- /package/{dist-esm/src → dist/browser}/generated/data/operationsInterfaces/documents.js +0 -0
- /package/{dist-esm/src → dist/browser}/generated/service/operationsInterfaces/aliases.js +0 -0
- /package/{dist-esm/src → dist/browser}/generated/service/operationsInterfaces/dataSources.js +0 -0
- /package/{dist-esm/src → dist/browser}/generated/service/operationsInterfaces/indexers.js +0 -0
- /package/{dist-esm/src → dist/browser}/generated/service/operationsInterfaces/indexes.js +0 -0
- /package/{dist-esm/src → dist/browser}/generated/service/operationsInterfaces/skillsets.js +0 -0
- /package/{dist-esm/src → dist/browser}/generated/service/operationsInterfaces/synonymMaps.js +0 -0
- /package/{dist-esm/src → dist/browser}/indexModels.js +0 -0
- /package/{dist-esm/src → dist/browser}/logger.js +0 -0
- /package/{dist-esm/src → dist/browser}/logger.js.map +0 -0
- /package/{dist-esm/src → dist/browser}/odataMetadataPolicy.js +0 -0
- /package/{dist-esm/src → dist/browser}/searchAudience.js +0 -0
- /package/{dist-esm/src → dist/browser}/searchAudience.js.map +0 -0
- /package/{dist-esm/src → dist/browser}/tracing.js +0 -0
- /package/{dist-esm/src → dist/browser}/tracing.js.map +0 -0
- /package/{dist-esm/src → dist/esm}/base64.js +0 -0
- /package/{dist-esm/src → dist/esm}/base64.js.map +0 -0
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/generated/data/models/index.ts","../src/generated/service/models/index.ts","../src/geographyPoint.ts","../src/indexDocumentsBatch.ts","../src/odata.ts","../src/searchAudience.ts","../src/base64.ts","../src/generated/data/models/mappers.ts","../src/generated/data/models/parameters.ts","../src/generated/data/operations/documents.ts","../src/generated/data/searchClient.ts","../src/logger.ts","../src/odataMetadataPolicy.ts","../src/searchApiKeyCredentialPolicy.ts","../src/walk.ts","../src/serialization.ts","../src/serviceModels.ts","../src/serviceUtils.ts","../src/tracing.ts","../src/searchClient.ts","../src/generated/service/models/mappers.ts","../src/generated/service/models/parameters.ts","../src/generated/service/operations/dataSources.ts","../src/generated/service/operations/indexers.ts","../src/generated/service/operations/skillsets.ts","../src/generated/service/operations/synonymMaps.ts","../src/generated/service/operations/indexes.ts","../src/generated/service/operations/aliases.ts","../src/generated/service/searchServiceClient.ts","../src/searchIndexClient.ts","../src/searchIndexerClient.ts","../src/searchIndexingBufferedSender.ts","../src/synonymMapHelper.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\nimport * as coreClient from \"@azure/core-client\";\nimport * as coreHttpCompat from \"@azure/core-http-compat\";\n\nexport type VectorQueryUnion =\n | VectorQuery\n | VectorizedQuery\n | VectorizableTextQuery\n | VectorizableImageUrlQuery\n | VectorizableImageBinaryQuery;\nexport type VectorThresholdUnion =\n | VectorThreshold\n | VectorSimilarityThreshold\n | SearchScoreThreshold;\n\n/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */\nexport interface ErrorResponse {\n /** The error object. */\n error?: ErrorDetail;\n}\n\n/** The error detail. */\nexport interface ErrorDetail {\n /**\n * The error code.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly code?: string;\n /**\n * The error message.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly message?: string;\n /**\n * The error target.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly target?: string;\n /**\n * The error details.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly details?: ErrorDetail[];\n /**\n * The error additional info.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly additionalInfo?: ErrorAdditionalInfo[];\n}\n\n/** The resource management error additional info. */\nexport interface ErrorAdditionalInfo {\n /**\n * The additional info type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /**\n * The additional info.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly info?: Record<string, unknown>;\n}\n\n/** Response containing search results from an index. */\nexport interface SearchDocumentsResult {\n /**\n * The total count of results found by the search operation, or null if the count was not requested. If present, the count may be greater than the number of results in this response. This can happen if you use the $top or $skip parameters, or if the query can't return all the requested documents in a single response.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly count?: number;\n /**\n * A value indicating the percentage of the index that was included in the query, or null if minimumCoverage was not specified in the request.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly coverage?: number;\n /**\n * The facet query results for the search operation, organized as a collection of buckets for each faceted field; null if the query did not include any facet expressions.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly facets?: { [propertyName: string]: FacetResult[] };\n /**\n * The answers query results for the search operation; null if the answers query parameter was not specified or set to 'none'.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly answers?: QueryAnswerResult[];\n /**\n * Continuation JSON payload returned when the query can't return all the requested results in a single response. You can use this JSON along with @odata.nextLink to formulate another POST Search request to get the next part of the search response.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextPageParameters?: SearchRequest;\n /**\n * The sequence of results returned by the query.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly results: SearchResult[];\n /**\n * Continuation URL returned when the query can't return all the requested results in a single response. You can use this URL to formulate another GET or POST Search request to get the next part of the search response. Make sure to use the same verb (GET or POST) as the request that produced this response.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nextLink?: string;\n /**\n * Reason that a partial response was returned for a semantic ranking request.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly semanticPartialResponseReason?: SemanticErrorReason;\n /**\n * Type of partial response that was returned for a semantic ranking request.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly semanticPartialResponseType?: SemanticSearchResultsType;\n}\n\n/** A single bucket of a facet query result. Reports the number of documents with a field value falling within a particular range or having a particular value or interval. */\nexport interface FacetResult {\n /** Describes unknown properties. The value of an unknown property can be of \"any\" type. */\n [property: string]: any;\n /**\n * The approximate count of documents falling within the bucket described by this facet.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly count?: number;\n}\n\n/** An answer is a text passage extracted from the contents of the most relevant documents that matched the query. Answers are extracted from the top search results. Answer candidates are scored and the top answers are selected. */\nexport interface QueryAnswerResult {\n /** Describes unknown properties. The value of an unknown property can be of \"any\" type. */\n [property: string]: any;\n /**\n * The score value represents how relevant the answer is to the query relative to other answers returned for the query.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly score: number;\n /**\n * The key of the document the answer was extracted from.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly key: string;\n /**\n * The text passage extracted from the document contents as the answer.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly text: string;\n /**\n * Same text passage as in the Text property with highlighted text phrases most relevant to the query.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly highlights?: string;\n}\n\n/** Parameters for filtering, sorting, faceting, paging, and other search query behaviors. */\nexport interface SearchRequest {\n /** A value that specifies whether to fetch the total count of results. Default is false. Setting this value to true may have a performance impact. Note that the count returned is an approximation. */\n includeTotalResultCount?: boolean;\n /** The list of facet expressions to apply to the search query. Each facet expression contains a field name, optionally followed by a comma-separated list of name:value pairs. */\n facets?: string[];\n /** The OData $filter expression to apply to the search query. */\n filter?: string;\n /** The comma-separated list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting. */\n highlightFields?: string;\n /** A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>. */\n highlightPostTag?: string;\n /** A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>. */\n highlightPreTag?: string;\n /** A number between 0 and 100 indicating the percentage of the index that must be covered by a search query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 100. */\n minimumCoverage?: number;\n /** The comma-separated list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses. */\n orderBy?: string;\n /** A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax. */\n queryType?: QueryType;\n /** A value that specifies whether we want to calculate scoring statistics (such as document frequency) globally for more consistent scoring, or locally, for lower latency. The default is 'local'. Use 'global' to aggregate scoring statistics globally before scoring. Using global scoring statistics can increase latency of search queries. */\n scoringStatistics?: ScoringStatistics;\n /** A value to be used to create a sticky session, which can help getting more consistent results. As long as the same sessionId is used, a best-effort attempt will be made to target the same replica set. Be wary that reusing the same sessionID values repeatedly can interfere with the load balancing of the requests across replicas and adversely affect the performance of the search service. The value used as sessionId cannot start with a '_' character. */\n sessionId?: string;\n /** The list of parameter values to be used in scoring functions (for example, referencePointParameter) using the format name-values. For example, if the scoring profile defines a function with a parameter called 'mylocation' the parameter string would be \"mylocation--122.2,44.8\" (without the quotes). */\n scoringParameters?: string[];\n /** The name of a scoring profile to evaluate match scores for matching documents in order to sort the results. */\n scoringProfile?: string;\n /** Enables a debugging tool that can be used to further explore your reranked results. */\n debug?: QueryDebugMode;\n /** A full-text search query expression; Use \"*\" or omit this parameter to match all documents. */\n searchText?: string;\n /** The comma-separated list of field names to which to scope the full-text search. When using fielded search (fieldName:searchExpression) in a full Lucene query, the field names of each fielded search expression take precedence over any field names listed in this parameter. */\n searchFields?: string;\n /** A value that specifies whether any or all of the search terms must be matched in order to count the document as a match. */\n searchMode?: SearchMode;\n /** A value that specifies the language of the search query. */\n queryLanguage?: QueryLanguage;\n /** A value that specified the type of the speller to use to spell-correct individual search query terms. */\n speller?: QuerySpellerType;\n /** The comma-separated list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included. */\n select?: string;\n /** The number of search results to skip. This value cannot be greater than 100,000. If you need to scan documents in sequence, but cannot use skip due to this limitation, consider using orderby on a totally-ordered key and filter with a range query instead. */\n skip?: number;\n /** The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side paging of search results. If results are truncated due to server-side paging, the response will include a continuation token that can be used to issue another Search request for the next page of results. */\n top?: number;\n /** The name of a semantic configuration that will be used when processing documents for queries of type semantic. */\n semanticConfigurationName?: string;\n /** Allows the user to choose whether a semantic call should fail completely (default / current behavior), or to return partial results. */\n semanticErrorHandling?: SemanticErrorMode;\n /** Allows the user to set an upper bound on the amount of time it takes for semantic enrichment to finish processing before the request fails. */\n semanticMaxWaitInMilliseconds?: number;\n /** Allows setting a separate search query that will be solely used for semantic reranking, semantic captions and semantic answers. Is useful for scenarios where there is a need to use different queries between the base retrieval and ranking phase, and the L2 semantic phase. */\n semanticQuery?: string;\n /** A value that specifies whether answers should be returned as part of the search response. */\n answers?: QueryAnswerType;\n /** A value that specifies whether captions should be returned as part of the search response. */\n captions?: QueryCaptionType;\n /** The comma-separated list of field names used for semantic ranking. */\n semanticFields?: string;\n /** The query parameters for vector and hybrid search queries. */\n vectorQueries?: VectorQueryUnion[];\n /** Determines whether or not filters are applied before or after the vector search is performed. Default is 'preFilter' for new indexes. */\n vectorFilterMode?: VectorFilterMode;\n /** The query parameters to configure hybrid search behaviors. */\n hybridSearch?: HybridSearch;\n}\n\n/** The query parameters for vector and hybrid search queries. */\nexport interface VectorQuery {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"vector\" | \"text\" | \"imageUrl\" | \"imageBinary\";\n /** Number of nearest neighbors to return as top hits. */\n kNearestNeighborsCount?: number;\n /** Vector Fields of type Collection(Edm.Single) to be included in the vector searched. */\n fields?: string;\n /** When true, triggers an exhaustive k-nearest neighbor search across all vectors within the vector index. Useful for scenarios where exact matches are critical, such as determining ground truth values. */\n exhaustive?: boolean;\n /** Oversampling factor. Minimum value is 1. It overrides the 'defaultOversampling' parameter configured in the index definition. It can be set only when 'rerankWithOriginalVectors' is true. This parameter is only permitted when a compression method is used on the underlying vector field. */\n oversampling?: number;\n /** Relative weight of the vector query when compared to other vector query and/or the text query within the same search request. This value is used when combining the results of multiple ranking lists produced by the different vector queries and/or the results retrieved through the text query. The higher the weight, the higher the documents that matched that query will be in the final ranking. Default is 1.0 and the value needs to be a positive number larger than zero. */\n weight?: number;\n /** The threshold used for vector queries. Note this can only be set if all 'fields' use the same similarity metric. */\n threshold?: VectorThresholdUnion;\n /** The OData filter expression to apply to this specific vector query. If no filter expression is defined at the vector level, the expression defined in the top level filter parameter is used instead. */\n filterOverride?: string;\n}\n\n/** The threshold used for vector queries. */\nexport interface VectorThreshold {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"vectorSimilarity\" | \"searchScore\";\n}\n\n/** TThe query parameters to configure hybrid search behaviors. */\nexport interface HybridSearch {\n /** Determines the maximum number of documents to be retrieved by the text query portion of a hybrid search request. Those documents will be combined with the documents matching the vector queries to produce a single final list of results. Choosing a larger maxTextRecallSize value will allow retrieving and paging through more documents (using the top and skip parameters), at the cost of higher resource utilization and higher latency. The value needs to be between 1 and 10,000. Default is 1000. */\n maxTextRecallSize?: number;\n /** Determines whether the count and facets should includes all documents that matched the search query, or only the documents that are retrieved within the 'maxTextRecallSize' window. */\n countAndFacetMode?: HybridCountAndFacetMode;\n}\n\n/** Contains a document found by a search query, plus associated metadata. */\nexport interface SearchResult {\n /** Describes unknown properties. The value of an unknown property can be of \"any\" type. */\n [property: string]: any;\n /**\n * The relevance score of the document compared to other documents returned by the query.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly _score: number;\n /**\n * The relevance score computed by the semantic ranker for the top search results. Search results are sorted by the RerankerScore first and then by the Score. RerankerScore is only returned for queries of type 'semantic'.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly _rerankerScore?: number;\n /**\n * Text fragments from the document that indicate the matching search terms, organized by each applicable field; null if hit highlighting was not enabled for the query.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly _highlights?: { [propertyName: string]: string[] };\n /**\n * Captions are the most representative passages from the document relatively to the search query. They are often used as document summary. Captions are only returned for queries of type 'semantic'.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly _captions?: QueryCaptionResult[];\n /**\n * Contains debugging information that can be used to further explore your search results.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly documentDebugInfo?: DocumentDebugInfo[];\n}\n\n/** Captions are the most representative passages from the document relatively to the search query. They are often used as document summary. Captions are only returned for queries of type `semantic`. */\nexport interface QueryCaptionResult {\n /** Describes unknown properties. The value of an unknown property can be of \"any\" type. */\n [property: string]: any;\n /**\n * A representative text passage extracted from the document most relevant to the search query.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly text?: string;\n /**\n * Same text passage as in the Text property with highlighted phrases most relevant to the query.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly highlights?: string;\n}\n\n/** Contains debugging information that can be used to further explore your search results. */\nexport interface DocumentDebugInfo {\n /**\n * Contains debugging information specific to semantic ranking requests.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly semantic?: SemanticDebugInfo;\n /**\n * Contains debugging information specific to vector and hybrid search.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly vectors?: VectorsDebugInfo;\n}\n\nexport interface SemanticDebugInfo {\n /**\n * The title field that was sent to the semantic enrichment process, as well as how it was used\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly titleField?: QueryResultDocumentSemanticField;\n /**\n * The content fields that were sent to the semantic enrichment process, as well as how they were used\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly contentFields?: QueryResultDocumentSemanticField[];\n /**\n * The keyword fields that were sent to the semantic enrichment process, as well as how they were used\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly keywordFields?: QueryResultDocumentSemanticField[];\n /**\n * The raw concatenated strings that were sent to the semantic enrichment process.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly rerankerInput?: QueryResultDocumentRerankerInput;\n}\n\n/** Description of fields that were sent to the semantic enrichment process, as well as how they were used */\nexport interface QueryResultDocumentSemanticField {\n /**\n * The name of the field that was sent to the semantic enrichment process\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * The way the field was used for the semantic enrichment process (fully used, partially used, or unused)\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly state?: SemanticFieldState;\n}\n\n/** The raw concatenated strings that were sent to the semantic enrichment process. */\nexport interface QueryResultDocumentRerankerInput {\n /**\n * The raw string for the title field that was used for semantic enrichment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly title?: string;\n /**\n * The raw concatenated strings for the content fields that were used for semantic enrichment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly content?: string;\n /**\n * The raw concatenated strings for the keyword fields that were used for semantic enrichment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly keywords?: string;\n}\n\nexport interface VectorsDebugInfo {\n /**\n * The breakdown of subscores of the document prior to the chosen result set fusion/combination method such as RRF.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly subscores?: QueryResultDocumentSubscores;\n}\n\n/** The breakdown of subscores between the text and vector query components of the search query for this document. Each vector query is shown as a separate object in the same order they were received. */\nexport interface QueryResultDocumentSubscores {\n /**\n * The BM25 or Classic score for the text portion of the query.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly text?: TextResult;\n /**\n * The vector similarity and @search.score values for each vector query.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly vectors?: { [propertyName: string]: SingleVectorFieldResult }[];\n /**\n * The BM25 or Classic score for the text portion of the query.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly documentBoost?: number;\n}\n\n/** The BM25 or Classic score for the text portion of the query. */\nexport interface TextResult {\n /**\n * The BM25 or Classic score for the text portion of the query.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly searchScore?: number;\n}\n\n/** A single vector field result. Both @search.score and vector similarity values are returned. Vector similarity is related to @search.score by an equation. */\nexport interface SingleVectorFieldResult {\n /**\n * The @search.score value that is calculated from the vector similarity score. This is the score that's visible in a pure single-field single-vector query.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly searchScore?: number;\n /**\n * The vector similarity score for this document. Note this is the canonical definition of similarity metric, not the 'distance' version. For example, cosine similarity instead of cosine distance.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly vectorSimilarity?: number;\n}\n\n/** Response containing suggestion query results from an index. */\nexport interface SuggestDocumentsResult {\n /**\n * The sequence of results returned by the query.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly results: SuggestResult[];\n /**\n * A value indicating the percentage of the index that was included in the query, or null if minimumCoverage was not set in the request.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly coverage?: number;\n}\n\n/** A result containing a document found by a suggestion query, plus associated metadata. */\nexport interface SuggestResult {\n /** Describes unknown properties. The value of an unknown property can be of \"any\" type. */\n [property: string]: any;\n /**\n * The text of the suggestion result.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly _text: string;\n}\n\n/** Parameters for filtering, sorting, fuzzy matching, and other suggestions query behaviors. */\nexport interface SuggestRequest {\n /** An OData expression that filters the documents considered for suggestions. */\n filter?: string;\n /** A value indicating whether to use fuzzy matching for the suggestion query. Default is false. When set to true, the query will find suggestions even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy suggestion searches are slower and consume more resources. */\n useFuzzyMatching?: boolean;\n /** A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting of suggestions is disabled. */\n highlightPostTag?: string;\n /** A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting of suggestions is disabled. */\n highlightPreTag?: string;\n /** A number between 0 and 100 indicating the percentage of the index that must be covered by a suggestion query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80. */\n minimumCoverage?: number;\n /** The comma-separated list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses. */\n orderBy?: string;\n /** The search text to use to suggest documents. Must be at least 1 character, and no more than 100 characters. */\n searchText: string;\n /** The comma-separated list of field names to search for the specified search text. Target fields must be included in the specified suggester. */\n searchFields?: string;\n /** The comma-separated list of fields to retrieve. If unspecified, only the key field will be included in the results. */\n select?: string;\n /** The name of the suggester as specified in the suggesters collection that's part of the index definition. */\n suggesterName: string;\n /** The number of suggestions to retrieve. This must be a value between 1 and 100. The default is 5. */\n top?: number;\n}\n\n/** Contains a batch of document write actions to send to the index. */\nexport interface IndexBatch {\n /** The actions in the batch. */\n actions: IndexAction[];\n}\n\n/** Represents an index action that operates on a document. */\nexport interface IndexAction {\n /** Describes unknown properties. The value of an unknown property can be of \"any\" type. */\n [property: string]: any;\n /** The operation to perform on a document in an indexing batch. */\n __actionType: IndexActionType;\n}\n\n/** Response containing the status of operations for all documents in the indexing request. */\nexport interface IndexDocumentsResult {\n /**\n * The list of status information for each document in the indexing request.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly results: IndexingResult[];\n}\n\n/** Status of an indexing operation for a single document. */\nexport interface IndexingResult {\n /**\n * The key of a document that was in the indexing request.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly key: string;\n /**\n * The error message explaining why the indexing operation failed for the document identified by the key; null if indexing succeeded.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly errorMessage?: string;\n /**\n * A value indicating whether the indexing operation succeeded for the document identified by the key.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly succeeded: boolean;\n /**\n * The status code of the indexing operation. Possible values include: 200 for a successful update or delete, 201 for successful document creation, 400 for a malformed input document, 404 for document not found, 409 for a version conflict, 422 when the index is temporarily unavailable, or 503 for when the service is too busy.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly statusCode: number;\n}\n\n/** The result of Autocomplete query. */\nexport interface AutocompleteResult {\n /**\n * A value indicating the percentage of the index that was considered by the autocomplete request, or null if minimumCoverage was not specified in the request.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly coverage?: number;\n /**\n * The list of returned Autocompleted items.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly results: AutocompleteItem[];\n}\n\n/** The result of Autocomplete requests. */\nexport interface AutocompleteItem {\n /**\n * The completed term.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly text: string;\n /**\n * The query along with the completed term.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly queryPlusText: string;\n}\n\n/** Parameters for fuzzy matching, and other autocomplete query behaviors. */\nexport interface AutocompleteRequest {\n /** The search text on which to base autocomplete results. */\n searchText: string;\n /** Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context while producing auto-completed terms. */\n autocompleteMode?: AutocompleteMode;\n /** An OData expression that filters the documents used to produce completed terms for the Autocomplete result. */\n filter?: string;\n /** A value indicating whether to use fuzzy matching for the autocomplete query. Default is false. When set to true, the query will autocomplete terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy autocomplete queries are slower and consume more resources. */\n useFuzzyMatching?: boolean;\n /** A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting is disabled. */\n highlightPostTag?: string;\n /** A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting is disabled. */\n highlightPreTag?: string;\n /** A number between 0 and 100 indicating the percentage of the index that must be covered by an autocomplete query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80. */\n minimumCoverage?: number;\n /** The comma-separated list of field names to consider when querying for auto-completed terms. Target fields must be included in the specified suggester. */\n searchFields?: string;\n /** The name of the suggester as specified in the suggesters collection that's part of the index definition. */\n suggesterName: string;\n /** The number of auto-completed terms to retrieve. This must be a value between 1 and 100. The default is 5. */\n top?: number;\n}\n\n/** The query parameters to use for vector search when a raw vector value is provided. */\nexport interface VectorizedQuery extends VectorQuery {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"vector\";\n /** The vector representation of a search query. */\n vector: number[];\n}\n\n/** The query parameters to use for vector search when a text value that needs to be vectorized is provided. */\nexport interface VectorizableTextQuery extends VectorQuery {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"text\";\n /** The text to be vectorized to perform a vector search query. */\n text: string;\n}\n\n/** The query parameters to use for vector search when an url that represents an image value that needs to be vectorized is provided. */\nexport interface VectorizableImageUrlQuery extends VectorQuery {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"imageUrl\";\n /** The URL of an image to be vectorized to perform a vector search query. */\n url?: string;\n}\n\n/** The query parameters to use for vector search when a base 64 encoded binary of an image that needs to be vectorized is provided. */\nexport interface VectorizableImageBinaryQuery extends VectorQuery {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"imageBinary\";\n /** The base 64 encoded binary of an image to be vectorized to perform a vector search query. */\n base64Image?: string;\n}\n\n/** The results of the vector query will be filtered based on the vector similarity metric. Note this is the canonical definition of similarity metric, not the 'distance' version. The threshold direction (larger or smaller) will be chosen automatically according to the metric used by the field. */\nexport interface VectorSimilarityThreshold extends VectorThreshold {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"vectorSimilarity\";\n /** The threshold will filter based on the similarity metric value. Note this is the canonical definition of similarity metric, not the 'distance' version. The threshold direction (larger or smaller) will be chosen automatically according to the metric used by the field. */\n value: number;\n}\n\n/** The results of the vector query will filter based on the '@search.score' value. Note this is the @search.score returned as part of the search response. The threshold direction will be chosen for higher @search.score. */\nexport interface SearchScoreThreshold extends VectorThreshold {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"searchScore\";\n /** The threshold will filter based on the '@search.score' value. Note this is the @search.score returned as part of the search response. The threshold direction will be chosen for higher @search.score. */\n value: number;\n}\n\n/** Parameter group */\nexport interface SearchOptions {\n /** A value that specifies whether to fetch the total count of results. Default is false. Setting this value to true may have a performance impact. Note that the count returned is an approximation. */\n includeTotalResultCount?: boolean;\n /** The list of facet expressions to apply to the search query. Each facet expression contains a field name, optionally followed by a comma-separated list of name:value pairs. */\n facets?: string[];\n /** The OData $filter expression to apply to the search query. */\n filter?: string;\n /** The list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting. */\n highlightFields?: string[];\n /** A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>. */\n highlightPostTag?: string;\n /** A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>. */\n highlightPreTag?: string;\n /** A number between 0 and 100 indicating the percentage of the index that must be covered by a search query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 100. */\n minimumCoverage?: number;\n /** The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, and desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no OrderBy is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses. */\n orderBy?: string[];\n /** A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax. */\n queryType?: QueryType;\n /** The list of parameter values to be used in scoring functions (for example, referencePointParameter) using the format name-values. For example, if the scoring profile defines a function with a parameter called 'mylocation' the parameter string would be \"mylocation--122.2,44.8\" (without the quotes). */\n scoringParameters?: string[];\n /** The name of a scoring profile to evaluate match scores for matching documents in order to sort the results. */\n scoringProfile?: string;\n /** The list of field names to which to scope the full-text search. When using fielded search (fieldName:searchExpression) in a full Lucene query, the field names of each fielded search expression take precedence over any field names listed in this parameter. */\n searchFields?: string[];\n /** A value that specifies whether any or all of the search terms must be matched in order to count the document as a match. */\n searchMode?: SearchMode;\n /** A value that specifies whether we want to calculate scoring statistics (such as document frequency) globally for more consistent scoring, or locally, for lower latency. */\n scoringStatistics?: ScoringStatistics;\n /** A value to be used to create a sticky session, which can help to get more consistent results. As long as the same sessionId is used, a best-effort attempt will be made to target the same replica set. Be wary that reusing the same sessionID values repeatedly can interfere with the load balancing of the requests across replicas and adversely affect the performance of the search service. The value used as sessionId cannot start with a '_' character. */\n sessionId?: string;\n /** The list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included. */\n select?: string[];\n /** The number of search results to skip. This value cannot be greater than 100,000. If you need to scan documents in sequence, but cannot use $skip due to this limitation, consider using $orderby on a totally-ordered key and $filter with a range query instead. */\n skip?: number;\n /** The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side paging of search results. If results are truncated due to server-side paging, the response will include a continuation token that can be used to issue another Search request for the next page of results. */\n top?: number;\n /** The name of the semantic configuration that lists which fields should be used for semantic ranking, captions, highlights, and answers */\n semanticConfiguration?: string;\n /** Allows the user to choose whether a semantic call should fail completely, or to return partial results (default). */\n semanticErrorHandling?: SemanticErrorMode;\n /** Allows the user to set an upper bound on the amount of time it takes for semantic enrichment to finish processing before the request fails. */\n semanticMaxWaitInMilliseconds?: number;\n /** This parameter is only valid if the query type is `semantic`. If set, the query returns answers extracted from key passages in the highest ranked documents. The number of answers returned can be configured by appending the pipe character `|` followed by the `count-<number of answers>` option after the answers parameter value, such as `extractive|count-3`. Default count is 1. The confidence threshold can be configured by appending the pipe character `|` followed by the `threshold-<confidence threshold>` option after the answers parameter value, such as `extractive|threshold-0.9`. Default threshold is 0.7. */\n answers?: QueryAnswerType;\n /** This parameter is only valid if the query type is `semantic`. If set, the query returns captions extracted from key passages in the highest ranked documents. When Captions is set to `extractive`, highlighting is enabled by default, and can be configured by appending the pipe character `|` followed by the `highlight-<true/false>` option, such as `extractive|highlight-true`. Defaults to `None`. */\n captions?: QueryCaptionType;\n /** Allows setting a separate search query that will be solely used for semantic reranking, semantic captions and semantic answers. Is useful for scenarios where there is a need to use different queries between the base retrieval and ranking phase, and the L2 semantic phase. */\n semanticQuery?: string;\n /** Enables a debugging tool that can be used to further explore your search results. */\n debug?: QueryDebugMode;\n /** The language of the query. */\n queryLanguage?: QueryLanguage;\n /** Improve search recall by spell-correcting individual search query terms. */\n speller?: Speller;\n /** The list of field names used for semantic ranking. */\n semanticFields?: string[];\n}\n\n/** Parameter group */\nexport interface SuggestOptions {\n /** An OData expression that filters the documents considered for suggestions. */\n filter?: string;\n /** A value indicating whether to use fuzzy matching for the suggestions query. Default is false. When set to true, the query will find terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy suggestions queries are slower and consume more resources. */\n useFuzzyMatching?: boolean;\n /** A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting of suggestions is disabled. */\n highlightPostTag?: string;\n /** A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting of suggestions is disabled. */\n highlightPreTag?: string;\n /** A number between 0 and 100 indicating the percentage of the index that must be covered by a suggestions query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80. */\n minimumCoverage?: number;\n /** The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses. */\n orderBy?: string[];\n /** The list of field names to search for the specified search text. Target fields must be included in the specified suggester. */\n searchFields?: string[];\n /** The list of fields to retrieve. If unspecified, only the key field will be included in the results. */\n select?: string[];\n /** The number of suggestions to retrieve. The value must be a number between 1 and 100. The default is 5. */\n top?: number;\n}\n\n/** Parameter group */\nexport interface AutocompleteOptions {\n /** Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context while producing auto-completed terms. */\n autocompleteMode?: AutocompleteMode;\n /** An OData expression that filters the documents used to produce completed terms for the Autocomplete result. */\n filter?: string;\n /** A value indicating whether to use fuzzy matching for the autocomplete query. Default is false. When set to true, the query will find terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy autocomplete queries are slower and consume more resources. */\n useFuzzyMatching?: boolean;\n /** A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting is disabled. */\n highlightPostTag?: string;\n /** A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting is disabled. */\n highlightPreTag?: string;\n /** A number between 0 and 100 indicating the percentage of the index that must be covered by an autocomplete query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80. */\n minimumCoverage?: number;\n /** The list of field names to consider when querying for auto-completed terms. Target fields must be included in the specified suggester. */\n searchFields?: string[];\n /** The number of auto-completed terms to retrieve. This must be a value between 1 and 100. The default is 5. */\n top?: number;\n}\n\n/** Known values of {@link ApiVersion20240901Preview} that the service accepts. */\nexport enum KnownApiVersion20240901Preview {\n /** Api Version '2024-09-01-preview' */\n TwoThousandTwentyFour0901Preview = \"2024-09-01-preview\",\n}\n\n/**\n * Defines values for ApiVersion20240901Preview. \\\n * {@link KnownApiVersion20240901Preview} can be used interchangeably with ApiVersion20240901Preview,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **2024-09-01-preview**: Api Version '2024-09-01-preview'\n */\nexport type ApiVersion20240901Preview = string;\n\n/** Known values of {@link SemanticErrorMode} that the service accepts. */\nexport enum KnownSemanticErrorMode {\n /** If the semantic processing fails, partial results still return. The definition of partial results depends on what semantic step failed and what was the reason for failure. */\n Partial = \"partial\",\n /** If there is an exception during the semantic processing step, the query will fail and return the appropriate HTTP code depending on the error. */\n Fail = \"fail\",\n}\n\n/**\n * Defines values for SemanticErrorMode. \\\n * {@link KnownSemanticErrorMode} can be used interchangeably with SemanticErrorMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **partial**: If the semantic processing fails, partial results still return. The definition of partial results depends on what semantic step failed and what was the reason for failure. \\\n * **fail**: If there is an exception during the semantic processing step, the query will fail and return the appropriate HTTP code depending on the error.\n */\nexport type SemanticErrorMode = string;\n\n/** Known values of {@link QueryAnswerType} that the service accepts. */\nexport enum KnownQueryAnswerType {\n /** Do not return answers for the query. */\n None = \"none\",\n /** Extracts answer candidates from the contents of the documents returned in response to a query expressed as a question in natural language. */\n Extractive = \"extractive\",\n}\n\n/**\n * Defines values for QueryAnswerType. \\\n * {@link KnownQueryAnswerType} can be used interchangeably with QueryAnswerType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **none**: Do not return answers for the query. \\\n * **extractive**: Extracts answer candidates from the contents of the documents returned in response to a query expressed as a question in natural language.\n */\nexport type QueryAnswerType = string;\n\n/** Known values of {@link QueryCaptionType} that the service accepts. */\nexport enum KnownQueryCaptionType {\n /** Do not return captions for the query. */\n None = \"none\",\n /** Extracts captions from the matching documents that contain passages relevant to the search query. */\n Extractive = \"extractive\",\n}\n\n/**\n * Defines values for QueryCaptionType. \\\n * {@link KnownQueryCaptionType} can be used interchangeably with QueryCaptionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **none**: Do not return captions for the query. \\\n * **extractive**: Extracts captions from the matching documents that contain passages relevant to the search query.\n */\nexport type QueryCaptionType = string;\n\n/** Known values of {@link QueryDebugMode} that the service accepts. */\nexport enum KnownQueryDebugMode {\n /** No query debugging information will be returned. */\n Disabled = \"disabled\",\n /** Allows the user to further explore their reranked results. */\n Semantic = \"semantic\",\n}\n\n/**\n * Defines values for QueryDebugMode. \\\n * {@link KnownQueryDebugMode} can be used interchangeably with QueryDebugMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **disabled**: No query debugging information will be returned. \\\n * **semantic**: Allows the user to further explore their reranked results.\n */\nexport type QueryDebugMode = string;\n\n/** Known values of {@link QueryLanguage} that the service accepts. */\nexport enum KnownQueryLanguage {\n /** Query language not specified. */\n None = \"none\",\n /** Query language value for English (United States). */\n EnUs = \"en-us\",\n /** Query language value for English (Great Britain). */\n EnGb = \"en-gb\",\n /** Query language value for English (India). */\n EnIn = \"en-in\",\n /** Query language value for English (Canada). */\n EnCa = \"en-ca\",\n /** Query language value for English (Australia). */\n EnAu = \"en-au\",\n /** Query language value for French (France). */\n FrFr = \"fr-fr\",\n /** Query language value for French (Canada). */\n FrCa = \"fr-ca\",\n /** Query language value for German (Germany). */\n DeDe = \"de-de\",\n /** Query language value for Spanish (Spain). */\n EsEs = \"es-es\",\n /** Query language value for Spanish (Mexico). */\n EsMx = \"es-mx\",\n /** Query language value for Chinese (China). */\n ZhCn = \"zh-cn\",\n /** Query language value for Chinese (Taiwan). */\n ZhTw = \"zh-tw\",\n /** Query language value for Portuguese (Brazil). */\n PtBr = \"pt-br\",\n /** Query language value for Portuguese (Portugal). */\n PtPt = \"pt-pt\",\n /** Query language value for Italian (Italy). */\n ItIt = \"it-it\",\n /** Query language value for Japanese (Japan). */\n JaJp = \"ja-jp\",\n /** Query language value for Korean (Korea). */\n KoKr = \"ko-kr\",\n /** Query language value for Russian (Russia). */\n RuRu = \"ru-ru\",\n /** Query language value for Czech (Czech Republic). */\n CsCz = \"cs-cz\",\n /** Query language value for Dutch (Belgium). */\n NlBe = \"nl-be\",\n /** Query language value for Dutch (Netherlands). */\n NlNl = \"nl-nl\",\n /** Query language value for Hungarian (Hungary). */\n HuHu = \"hu-hu\",\n /** Query language value for Polish (Poland). */\n PlPl = \"pl-pl\",\n /** Query language value for Swedish (Sweden). */\n SvSe = \"sv-se\",\n /** Query language value for Turkish (Turkey). */\n TrTr = \"tr-tr\",\n /** Query language value for Hindi (India). */\n HiIn = \"hi-in\",\n /** Query language value for Arabic (Saudi Arabia). */\n ArSa = \"ar-sa\",\n /** Query language value for Arabic (Egypt). */\n ArEg = \"ar-eg\",\n /** Query language value for Arabic (Morocco). */\n ArMa = \"ar-ma\",\n /** Query language value for Arabic (Kuwait). */\n ArKw = \"ar-kw\",\n /** Query language value for Arabic (Jordan). */\n ArJo = \"ar-jo\",\n /** Query language value for Danish (Denmark). */\n DaDk = \"da-dk\",\n /** Query language value for Norwegian (Norway). */\n NoNo = \"no-no\",\n /** Query language value for Bulgarian (Bulgaria). */\n BgBg = \"bg-bg\",\n /** Query language value for Croatian (Croatia). */\n HrHr = \"hr-hr\",\n /** Query language value for Croatian (Bosnia and Herzegovina). */\n HrBa = \"hr-ba\",\n /** Query language value for Malay (Malaysia). */\n MsMy = \"ms-my\",\n /** Query language value for Malay (Brunei Darussalam). */\n MsBn = \"ms-bn\",\n /** Query language value for Slovenian (Slovenia). */\n SlSl = \"sl-sl\",\n /** Query language value for Tamil (India). */\n TaIn = \"ta-in\",\n /** Query language value for Vietnamese (Viet Nam). */\n ViVn = \"vi-vn\",\n /** Query language value for Greek (Greece). */\n ElGr = \"el-gr\",\n /** Query language value for Romanian (Romania). */\n RoRo = \"ro-ro\",\n /** Query language value for Icelandic (Iceland). */\n IsIs = \"is-is\",\n /** Query language value for Indonesian (Indonesia). */\n IdId = \"id-id\",\n /** Query language value for Thai (Thailand). */\n ThTh = \"th-th\",\n /** Query language value for Lithuanian (Lithuania). */\n LtLt = \"lt-lt\",\n /** Query language value for Ukrainian (Ukraine). */\n UkUa = \"uk-ua\",\n /** Query language value for Latvian (Latvia). */\n LvLv = \"lv-lv\",\n /** Query language value for Estonian (Estonia). */\n EtEe = \"et-ee\",\n /** Query language value for Catalan. */\n CaEs = \"ca-es\",\n /** Query language value for Finnish (Finland). */\n FiFi = \"fi-fi\",\n /** Query language value for Serbian (Bosnia and Herzegovina). */\n SrBa = \"sr-ba\",\n /** Query language value for Serbian (Montenegro). */\n SrMe = \"sr-me\",\n /** Query language value for Serbian (Serbia). */\n SrRs = \"sr-rs\",\n /** Query language value for Slovak (Slovakia). */\n SkSk = \"sk-sk\",\n /** Query language value for Norwegian (Norway). */\n NbNo = \"nb-no\",\n /** Query language value for Armenian (Armenia). */\n HyAm = \"hy-am\",\n /** Query language value for Bengali (India). */\n BnIn = \"bn-in\",\n /** Query language value for Basque. */\n EuEs = \"eu-es\",\n /** Query language value for Galician. */\n GlEs = \"gl-es\",\n /** Query language value for Gujarati (India). */\n GuIn = \"gu-in\",\n /** Query language value for Hebrew (Israel). */\n HeIl = \"he-il\",\n /** Query language value for Irish (Ireland). */\n GaIe = \"ga-ie\",\n /** Query language value for Kannada (India). */\n KnIn = \"kn-in\",\n /** Query language value for Malayalam (India). */\n MlIn = \"ml-in\",\n /** Query language value for Marathi (India). */\n MrIn = \"mr-in\",\n /** Query language value for Persian (U.A.E.). */\n FaAe = \"fa-ae\",\n /** Query language value for Punjabi (India). */\n PaIn = \"pa-in\",\n /** Query language value for Telugu (India). */\n TeIn = \"te-in\",\n /** Query language value for Urdu (Pakistan). */\n UrPk = \"ur-pk\",\n}\n\n/**\n * Defines values for QueryLanguage. \\\n * {@link KnownQueryLanguage} can be used interchangeably with QueryLanguage,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **none**: Query language not specified. \\\n * **en-us**: Query language value for English (United States). \\\n * **en-gb**: Query language value for English (Great Britain). \\\n * **en-in**: Query language value for English (India). \\\n * **en-ca**: Query language value for English (Canada). \\\n * **en-au**: Query language value for English (Australia). \\\n * **fr-fr**: Query language value for French (France). \\\n * **fr-ca**: Query language value for French (Canada). \\\n * **de-de**: Query language value for German (Germany). \\\n * **es-es**: Query language value for Spanish (Spain). \\\n * **es-mx**: Query language value for Spanish (Mexico). \\\n * **zh-cn**: Query language value for Chinese (China). \\\n * **zh-tw**: Query language value for Chinese (Taiwan). \\\n * **pt-br**: Query language value for Portuguese (Brazil). \\\n * **pt-pt**: Query language value for Portuguese (Portugal). \\\n * **it-it**: Query language value for Italian (Italy). \\\n * **ja-jp**: Query language value for Japanese (Japan). \\\n * **ko-kr**: Query language value for Korean (Korea). \\\n * **ru-ru**: Query language value for Russian (Russia). \\\n * **cs-cz**: Query language value for Czech (Czech Republic). \\\n * **nl-be**: Query language value for Dutch (Belgium). \\\n * **nl-nl**: Query language value for Dutch (Netherlands). \\\n * **hu-hu**: Query language value for Hungarian (Hungary). \\\n * **pl-pl**: Query language value for Polish (Poland). \\\n * **sv-se**: Query language value for Swedish (Sweden). \\\n * **tr-tr**: Query language value for Turkish (Turkey). \\\n * **hi-in**: Query language value for Hindi (India). \\\n * **ar-sa**: Query language value for Arabic (Saudi Arabia). \\\n * **ar-eg**: Query language value for Arabic (Egypt). \\\n * **ar-ma**: Query language value for Arabic (Morocco). \\\n * **ar-kw**: Query language value for Arabic (Kuwait). \\\n * **ar-jo**: Query language value for Arabic (Jordan). \\\n * **da-dk**: Query language value for Danish (Denmark). \\\n * **no-no**: Query language value for Norwegian (Norway). \\\n * **bg-bg**: Query language value for Bulgarian (Bulgaria). \\\n * **hr-hr**: Query language value for Croatian (Croatia). \\\n * **hr-ba**: Query language value for Croatian (Bosnia and Herzegovina). \\\n * **ms-my**: Query language value for Malay (Malaysia). \\\n * **ms-bn**: Query language value for Malay (Brunei Darussalam). \\\n * **sl-sl**: Query language value for Slovenian (Slovenia). \\\n * **ta-in**: Query language value for Tamil (India). \\\n * **vi-vn**: Query language value for Vietnamese (Viet Nam). \\\n * **el-gr**: Query language value for Greek (Greece). \\\n * **ro-ro**: Query language value for Romanian (Romania). \\\n * **is-is**: Query language value for Icelandic (Iceland). \\\n * **id-id**: Query language value for Indonesian (Indonesia). \\\n * **th-th**: Query language value for Thai (Thailand). \\\n * **lt-lt**: Query language value for Lithuanian (Lithuania). \\\n * **uk-ua**: Query language value for Ukrainian (Ukraine). \\\n * **lv-lv**: Query language value for Latvian (Latvia). \\\n * **et-ee**: Query language value for Estonian (Estonia). \\\n * **ca-es**: Query language value for Catalan. \\\n * **fi-fi**: Query language value for Finnish (Finland). \\\n * **sr-ba**: Query language value for Serbian (Bosnia and Herzegovina). \\\n * **sr-me**: Query language value for Serbian (Montenegro). \\\n * **sr-rs**: Query language value for Serbian (Serbia). \\\n * **sk-sk**: Query language value for Slovak (Slovakia). \\\n * **nb-no**: Query language value for Norwegian (Norway). \\\n * **hy-am**: Query language value for Armenian (Armenia). \\\n * **bn-in**: Query language value for Bengali (India). \\\n * **eu-es**: Query language value for Basque. \\\n * **gl-es**: Query language value for Galician. \\\n * **gu-in**: Query language value for Gujarati (India). \\\n * **he-il**: Query language value for Hebrew (Israel). \\\n * **ga-ie**: Query language value for Irish (Ireland). \\\n * **kn-in**: Query language value for Kannada (India). \\\n * **ml-in**: Query language value for Malayalam (India). \\\n * **mr-in**: Query language value for Marathi (India). \\\n * **fa-ae**: Query language value for Persian (U.A.E.). \\\n * **pa-in**: Query language value for Punjabi (India). \\\n * **te-in**: Query language value for Telugu (India). \\\n * **ur-pk**: Query language value for Urdu (Pakistan).\n */\nexport type QueryLanguage = string;\n\n/** Known values of {@link Speller} that the service accepts. */\nexport enum KnownSpeller {\n /** Speller not enabled. */\n None = \"none\",\n /** Speller corrects individual query terms using a static lexicon for the language specified by the queryLanguage parameter. */\n Lexicon = \"lexicon\",\n}\n\n/**\n * Defines values for Speller. \\\n * {@link KnownSpeller} can be used interchangeably with Speller,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **none**: Speller not enabled. \\\n * **lexicon**: Speller corrects individual query terms using a static lexicon for the language specified by the queryLanguage parameter.\n */\nexport type Speller = string;\n\n/** Known values of {@link QuerySpellerType} that the service accepts. */\nexport enum KnownQuerySpellerType {\n /** Speller not enabled. */\n None = \"none\",\n /** Speller corrects individual query terms using a static lexicon for the language specified by the queryLanguage parameter. */\n Lexicon = \"lexicon\",\n}\n\n/**\n * Defines values for QuerySpellerType. \\\n * {@link KnownQuerySpellerType} can be used interchangeably with QuerySpellerType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **none**: Speller not enabled. \\\n * **lexicon**: Speller corrects individual query terms using a static lexicon for the language specified by the queryLanguage parameter.\n */\nexport type QuerySpellerType = string;\n\n/** Known values of {@link VectorQueryKind} that the service accepts. */\nexport enum KnownVectorQueryKind {\n /** Vector query where a raw vector value is provided. */\n Vector = \"vector\",\n /** Vector query where a text value that needs to be vectorized is provided. */\n Text = \"text\",\n /** Vector query where an url that represents an image value that needs to be vectorized is provided. */\n ImageUrl = \"imageUrl\",\n /** Vector query where a base 64 encoded binary of an image that needs to be vectorized is provided. */\n ImageBinary = \"imageBinary\",\n}\n\n/**\n * Defines values for VectorQueryKind. \\\n * {@link KnownVectorQueryKind} can be used interchangeably with VectorQueryKind,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **vector**: Vector query where a raw vector value is provided. \\\n * **text**: Vector query where a text value that needs to be vectorized is provided. \\\n * **imageUrl**: Vector query where an url that represents an image value that needs to be vectorized is provided. \\\n * **imageBinary**: Vector query where a base 64 encoded binary of an image that needs to be vectorized is provided.\n */\nexport type VectorQueryKind = string;\n\n/** Known values of {@link VectorThresholdKind} that the service accepts. */\nexport enum KnownVectorThresholdKind {\n /** The results of the vector query will be filtered based on the vector similarity metric. Note this is the canonical definition of similarity metric, not the 'distance' version. The threshold direction (larger or smaller) will be chosen automatically according to the metric used by the field. */\n VectorSimilarity = \"vectorSimilarity\",\n /** The results of the vector query will filter based on the '@search.score' value. Note this is the @search.score returned as part of the search response. The threshold direction will be chosen for higher @search.score. */\n SearchScore = \"searchScore\",\n}\n\n/**\n * Defines values for VectorThresholdKind. \\\n * {@link KnownVectorThresholdKind} can be used interchangeably with VectorThresholdKind,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **vectorSimilarity**: The results of the vector query will be filtered based on the vector similarity metric. Note this is the canonical definition of similarity metric, not the 'distance' version. The threshold direction (larger or smaller) will be chosen automatically according to the metric used by the field. \\\n * **searchScore**: The results of the vector query will filter based on the '@search.score' value. Note this is the @search.score returned as part of the search response. The threshold direction will be chosen for higher @search.score.\n */\nexport type VectorThresholdKind = string;\n\n/** Known values of {@link VectorFilterMode} that the service accepts. */\nexport enum KnownVectorFilterMode {\n /** The filter will be applied after the candidate set of vector results is returned. Depending on the filter selectivity, this can result in fewer results than requested by the parameter 'k'. */\n PostFilter = \"postFilter\",\n /** The filter will be applied before the search query. */\n PreFilter = \"preFilter\",\n}\n\n/**\n * Defines values for VectorFilterMode. \\\n * {@link KnownVectorFilterMode} can be used interchangeably with VectorFilterMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **postFilter**: The filter will be applied after the candidate set of vector results is returned. Depending on the filter selectivity, this can result in fewer results than requested by the parameter 'k'. \\\n * **preFilter**: The filter will be applied before the search query.\n */\nexport type VectorFilterMode = string;\n\n/** Known values of {@link HybridCountAndFacetMode} that the service accepts. */\nexport enum KnownHybridCountAndFacetMode {\n /** Only include documents that were matched within the 'maxTextRecallSize' retrieval window when computing 'count' and 'facets'. */\n CountRetrievableResults = \"countRetrievableResults\",\n /** Include all documents that were matched by the search query when computing 'count' and 'facets', regardless of whether or not those documents are within the 'maxTextRecallSize' retrieval window. */\n CountAllResults = \"countAllResults\",\n}\n\n/**\n * Defines values for HybridCountAndFacetMode. \\\n * {@link KnownHybridCountAndFacetMode} can be used interchangeably with HybridCountAndFacetMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **countRetrievableResults**: Only include documents that were matched within the 'maxTextRecallSize' retrieval window when computing 'count' and 'facets'. \\\n * **countAllResults**: Include all documents that were matched by the search query when computing 'count' and 'facets', regardless of whether or not those documents are within the 'maxTextRecallSize' retrieval window.\n */\nexport type HybridCountAndFacetMode = string;\n\n/** Known values of {@link SemanticFieldState} that the service accepts. */\nexport enum KnownSemanticFieldState {\n /** The field was fully used for semantic enrichment. */\n Used = \"used\",\n /** The field was not used for semantic enrichment. */\n Unused = \"unused\",\n /** The field was partially used for semantic enrichment. */\n Partial = \"partial\",\n}\n\n/**\n * Defines values for SemanticFieldState. \\\n * {@link KnownSemanticFieldState} can be used interchangeably with SemanticFieldState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **used**: The field was fully used for semantic enrichment. \\\n * **unused**: The field was not used for semantic enrichment. \\\n * **partial**: The field was partially used for semantic enrichment.\n */\nexport type SemanticFieldState = string;\n\n/** Known values of {@link SemanticErrorReason} that the service accepts. */\nexport enum KnownSemanticErrorReason {\n /** If `semanticMaxWaitInMilliseconds` was set and the semantic processing duration exceeded that value. Only the base results were returned. */\n MaxWaitExceeded = \"maxWaitExceeded\",\n /** The request was throttled. Only the base results were returned. */\n CapacityOverloaded = \"capacityOverloaded\",\n /** At least one step of the semantic process failed. */\n Transient = \"transient\",\n}\n\n/**\n * Defines values for SemanticErrorReason. \\\n * {@link KnownSemanticErrorReason} can be used interchangeably with SemanticErrorReason,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **maxWaitExceeded**: If `semanticMaxWaitInMilliseconds` was set and the semantic processing duration exceeded that value. Only the base results were returned. \\\n * **capacityOverloaded**: The request was throttled. Only the base results were returned. \\\n * **transient**: At least one step of the semantic process failed.\n */\nexport type SemanticErrorReason = string;\n\n/** Known values of {@link SemanticSearchResultsType} that the service accepts. */\nexport enum KnownSemanticSearchResultsType {\n /** Results without any semantic enrichment or reranking. */\n BaseResults = \"baseResults\",\n /** Results have been reranked with the reranker model and will include semantic captions. They will not include any answers, answers highlights or caption highlights. */\n RerankedResults = \"rerankedResults\",\n}\n\n/**\n * Defines values for SemanticSearchResultsType. \\\n * {@link KnownSemanticSearchResultsType} can be used interchangeably with SemanticSearchResultsType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **baseResults**: Results without any semantic enrichment or reranking. \\\n * **rerankedResults**: Results have been reranked with the reranker model and will include semantic captions. They will not include any answers, answers highlights or caption highlights.\n */\nexport type SemanticSearchResultsType = string;\n/** Defines values for QueryType. */\nexport type QueryType = \"simple\" | \"full\" | \"semantic\";\n/** Defines values for SearchMode. */\nexport type SearchMode = \"any\" | \"all\";\n/** Defines values for ScoringStatistics. */\nexport type ScoringStatistics = \"local\" | \"global\";\n/** Defines values for IndexActionType. */\nexport type IndexActionType = \"upload\" | \"merge\" | \"mergeOrUpload\" | \"delete\";\n/** Defines values for AutocompleteMode. */\nexport type AutocompleteMode = \"oneTerm\" | \"twoTerms\" | \"oneTermWithContext\";\n\n/** Optional parameters. */\nexport interface DocumentsCountOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the count operation. */\nexport type DocumentsCountResponse = {\n /** The parsed response body. */\n body: number;\n};\n\n/** Optional parameters. */\nexport interface DocumentsSearchGetOptionalParams\n extends coreClient.OperationOptions {\n /** Parameter group */\n searchOptions?: SearchOptions;\n /** A full-text search query expression; Use \"*\" or omit this parameter to match all documents. */\n searchText?: string;\n}\n\n/** Contains response data for the searchGet operation. */\nexport type DocumentsSearchGetResponse = SearchDocumentsResult;\n\n/** Optional parameters. */\nexport interface DocumentsSearchPostOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the searchPost operation. */\nexport type DocumentsSearchPostResponse = SearchDocumentsResult;\n\n/** Optional parameters. */\nexport interface DocumentsGetOptionalParams\n extends coreClient.OperationOptions {\n /** List of field names to retrieve for the document; Any field not retrieved will be missing from the returned document. */\n selectedFields?: string[];\n}\n\n/** Contains response data for the get operation. */\nexport type DocumentsGetResponse = { [propertyName: string]: any };\n\n/** Optional parameters. */\nexport interface DocumentsSuggestGetOptionalParams\n extends coreClient.OperationOptions {\n /** Parameter group */\n suggestOptions?: SuggestOptions;\n}\n\n/** Contains response data for the suggestGet operation. */\nexport type DocumentsSuggestGetResponse = SuggestDocumentsResult;\n\n/** Optional parameters. */\nexport interface DocumentsSuggestPostOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the suggestPost operation. */\nexport type DocumentsSuggestPostResponse = SuggestDocumentsResult;\n\n/** Optional parameters. */\nexport interface DocumentsIndexOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the index operation. */\nexport type DocumentsIndexResponse = IndexDocumentsResult;\n\n/** Optional parameters. */\nexport interface DocumentsAutocompleteGetOptionalParams\n extends coreClient.OperationOptions {\n /** Parameter group */\n autocompleteOptions?: AutocompleteOptions;\n}\n\n/** Contains response data for the autocompleteGet operation. */\nexport type DocumentsAutocompleteGetResponse = AutocompleteResult;\n\n/** Optional parameters. */\nexport interface DocumentsAutocompletePostOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the autocompletePost operation. */\nexport type DocumentsAutocompletePostResponse = AutocompleteResult;\n\n/** Optional parameters. */\nexport interface SearchClientOptionalParams\n extends coreHttpCompat.ExtendedServiceClientOptions {\n /** Overrides client endpoint. */\n endpoint?: string;\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\nimport * as coreHttpCompat from \"@azure/core-http-compat\";\n\nexport type SearchIndexerDataIdentityUnion =\n | SearchIndexerDataIdentity\n | SearchIndexerDataNoneIdentity\n | SearchIndexerDataUserAssignedIdentity;\nexport type DataChangeDetectionPolicyUnion =\n | DataChangeDetectionPolicy\n | HighWaterMarkChangeDetectionPolicy\n | SqlIntegratedChangeTrackingPolicy;\nexport type DataDeletionDetectionPolicyUnion =\n | DataDeletionDetectionPolicy\n | SoftDeleteColumnDeletionDetectionPolicy\n | NativeBlobSoftDeleteDeletionDetectionPolicy;\nexport type SearchIndexerSkillUnion =\n | SearchIndexerSkill\n | ConditionalSkill\n | KeyPhraseExtractionSkill\n | OcrSkill\n | ImageAnalysisSkill\n | LanguageDetectionSkill\n | ShaperSkill\n | MergeSkill\n | EntityRecognitionSkill\n | SentimentSkill\n | SentimentSkillV3\n | EntityLinkingSkill\n | EntityRecognitionSkillV3\n | PIIDetectionSkill\n | SplitSkill\n | CustomEntityLookupSkill\n | TextTranslationSkill\n | DocumentExtractionSkill\n | WebApiSkill\n | AzureMachineLearningSkill\n | AzureOpenAIEmbeddingSkill\n | VisionVectorizeSkill;\nexport type CognitiveServicesAccountUnion =\n | CognitiveServicesAccount\n | DefaultCognitiveServicesAccount\n | CognitiveServicesAccountKey;\nexport type ScoringFunctionUnion =\n | ScoringFunction\n | DistanceScoringFunction\n | FreshnessScoringFunction\n | MagnitudeScoringFunction\n | TagScoringFunction;\nexport type LexicalAnalyzerUnion =\n | LexicalAnalyzer\n | CustomAnalyzer\n | PatternAnalyzer\n | LuceneStandardAnalyzer\n | StopAnalyzer;\nexport type LexicalTokenizerUnion =\n | LexicalTokenizer\n | ClassicTokenizer\n | EdgeNGramTokenizer\n | KeywordTokenizer\n | KeywordTokenizerV2\n | MicrosoftLanguageTokenizer\n | MicrosoftLanguageStemmingTokenizer\n | NGramTokenizer\n | PathHierarchyTokenizerV2\n | PatternTokenizer\n | LuceneStandardTokenizer\n | LuceneStandardTokenizerV2\n | UaxUrlEmailTokenizer;\nexport type TokenFilterUnion =\n | TokenFilter\n | AsciiFoldingTokenFilter\n | CjkBigramTokenFilter\n | CommonGramTokenFilter\n | DictionaryDecompounderTokenFilter\n | EdgeNGramTokenFilter\n | EdgeNGramTokenFilterV2\n | ElisionTokenFilter\n | KeepTokenFilter\n | KeywordMarkerTokenFilter\n | LengthTokenFilter\n | LimitTokenFilter\n | NGramTokenFilter\n | NGramTokenFilterV2\n | PatternCaptureTokenFilter\n | PatternReplaceTokenFilter\n | PhoneticTokenFilter\n | ShingleTokenFilter\n | SnowballTokenFilter\n | StemmerTokenFilter\n | StemmerOverrideTokenFilter\n | StopwordsTokenFilter\n | SynonymTokenFilter\n | TruncateTokenFilter\n | UniqueTokenFilter\n | WordDelimiterTokenFilter;\nexport type CharFilterUnion =\n | CharFilter\n | MappingCharFilter\n | PatternReplaceCharFilter;\nexport type LexicalNormalizerUnion = LexicalNormalizer | CustomNormalizer;\nexport type SimilarityUnion = Similarity | ClassicSimilarity | BM25Similarity;\nexport type VectorSearchAlgorithmConfigurationUnion =\n | VectorSearchAlgorithmConfiguration\n | HnswAlgorithmConfiguration\n | ExhaustiveKnnAlgorithmConfiguration;\nexport type VectorSearchVectorizerUnion =\n | VectorSearchVectorizer\n | AzureOpenAIVectorizer\n | WebApiVectorizer\n | AIServicesVisionVectorizer\n | AMLVectorizer;\nexport type VectorSearchCompressionUnion =\n | VectorSearchCompression\n | ScalarQuantizationCompression\n | BinaryQuantizationCompression;\n\n/** Represents a datasource definition, which can be used to configure an indexer. */\nexport interface SearchIndexerDataSource {\n /** The name of the datasource. */\n name: string;\n /** The description of the datasource. */\n description?: string;\n /** The type of the datasource. */\n type: SearchIndexerDataSourceType;\n /** Credentials for the datasource. */\n credentials: DataSourceCredentials;\n /** The data container for the datasource. */\n container: SearchIndexerDataContainer;\n /** An explicit managed identity to use for this datasource. If not specified and the connection string is a managed identity, the system-assigned managed identity is used. If not specified, the value remains unchanged. If \"none\" is specified, the value of this property is cleared. */\n identity?: SearchIndexerDataIdentityUnion;\n /** The data change detection policy for the datasource. */\n dataChangeDetectionPolicy?: DataChangeDetectionPolicyUnion;\n /** The data deletion detection policy for the datasource. */\n dataDeletionDetectionPolicy?: DataDeletionDetectionPolicyUnion;\n /** The ETag of the data source. */\n etag?: string;\n /** A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your datasource definition when you want full assurance that no one, not even Microsoft, can decrypt your data source definition. Once you have encrypted your data source definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your datasource definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019. */\n encryptionKey?: SearchResourceEncryptionKey;\n}\n\n/** Represents credentials that can be used to connect to a datasource. */\nexport interface DataSourceCredentials {\n /** The connection string for the datasource. Set to `<unchanged>` (with brackets) if you don't want the connection string updated. Set to `<redacted>` if you want to remove the connection string value from the datasource. */\n connectionString?: string;\n}\n\n/** Represents information about the entity (such as Azure SQL table or CosmosDB collection) that will be indexed. */\nexport interface SearchIndexerDataContainer {\n /** The name of the table or view (for Azure SQL data source) or collection (for CosmosDB data source) that will be indexed. */\n name: string;\n /** A query that is applied to this data container. The syntax and meaning of this parameter is datasource-specific. Not supported by Azure SQL datasources. */\n query?: string;\n}\n\n/** Abstract base type for data identities. */\nexport interface SearchIndexerDataIdentity {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype:\n | \"#Microsoft.Azure.Search.DataNoneIdentity\"\n | \"#Microsoft.Azure.Search.DataUserAssignedIdentity\";\n}\n\n/** Base type for data change detection policies. */\nexport interface DataChangeDetectionPolicy {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype:\n | \"#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy\"\n | \"#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy\";\n}\n\n/** Base type for data deletion detection policies. */\nexport interface DataDeletionDetectionPolicy {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype:\n | \"#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy\"\n | \"#Microsoft.Azure.Search.NativeBlobSoftDeleteDeletionDetectionPolicy\";\n}\n\n/** A customer-managed encryption key in Azure Key Vault. Keys that you create and manage can be used to encrypt or decrypt data-at-rest, such as indexes and synonym maps. */\nexport interface SearchResourceEncryptionKey {\n /** The name of your Azure Key Vault key to be used to encrypt your data at rest. */\n keyName: string;\n /** The version of your Azure Key Vault key to be used to encrypt your data at rest. */\n keyVersion: string;\n /** The URI of your Azure Key Vault, also referred to as DNS name, that contains the key to be used to encrypt your data at rest. An example URI might be `https://my-keyvault-name.vault.azure.net`. */\n vaultUri: string;\n /** Optional Azure Active Directory credentials used for accessing your Azure Key Vault. Not required if using managed identity instead. */\n accessCredentials?: AzureActiveDirectoryApplicationCredentials;\n /** An explicit managed identity to use for this encryption key. If not specified and the access credentials property is null, the system-assigned managed identity is used. On update to the resource, if the explicit identity is unspecified, it remains unchanged. If \"none\" is specified, the value of this property is cleared. */\n identity?: SearchIndexerDataIdentityUnion;\n}\n\n/** Credentials of a registered application created for your search service, used for authenticated access to the encryption keys stored in Azure Key Vault. */\nexport interface AzureActiveDirectoryApplicationCredentials {\n /** An AAD Application ID that was granted the required access permissions to the Azure Key Vault that is to be used when encrypting your data at rest. The Application ID should not be confused with the Object ID for your AAD Application. */\n applicationId: string;\n /** The authentication key of the specified AAD application. */\n applicationSecret?: string;\n}\n\n/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */\nexport interface ErrorResponse {\n /** The error object. */\n error?: ErrorDetail;\n}\n\n/** The error detail. */\nexport interface ErrorDetail {\n /**\n * The error code.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly code?: string;\n /**\n * The error message.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly message?: string;\n /**\n * The error target.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly target?: string;\n /**\n * The error details.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly details?: ErrorDetail[];\n /**\n * The error additional info.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly additionalInfo?: ErrorAdditionalInfo[];\n}\n\n/** The resource management error additional info. */\nexport interface ErrorAdditionalInfo {\n /**\n * The additional info type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /**\n * The additional info.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly info?: Record<string, unknown>;\n}\n\n/** Response from a List Datasources request. If successful, it includes the full definitions of all datasources. */\nexport interface ListDataSourcesResult {\n /**\n * The datasources in the Search service.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly dataSources: SearchIndexerDataSource[];\n}\n\nexport interface DocumentKeysOrIds {\n /** document keys to be reset */\n documentKeys?: string[];\n /** datasource document identifiers to be reset */\n datasourceDocumentIds?: string[];\n}\n\n/** Represents an indexer. */\nexport interface SearchIndexer {\n /** The name of the indexer. */\n name: string;\n /** The description of the indexer. */\n description?: string;\n /** The name of the datasource from which this indexer reads data. */\n dataSourceName: string;\n /** The name of the skillset executing with this indexer. */\n skillsetName?: string;\n /** The name of the index to which this indexer writes data. */\n targetIndexName: string;\n /** The schedule for this indexer. */\n schedule?: IndexingSchedule;\n /** Parameters for indexer execution. */\n parameters?: IndexingParameters;\n /** Defines mappings between fields in the data source and corresponding target fields in the index. */\n fieldMappings?: FieldMapping[];\n /** Output field mappings are applied after enrichment and immediately before indexing. */\n outputFieldMappings?: FieldMapping[];\n /** A value indicating whether the indexer is disabled. Default is false. */\n isDisabled?: boolean;\n /** The ETag of the indexer. */\n etag?: string;\n /** A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your indexer definition (as well as indexer execution status) when you want full assurance that no one, not even Microsoft, can decrypt them. Once you have encrypted your indexer definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your indexer definition (and indexer execution status) will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019. */\n encryptionKey?: SearchResourceEncryptionKey;\n /** Adds caching to an enrichment pipeline to allow for incremental modification steps without having to rebuild the index every time. */\n cache?: SearchIndexerCache;\n}\n\n/** Represents a schedule for indexer execution. */\nexport interface IndexingSchedule {\n /** The interval of time between indexer executions. */\n interval: string;\n /** The time when an indexer should start running. */\n startTime?: Date;\n}\n\n/** Represents parameters for indexer execution. */\nexport interface IndexingParameters {\n /** The number of items that are read from the data source and indexed as a single batch in order to improve performance. The default depends on the data source type. */\n batchSize?: number;\n /** The maximum number of items that can fail indexing for indexer execution to still be considered successful. -1 means no limit. Default is 0. */\n maxFailedItems?: number;\n /** The maximum number of items in a single batch that can fail indexing for the batch to still be considered successful. -1 means no limit. Default is 0. */\n maxFailedItemsPerBatch?: number;\n /** A dictionary of indexer-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type. */\n configuration?: IndexingParametersConfiguration;\n}\n\n/** A dictionary of indexer-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type. */\nexport interface IndexingParametersConfiguration {\n /** Describes unknown properties. The value of an unknown property can be of \"any\" type. */\n [property: string]: any;\n /** Represents the parsing mode for indexing from an Azure blob data source. */\n parsingMode?: BlobIndexerParsingMode;\n /** Comma-delimited list of filename extensions to ignore when processing from Azure blob storage. For example, you could exclude \".png, .mp4\" to skip over those files during indexing. */\n excludedFileNameExtensions?: string;\n /** Comma-delimited list of filename extensions to select when processing from Azure blob storage. For example, you could focus indexing on specific application files \".docx, .pptx, .msg\" to specifically include those file types. */\n indexedFileNameExtensions?: string;\n /** For Azure blobs, set to false if you want to continue indexing when an unsupported content type is encountered, and you don't know all the content types (file extensions) in advance. */\n failOnUnsupportedContentType?: boolean;\n /** For Azure blobs, set to false if you want to continue indexing if a document fails indexing. */\n failOnUnprocessableDocument?: boolean;\n /** For Azure blobs, set this property to true to still index storage metadata for blob content that is too large to process. Oversized blobs are treated as errors by default. For limits on blob size, see https://learn.microsoft.com/azure/search/search-limits-quotas-capacity. */\n indexStorageMetadataOnlyForOversizedDocuments?: boolean;\n /** For CSV blobs, specifies a comma-delimited list of column headers, useful for mapping source fields to destination fields in an index. */\n delimitedTextHeaders?: string;\n /** For CSV blobs, specifies the end-of-line single-character delimiter for CSV files where each line starts a new document (for example, \"|\"). */\n delimitedTextDelimiter?: string;\n /** For CSV blobs, indicates that the first (non-blank) line of each blob contains headers. */\n firstLineContainsHeaders?: boolean;\n /** For JSON arrays, given a structured or semi-structured document, you can specify a path to the array using this property. */\n documentRoot?: string;\n /** Specifies the data to extract from Azure blob storage and tells the indexer which data to extract from image content when \"imageAction\" is set to a value other than \"none\". This applies to embedded image content in a .PDF or other application, or image files such as .jpg and .png, in Azure blobs. */\n dataToExtract?: BlobIndexerDataToExtract;\n /** Determines how to process embedded images and image files in Azure blob storage. Setting the \"imageAction\" configuration to any value other than \"none\" requires that a skillset also be attached to that indexer. */\n imageAction?: BlobIndexerImageAction;\n /** If true, will create a path //document//file_data that is an object representing the original file data downloaded from your blob data source. This allows you to pass the original file data to a custom skill for processing within the enrichment pipeline, or to the Document Extraction skill. */\n allowSkillsetToReadFileData?: boolean;\n /** Determines algorithm for text extraction from PDF files in Azure blob storage. */\n pdfTextRotationAlgorithm?: BlobIndexerPDFTextRotationAlgorithm;\n /** Specifies the environment in which the indexer should execute. */\n executionEnvironment?: IndexerExecutionEnvironment;\n /** Increases the timeout beyond the 5-minute default for Azure SQL database data sources, specified in the format \"hh:mm:ss\". */\n queryTimeout?: string;\n}\n\n/** Defines a mapping between a field in a data source and a target field in an index. */\nexport interface FieldMapping {\n /** The name of the field in the data source. */\n sourceFieldName: string;\n /** The name of the target field in the index. Same as the source field name by default. */\n targetFieldName?: string;\n /** A function to apply to each source field value before indexing. */\n mappingFunction?: FieldMappingFunction;\n}\n\n/** Represents a function that transforms a value from a data source before indexing. */\nexport interface FieldMappingFunction {\n /** The name of the field mapping function. */\n name: string;\n /** A dictionary of parameter name/value pairs to pass to the function. Each value must be of a primitive type. */\n parameters?: { [propertyName: string]: any };\n}\n\nexport interface SearchIndexerCache {\n /** The connection string to the storage account where the cache data will be persisted. */\n storageConnectionString?: string;\n /** Specifies whether incremental reprocessing is enabled. */\n enableReprocessing?: boolean;\n /** The user-assigned managed identity used for connections to the enrichment cache. If the connection string indicates an identity (ResourceId) and it's not specified, the system-assigned managed identity is used. On updates to the indexer, if the identity is unspecified, the value remains unchanged. If set to \"none\", the value of this property is cleared. */\n identity?: SearchIndexerDataIdentityUnion;\n}\n\n/** Response from a List Indexers request. If successful, it includes the full definitions of all indexers. */\nexport interface ListIndexersResult {\n /**\n * The indexers in the Search service.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly indexers: SearchIndexer[];\n}\n\n/** Represents the current status and execution history of an indexer. */\nexport interface SearchIndexerStatus {\n /**\n * Overall indexer status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly status: IndexerStatus;\n /**\n * The result of the most recent or an in-progress indexer execution.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly lastResult?: IndexerExecutionResult;\n /**\n * History of the recent indexer executions, sorted in reverse chronological order.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly executionHistory: IndexerExecutionResult[];\n /**\n * The execution limits for the indexer.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly limits: SearchIndexerLimits;\n}\n\n/** Represents the result of an individual indexer execution. */\nexport interface IndexerExecutionResult {\n /**\n * The outcome of this indexer execution.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly status: IndexerExecutionStatus;\n /**\n * The outcome of this indexer execution.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly statusDetail?: IndexerExecutionStatusDetail;\n /**\n * All of the state that defines and dictates the indexer's current execution.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly currentState?: IndexerState;\n /**\n * The error message indicating the top-level error, if any.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly errorMessage?: string;\n /**\n * The start time of this indexer execution.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly startTime?: Date;\n /**\n * The end time of this indexer execution, if the execution has already completed.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly endTime?: Date;\n /**\n * The item-level indexing errors.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly errors: SearchIndexerError[];\n /**\n * The item-level indexing warnings.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly warnings: SearchIndexerWarning[];\n /**\n * The number of items that were processed during this indexer execution. This includes both successfully processed items and items where indexing was attempted but failed.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly itemCount: number;\n /**\n * The number of items that failed to be indexed during this indexer execution.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly failedItemCount: number;\n /**\n * Change tracking state with which an indexer execution started.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly initialTrackingState?: string;\n /**\n * Change tracking state with which an indexer execution finished.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly finalTrackingState?: string;\n}\n\n/** Represents all of the state that defines and dictates the indexer's current execution. */\nexport interface IndexerState {\n /**\n * The mode the indexer is running in.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly mode?: IndexingMode;\n /**\n * Change tracking state used when indexing starts on all documents in the datasource.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly allDocumentsInitialChangeTrackingState?: string;\n /**\n * Change tracking state value when indexing finishes on all documents in the datasource.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly allDocumentsFinalChangeTrackingState?: string;\n /**\n * Change tracking state used when indexing starts on select, reset documents in the datasource.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resetDocumentsInitialChangeTrackingState?: string;\n /**\n * Change tracking state value when indexing finishes on select, reset documents in the datasource.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resetDocumentsFinalChangeTrackingState?: string;\n /**\n * The list of document keys that have been reset. The document key is the document's unique identifier for the data in the search index. The indexer will prioritize selectively re-ingesting these keys.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resetDocumentKeys?: string[];\n /**\n * The list of datasource document ids that have been reset. The datasource document id is the unique identifier for the data in the datasource. The indexer will prioritize selectively re-ingesting these ids.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resetDatasourceDocumentIds?: string[];\n}\n\n/** Represents an item- or document-level indexing error. */\nexport interface SearchIndexerError {\n /**\n * The key of the item for which indexing failed.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly key?: string;\n /**\n * The message describing the error that occurred while processing the item.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly errorMessage: string;\n /**\n * The status code indicating why the indexing operation failed. Possible values include: 400 for a malformed input document, 404 for document not found, 409 for a version conflict, 422 when the index is temporarily unavailable, or 503 for when the service is too busy.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly statusCode: number;\n /**\n * The name of the source at which the error originated. For example, this could refer to a particular skill in the attached skillset. This may not be always available.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * Additional, verbose details about the error to assist in debugging the indexer. This may not be always available.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly details?: string;\n /**\n * A link to a troubleshooting guide for these classes of errors. This may not be always available.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly documentationLink?: string;\n}\n\n/** Represents an item-level warning. */\nexport interface SearchIndexerWarning {\n /**\n * The key of the item which generated a warning.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly key?: string;\n /**\n * The message describing the warning that occurred while processing the item.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly message: string;\n /**\n * The name of the source at which the warning originated. For example, this could refer to a particular skill in the attached skillset. This may not be always available.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * Additional, verbose details about the warning to assist in debugging the indexer. This may not be always available.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly details?: string;\n /**\n * A link to a troubleshooting guide for these classes of warnings. This may not be always available.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly documentationLink?: string;\n}\n\nexport interface SearchIndexerLimits {\n /**\n * The maximum duration that the indexer is permitted to run for one execution.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly maxRunTime?: string;\n /**\n * The maximum size of a document, in bytes, which will be considered valid for indexing.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly maxDocumentExtractionSize?: number;\n /**\n * The maximum number of characters that will be extracted from a document picked up for indexing.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly maxDocumentContentCharactersToExtract?: number;\n}\n\n/** A list of skills. */\nexport interface SearchIndexerSkillset {\n /** The name of the skillset. */\n name: string;\n /** The description of the skillset. */\n description?: string;\n /** A list of skills in the skillset. */\n skills: SearchIndexerSkillUnion[];\n /** Details about the Azure AI service to be used when running skills. */\n cognitiveServicesAccount?: CognitiveServicesAccountUnion;\n /** Definition of additional projections to Azure blob, table, or files, of enriched data. */\n knowledgeStore?: SearchIndexerKnowledgeStore;\n /** Definition of additional projections to secondary search index(es). */\n indexProjection?: SearchIndexerIndexProjection;\n /** The ETag of the skillset. */\n etag?: string;\n /** A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your skillset definition when you want full assurance that no one, not even Microsoft, can decrypt your skillset definition. Once you have encrypted your skillset definition, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your skillset definition will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019. */\n encryptionKey?: SearchResourceEncryptionKey;\n}\n\n/** Base type for skills. */\nexport interface SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype:\n | \"#Microsoft.Skills.Util.ConditionalSkill\"\n | \"#Microsoft.Skills.Text.KeyPhraseExtractionSkill\"\n | \"#Microsoft.Skills.Vision.OcrSkill\"\n | \"#Microsoft.Skills.Vision.ImageAnalysisSkill\"\n | \"#Microsoft.Skills.Text.LanguageDetectionSkill\"\n | \"#Microsoft.Skills.Util.ShaperSkill\"\n | \"#Microsoft.Skills.Text.MergeSkill\"\n | \"#Microsoft.Skills.Text.EntityRecognitionSkill\"\n | \"#Microsoft.Skills.Text.SentimentSkill\"\n | \"#Microsoft.Skills.Text.V3.SentimentSkill\"\n | \"#Microsoft.Skills.Text.V3.EntityLinkingSkill\"\n | \"#Microsoft.Skills.Text.V3.EntityRecognitionSkill\"\n | \"#Microsoft.Skills.Text.PIIDetectionSkill\"\n | \"#Microsoft.Skills.Text.SplitSkill\"\n | \"#Microsoft.Skills.Text.CustomEntityLookupSkill\"\n | \"#Microsoft.Skills.Text.TranslationSkill\"\n | \"#Microsoft.Skills.Util.DocumentExtractionSkill\"\n | \"#Microsoft.Skills.Custom.WebApiSkill\"\n | \"#Microsoft.Skills.Custom.AmlSkill\"\n | \"#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill\"\n | \"#Microsoft.Skills.Vision.VectorizeSkill\";\n /** The name of the skill which uniquely identifies it within the skillset. A skill with no name defined will be given a default name of its 1-based index in the skills array, prefixed with the character '#'. */\n name?: string;\n /** The description of the skill which describes the inputs, outputs, and usage of the skill. */\n description?: string;\n /** Represents the level at which operations take place, such as the document root or document content (for example, /document or /document/content). The default is /document. */\n context?: string;\n /** Inputs of the skills could be a column in the source data set, or the output of an upstream skill. */\n inputs: InputFieldMappingEntry[];\n /** The output of a skill is either a field in a search index, or a value that can be consumed as an input by another skill. */\n outputs: OutputFieldMappingEntry[];\n}\n\n/** Input field mapping for a skill. */\nexport interface InputFieldMappingEntry {\n /** The name of the input. */\n name: string;\n /** The source of the input. */\n source?: string;\n /** The source context used for selecting recursive inputs. */\n sourceContext?: string;\n /** The recursive inputs used when creating a complex type. */\n inputs?: InputFieldMappingEntry[];\n}\n\n/** Output field mapping for a skill. */\nexport interface OutputFieldMappingEntry {\n /** The name of the output defined by the skill. */\n name: string;\n /** The target name of the output. It is optional and default to name. */\n targetName?: string;\n}\n\n/** Base type for describing any Azure AI service resource attached to a skillset. */\nexport interface CognitiveServicesAccount {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype:\n | \"#Microsoft.Azure.Search.DefaultCognitiveServices\"\n | \"#Microsoft.Azure.Search.CognitiveServicesByKey\";\n /** Description of the Azure AI service resource attached to a skillset. */\n description?: string;\n}\n\n/** Definition of additional projections to azure blob, table, or files, of enriched data. */\nexport interface SearchIndexerKnowledgeStore {\n /** The connection string to the storage account projections will be stored in. */\n storageConnectionString: string;\n /** A list of additional projections to perform during indexing. */\n projections: SearchIndexerKnowledgeStoreProjection[];\n /** The user-assigned managed identity used for connections to Azure Storage when writing knowledge store projections. If the connection string indicates an identity (ResourceId) and it's not specified, the system-assigned managed identity is used. On updates to the indexer, if the identity is unspecified, the value remains unchanged. If set to \"none\", the value of this property is cleared. */\n identity?: SearchIndexerDataIdentityUnion;\n /** A dictionary of knowledge store-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type. */\n parameters?: SearchIndexerKnowledgeStoreParameters;\n}\n\n/** Container object for various projection selectors. */\nexport interface SearchIndexerKnowledgeStoreProjection {\n /** Projections to Azure Table storage. */\n tables?: SearchIndexerKnowledgeStoreTableProjectionSelector[];\n /** Projections to Azure Blob storage. */\n objects?: SearchIndexerKnowledgeStoreObjectProjectionSelector[];\n /** Projections to Azure File storage. */\n files?: SearchIndexerKnowledgeStoreFileProjectionSelector[];\n}\n\n/** Abstract class to share properties between concrete selectors. */\nexport interface SearchIndexerKnowledgeStoreProjectionSelector {\n /** Name of reference key to different projection. */\n referenceKeyName?: string;\n /** Name of generated key to store projection under. */\n generatedKeyName?: string;\n /** Source data to project. */\n source?: string;\n /** Source context for complex projections. */\n sourceContext?: string;\n /** Nested inputs for complex projections. */\n inputs?: InputFieldMappingEntry[];\n}\n\n/** A dictionary of knowledge store-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type. */\nexport interface SearchIndexerKnowledgeStoreParameters {\n /** Describes unknown properties. The value of an unknown property can be of \"any\" type. */\n [property: string]: any;\n /** Whether or not projections should synthesize a generated key name if one isn't already present. */\n synthesizeGeneratedKeyName?: boolean;\n}\n\n/** Definition of additional projections to secondary search indexes. */\nexport interface SearchIndexerIndexProjection {\n /** A list of projections to be performed to secondary search indexes. */\n selectors: SearchIndexerIndexProjectionSelector[];\n /** A dictionary of index projection-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type. */\n parameters?: SearchIndexerIndexProjectionParameters;\n}\n\n/** Description for what data to store in the designated search index. */\nexport interface SearchIndexerIndexProjectionSelector {\n /** Name of the search index to project to. Must have a key field with the 'keyword' analyzer set. */\n targetIndexName: string;\n /** Name of the field in the search index to map the parent document's key value to. Must be a string field that is filterable and not the key field. */\n parentKeyFieldName: string;\n /** Source context for the projections. Represents the cardinality at which the document will be split into multiple sub documents. */\n sourceContext: string;\n /** Mappings for the projection, or which source should be mapped to which field in the target index. */\n mappings: InputFieldMappingEntry[];\n}\n\n/** A dictionary of index projection-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type. */\nexport interface SearchIndexerIndexProjectionParameters {\n /** Describes unknown properties. The value of an unknown property can be of \"any\" type. */\n [property: string]: any;\n /** Defines behavior of the index projections in relation to the rest of the indexer. */\n projectionMode?: IndexProjectionMode;\n}\n\n/** Response from a list skillset request. If successful, it includes the full definitions of all skillsets. */\nexport interface ListSkillsetsResult {\n /**\n * The skillsets defined in the Search service.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly skillsets: SearchIndexerSkillset[];\n}\n\nexport interface SkillNames {\n /** the names of skills to be reset. */\n skillNames?: string[];\n}\n\n/** Represents a synonym map definition. */\nexport interface SynonymMap {\n /** The name of the synonym map. */\n name: string;\n /** The format of the synonym map. Only the 'solr' format is currently supported. */\n format: \"solr\";\n /** A series of synonym rules in the specified synonym map format. The rules must be separated by newlines. */\n synonyms: string;\n /** A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your data when you want full assurance that no one, not even Microsoft, can decrypt your data. Once you have encrypted your data, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your data will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019. */\n encryptionKey?: SearchResourceEncryptionKey;\n /** The ETag of the synonym map. */\n etag?: string;\n}\n\n/** Response from a List SynonymMaps request. If successful, it includes the full definitions of all synonym maps. */\nexport interface ListSynonymMapsResult {\n /**\n * The synonym maps in the Search service.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly synonymMaps: SynonymMap[];\n}\n\n/** Represents a search index definition, which describes the fields and search behavior of an index. */\nexport interface SearchIndex {\n /** The name of the index. */\n name: string;\n /** The fields of the index. */\n fields: SearchField[];\n /** The scoring profiles for the index. */\n scoringProfiles?: ScoringProfile[];\n /** The name of the scoring profile to use if none is specified in the query. If this property is not set and no scoring profile is specified in the query, then default scoring (tf-idf) will be used. */\n defaultScoringProfile?: string;\n /** Options to control Cross-Origin Resource Sharing (CORS) for the index. */\n corsOptions?: CorsOptions;\n /** The suggesters for the index. */\n suggesters?: Suggester[];\n /** The analyzers for the index. */\n analyzers?: LexicalAnalyzerUnion[];\n /** The tokenizers for the index. */\n tokenizers?: LexicalTokenizerUnion[];\n /** The token filters for the index. */\n tokenFilters?: TokenFilterUnion[];\n /** The character filters for the index. */\n charFilters?: CharFilterUnion[];\n /** The normalizers for the index. */\n normalizers?: LexicalNormalizerUnion[];\n /** A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your data when you want full assurance that no one, not even Microsoft, can decrypt your data. Once you have encrypted your data, it will always remain encrypted. The search service will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your data will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019. */\n encryptionKey?: SearchResourceEncryptionKey;\n /** The type of similarity algorithm to be used when scoring and ranking the documents matching a search query. The similarity algorithm can only be defined at index creation time and cannot be modified on existing indexes. If null, the ClassicSimilarity algorithm is used. */\n similarity?: SimilarityUnion;\n /** Defines parameters for a search index that influence semantic capabilities. */\n semanticSearch?: SemanticSearch;\n /** Contains configuration options related to vector search. */\n vectorSearch?: VectorSearch;\n /** The ETag of the index. */\n etag?: string;\n}\n\n/** Represents a field in an index definition, which describes the name, data type, and search behavior of a field. */\nexport interface SearchField {\n /** The name of the field, which must be unique within the fields collection of the index or parent field. */\n name: string;\n /** The data type of the field. */\n type: SearchFieldDataType;\n /** A value indicating whether the field uniquely identifies documents in the index. Exactly one top-level field in each index must be chosen as the key field and it must be of type Edm.String. Key fields can be used to look up documents directly and update or delete specific documents. Default is false for simple fields and null for complex fields. */\n key?: boolean;\n /** A value indicating whether the field can be returned in a search result. You can disable this option if you want to use a field (for example, margin) as a filter, sorting, or scoring mechanism but do not want the field to be visible to the end user. This property must be true for key fields, and it must be null for complex fields. This property can be changed on existing fields. Enabling this property does not cause any increase in index storage requirements. Default is true for simple fields, false for vector fields, and null for complex fields. */\n retrievable?: boolean;\n /** An immutable value indicating whether the field will be persisted separately on disk to be returned in a search result. You can disable this option if you don't plan to return the field contents in a search response to save on storage overhead. This can only be set during index creation and only for vector fields. This property cannot be changed for existing fields or set as false for new fields. If this property is set as false, the property 'retrievable' must also be set to false. This property must be true or unset for key fields, for new fields, and for non-vector fields, and it must be null for complex fields. Disabling this property will reduce index storage requirements. The default is true for vector fields. */\n stored?: boolean;\n /** A value indicating whether the field is full-text searchable. This means it will undergo analysis such as word-breaking during indexing. If you set a searchable field to a value like \"sunny day\", internally it will be split into the individual tokens \"sunny\" and \"day\". This enables full-text searches for these terms. Fields of type Edm.String or Collection(Edm.String) are searchable by default. This property must be false for simple fields of other non-string data types, and it must be null for complex fields. Note: searchable fields consume extra space in your index to accommodate additional tokenized versions of the field value for full-text searches. If you want to save space in your index and you don't need a field to be included in searches, set searchable to false. */\n searchable?: boolean;\n /** A value indicating whether to enable the field to be referenced in $filter queries. filterable differs from searchable in how strings are handled. Fields of type Edm.String or Collection(Edm.String) that are filterable do not undergo word-breaking, so comparisons are for exact matches only. For example, if you set such a field f to \"sunny day\", $filter=f eq 'sunny' will find no matches, but $filter=f eq 'sunny day' will. This property must be null for complex fields. Default is true for simple fields and null for complex fields. */\n filterable?: boolean;\n /** A value indicating whether to enable the field to be referenced in $orderby expressions. By default, the search engine sorts results by score, but in many experiences users will want to sort by fields in the documents. A simple field can be sortable only if it is single-valued (it has a single value in the scope of the parent document). Simple collection fields cannot be sortable, since they are multi-valued. Simple sub-fields of complex collections are also multi-valued, and therefore cannot be sortable. This is true whether it's an immediate parent field, or an ancestor field, that's the complex collection. Complex fields cannot be sortable and the sortable property must be null for such fields. The default for sortable is true for single-valued simple fields, false for multi-valued simple fields, and null for complex fields. */\n sortable?: boolean;\n /** A value indicating whether to enable the field to be referenced in facet queries. Typically used in a presentation of search results that includes hit count by category (for example, search for digital cameras and see hits by brand, by megapixels, by price, and so on). This property must be null for complex fields. Fields of type Edm.GeographyPoint or Collection(Edm.GeographyPoint) cannot be facetable. Default is true for all other simple fields. */\n facetable?: boolean;\n /** The name of the analyzer to use for the field. This option can be used only with searchable fields and it can't be set together with either searchAnalyzer or indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields. */\n analyzer?: LexicalAnalyzerName;\n /** The name of the analyzer used at search time for the field. This option can be used only with searchable fields. It must be set together with indexAnalyzer and it cannot be set together with the analyzer option. This property cannot be set to the name of a language analyzer; use the analyzer property instead if you need a language analyzer. This analyzer can be updated on an existing field. Must be null for complex fields. */\n searchAnalyzer?: LexicalAnalyzerName;\n /** The name of the analyzer used at indexing time for the field. This option can be used only with searchable fields. It must be set together with searchAnalyzer and it cannot be set together with the analyzer option. This property cannot be set to the name of a language analyzer; use the analyzer property instead if you need a language analyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields. */\n indexAnalyzer?: LexicalAnalyzerName;\n /** The name of the normalizer to use for the field. This option can be used only with fields with filterable, sortable, or facetable enabled. Once the normalizer is chosen, it cannot be changed for the field. Must be null for complex fields. */\n normalizer?: LexicalNormalizerName;\n /** The dimensionality of the vector field. */\n vectorSearchDimensions?: number;\n /** The name of the vector search profile that specifies the algorithm and vectorizer to use when searching the vector field. */\n vectorSearchProfileName?: string;\n /** The encoding format to interpret the field contents. */\n vectorEncodingFormat?: VectorEncodingFormat;\n /** A list of the names of synonym maps to associate with this field. This option can be used only with searchable fields. Currently only one synonym map per field is supported. Assigning a synonym map to a field ensures that query terms targeting that field are expanded at query-time using the rules in the synonym map. This attribute can be changed on existing fields. Must be null or an empty collection for complex fields. */\n synonymMaps?: string[];\n /** A list of sub-fields if this is a field of type Edm.ComplexType or Collection(Edm.ComplexType). Must be null or empty for simple fields. */\n fields?: SearchField[];\n}\n\n/** Defines parameters for a search index that influence scoring in search queries. */\nexport interface ScoringProfile {\n /** The name of the scoring profile. */\n name: string;\n /** Parameters that boost scoring based on text matches in certain index fields. */\n textWeights?: TextWeights;\n /** The collection of functions that influence the scoring of documents. */\n functions?: ScoringFunctionUnion[];\n /** A value indicating how the results of individual scoring functions should be combined. Defaults to \"Sum\". Ignored if there are no scoring functions. */\n functionAggregation?: ScoringFunctionAggregation;\n}\n\n/** Defines weights on index fields for which matches should boost scoring in search queries. */\nexport interface TextWeights {\n /** The dictionary of per-field weights to boost document scoring. The keys are field names and the values are the weights for each field. */\n weights: { [propertyName: string]: number };\n}\n\n/** Base type for functions that can modify document scores during ranking. */\nexport interface ScoringFunction {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n type: \"distance\" | \"freshness\" | \"magnitude\" | \"tag\";\n /** The name of the field used as input to the scoring function. */\n fieldName: string;\n /** A multiplier for the raw score. Must be a positive number not equal to 1.0. */\n boost: number;\n /** A value indicating how boosting will be interpolated across document scores; defaults to \"Linear\". */\n interpolation?: ScoringFunctionInterpolation;\n}\n\n/** Defines options to control Cross-Origin Resource Sharing (CORS) for an index. */\nexport interface CorsOptions {\n /** The list of origins from which JavaScript code will be granted access to your index. Can contain a list of hosts of the form {protocol}://{fully-qualified-domain-name}[:{port#}], or a single '*' to allow all origins (not recommended). */\n allowedOrigins: string[];\n /** The duration for which browsers should cache CORS preflight responses. Defaults to 5 minutes. */\n maxAgeInSeconds?: number;\n}\n\n/** Defines how the Suggest API should apply to a group of fields in the index. */\nexport interface Suggester {\n /** The name of the suggester. */\n name: string;\n /** A value indicating the capabilities of the suggester. */\n searchMode: \"analyzingInfixMatching\";\n /** The list of field names to which the suggester applies. Each field must be searchable. */\n sourceFields: string[];\n}\n\n/** Base type for analyzers. */\nexport interface LexicalAnalyzer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype:\n | \"#Microsoft.Azure.Search.CustomAnalyzer\"\n | \"#Microsoft.Azure.Search.PatternAnalyzer\"\n | \"#Microsoft.Azure.Search.StandardAnalyzer\"\n | \"#Microsoft.Azure.Search.StopAnalyzer\";\n /** The name of the analyzer. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters. */\n name: string;\n}\n\n/** Base type for tokenizers. */\nexport interface LexicalTokenizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype:\n | \"#Microsoft.Azure.Search.ClassicTokenizer\"\n | \"#Microsoft.Azure.Search.EdgeNGramTokenizer\"\n | \"#Microsoft.Azure.Search.KeywordTokenizer\"\n | \"#Microsoft.Azure.Search.KeywordTokenizerV2\"\n | \"#Microsoft.Azure.Search.MicrosoftLanguageTokenizer\"\n | \"#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer\"\n | \"#Microsoft.Azure.Search.NGramTokenizer\"\n | \"#Microsoft.Azure.Search.PathHierarchyTokenizerV2\"\n | \"#Microsoft.Azure.Search.PatternTokenizer\"\n | \"#Microsoft.Azure.Search.StandardTokenizer\"\n | \"#Microsoft.Azure.Search.StandardTokenizerV2\"\n | \"#Microsoft.Azure.Search.UaxUrlEmailTokenizer\";\n /** The name of the tokenizer. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters. */\n name: string;\n}\n\n/** Base type for token filters. */\nexport interface TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype:\n | \"#Microsoft.Azure.Search.AsciiFoldingTokenFilter\"\n | \"#Microsoft.Azure.Search.CjkBigramTokenFilter\"\n | \"#Microsoft.Azure.Search.CommonGramTokenFilter\"\n | \"#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter\"\n | \"#Microsoft.Azure.Search.EdgeNGramTokenFilter\"\n | \"#Microsoft.Azure.Search.EdgeNGramTokenFilterV2\"\n | \"#Microsoft.Azure.Search.ElisionTokenFilter\"\n | \"#Microsoft.Azure.Search.KeepTokenFilter\"\n | \"#Microsoft.Azure.Search.KeywordMarkerTokenFilter\"\n | \"#Microsoft.Azure.Search.LengthTokenFilter\"\n | \"#Microsoft.Azure.Search.LimitTokenFilter\"\n | \"#Microsoft.Azure.Search.NGramTokenFilter\"\n | \"#Microsoft.Azure.Search.NGramTokenFilterV2\"\n | \"#Microsoft.Azure.Search.PatternCaptureTokenFilter\"\n | \"#Microsoft.Azure.Search.PatternReplaceTokenFilter\"\n | \"#Microsoft.Azure.Search.PhoneticTokenFilter\"\n | \"#Microsoft.Azure.Search.ShingleTokenFilter\"\n | \"#Microsoft.Azure.Search.SnowballTokenFilter\"\n | \"#Microsoft.Azure.Search.StemmerTokenFilter\"\n | \"#Microsoft.Azure.Search.StemmerOverrideTokenFilter\"\n | \"#Microsoft.Azure.Search.StopwordsTokenFilter\"\n | \"#Microsoft.Azure.Search.SynonymTokenFilter\"\n | \"#Microsoft.Azure.Search.TruncateTokenFilter\"\n | \"#Microsoft.Azure.Search.UniqueTokenFilter\"\n | \"#Microsoft.Azure.Search.WordDelimiterTokenFilter\";\n /** The name of the token filter. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters. */\n name: string;\n}\n\n/** Base type for character filters. */\nexport interface CharFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype:\n | \"#Microsoft.Azure.Search.MappingCharFilter\"\n | \"#Microsoft.Azure.Search.PatternReplaceCharFilter\";\n /** The name of the char filter. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters. */\n name: string;\n}\n\n/** Base type for normalizers. */\nexport interface LexicalNormalizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.CustomNormalizer\";\n /** The name of the normalizer. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters. It cannot end in '.microsoft' nor '.lucene', nor be named 'asciifolding', 'standard', 'lowercase', 'uppercase', or 'elision'. */\n name: string;\n}\n\n/** Base type for similarity algorithms. Similarity algorithms are used to calculate scores that tie queries to documents. The higher the score, the more relevant the document is to that specific query. Those scores are used to rank the search results. */\nexport interface Similarity {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype:\n | \"#Microsoft.Azure.Search.ClassicSimilarity\"\n | \"#Microsoft.Azure.Search.BM25Similarity\";\n}\n\n/** Defines parameters for a search index that influence semantic capabilities. */\nexport interface SemanticSearch {\n /** Allows you to set the name of a default semantic configuration in your index, making it optional to pass it on as a query parameter every time. */\n defaultConfigurationName?: string;\n /** The semantic configurations for the index. */\n configurations?: SemanticConfiguration[];\n}\n\n/** Defines a specific configuration to be used in the context of semantic capabilities. */\nexport interface SemanticConfiguration {\n /** The name of the semantic configuration. */\n name: string;\n /** Describes the title, content, and keyword fields to be used for semantic ranking, captions, highlights, and answers. At least one of the three sub properties (titleField, prioritizedKeywordsFields and prioritizedContentFields) need to be set. */\n prioritizedFields: SemanticPrioritizedFields;\n}\n\n/** Describes the title, content, and keywords fields to be used for semantic ranking, captions, highlights, and answers. */\nexport interface SemanticPrioritizedFields {\n /** Defines the title field to be used for semantic ranking, captions, highlights, and answers. If you don't have a title field in your index, leave this blank. */\n titleField?: SemanticField;\n /** Defines the content fields to be used for semantic ranking, captions, highlights, and answers. For the best result, the selected fields should contain text in natural language form. The order of the fields in the array represents their priority. Fields with lower priority may get truncated if the content is long. */\n contentFields?: SemanticField[];\n /** Defines the keyword fields to be used for semantic ranking, captions, highlights, and answers. For the best result, the selected fields should contain a list of keywords. The order of the fields in the array represents their priority. Fields with lower priority may get truncated if the content is long. */\n keywordsFields?: SemanticField[];\n}\n\n/** A field that is used as part of the semantic configuration. */\nexport interface SemanticField {\n name: string;\n}\n\n/** Contains configuration options related to vector search. */\nexport interface VectorSearch {\n /** Defines combinations of configurations to use with vector search. */\n profiles?: VectorSearchProfile[];\n /** Contains configuration options specific to the algorithm used during indexing or querying. */\n algorithms?: VectorSearchAlgorithmConfigurationUnion[];\n /** Contains configuration options on how to vectorize text vector queries. */\n vectorizers?: VectorSearchVectorizerUnion[];\n /** Contains configuration options specific to the compression method used during indexing or querying. */\n compressions?: VectorSearchCompressionUnion[];\n}\n\n/** Defines a combination of configurations to use with vector search. */\nexport interface VectorSearchProfile {\n /** The name to associate with this particular vector search profile. */\n name: string;\n /** The name of the vector search algorithm configuration that specifies the algorithm and optional parameters. */\n algorithmConfigurationName: string;\n /** The name of the vectorization being configured for use with vector search. */\n vectorizerName?: string;\n /** The name of the compression method configuration that specifies the compression method and optional parameters. */\n compressionName?: string;\n}\n\n/** Contains configuration options specific to the algorithm used during indexing or querying. */\nexport interface VectorSearchAlgorithmConfiguration {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"hnsw\" | \"exhaustiveKnn\";\n /** The name to associate with this particular configuration. */\n name: string;\n}\n\n/** Specifies the vectorization method to be used during query time. */\nexport interface VectorSearchVectorizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"azureOpenAI\" | \"customWebApi\" | \"aiServicesVision\" | \"aml\";\n /** The name to associate with this particular vectorization method. */\n vectorizerName: string;\n}\n\n/** Contains configuration options specific to the compression method used during indexing or querying. */\nexport interface VectorSearchCompression {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"scalarQuantization\" | \"binaryQuantization\";\n /** The name to associate with this particular configuration. */\n compressionName: string;\n /** If set to true, once the ordered set of results calculated using compressed vectors are obtained, they will be reranked again by recalculating the full-precision similarity scores. This will improve recall at the expense of latency. */\n rerankWithOriginalVectors?: boolean;\n /** Default oversampling factor. Oversampling will internally request more documents (specified by this multiplier) in the initial search. This increases the set of results that will be reranked using recomputed similarity scores from full-precision vectors. Minimum value is 1, meaning no oversampling (1x). This parameter can only be set when rerankWithOriginalVectors is true. Higher values improve recall at the expense of latency. */\n defaultOversampling?: number;\n /** The number of dimensions to truncate the vectors to. Truncating the vectors reduces the size of the vectors and the amount of data that needs to be transferred during search. This can save storage cost and improve search performance at the expense of recall. It should be only used for embeddings trained with Matryoshka Representation Learning (MRL) such as OpenAI text-embedding-3-large (small). The default value is null, which means no truncation. */\n truncationDimension?: number;\n}\n\n/** Response from a List Indexes request. If successful, it includes the full definitions of all indexes. */\nexport interface ListIndexesResult {\n /**\n * The indexes in the Search service.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly indexes: SearchIndex[];\n}\n\n/** Statistics for a given index. Statistics are collected periodically and are not guaranteed to always be up-to-date. */\nexport interface GetIndexStatisticsResult {\n /**\n * The number of documents in the index.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly documentCount: number;\n /**\n * The amount of storage in bytes consumed by the index.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly storageSize: number;\n /**\n * The amount of memory in bytes consumed by vectors in the index.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly vectorIndexSize: number;\n}\n\n/** Specifies some text and analysis components used to break that text into tokens. */\nexport interface AnalyzeRequest {\n /** The text to break into tokens. */\n text: string;\n /** The name of the analyzer to use to break the given text. If this parameter is not specified, you must specify a tokenizer instead. The tokenizer and analyzer parameters are mutually exclusive. KnownAnalyzerNames is an enum containing known values. */\n analyzer?: string;\n /** The name of the tokenizer to use to break the given text. If this parameter is not specified, you must specify an analyzer instead. The tokenizer and analyzer parameters are mutually exclusive. KnownTokenizerNames is an enum containing known values. */\n tokenizer?: string;\n /** The name of the normalizer to use to normalize the given text. */\n normalizer?: LexicalNormalizerName;\n /** An optional list of token filters to use when breaking the given text. This parameter can only be set when using the tokenizer parameter. */\n tokenFilters?: string[];\n /** An optional list of character filters to use when breaking the given text. This parameter can only be set when using the tokenizer parameter. */\n charFilters?: string[];\n}\n\n/** The result of testing an analyzer on text. */\nexport interface AnalyzeResult {\n /** The list of tokens returned by the analyzer specified in the request. */\n tokens: AnalyzedTokenInfo[];\n}\n\n/** Information about a token returned by an analyzer. */\nexport interface AnalyzedTokenInfo {\n /**\n * The token returned by the analyzer.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly token: string;\n /**\n * The index of the first character of the token in the input text.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly startOffset: number;\n /**\n * The index of the last character of the token in the input text.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly endOffset: number;\n /**\n * The position of the token in the input text relative to other tokens. The first token in the input text has position 0, the next has position 1, and so on. Depending on the analyzer used, some tokens might have the same position, for example if they are synonyms of each other.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly position: number;\n}\n\n/** Represents an index alias, which describes a mapping from the alias name to an index. The alias name can be used in place of the index name for supported operations. */\nexport interface SearchAlias {\n /** The name of the alias. */\n name: string;\n /** The name of the index this alias maps to. Only one index name may be specified. */\n indexes: string[];\n /** The ETag of the alias. */\n etag?: string;\n}\n\n/** Response from a List Aliases request. If successful, it includes the associated index mappings for all aliases. */\nexport interface ListAliasesResult {\n /**\n * The aliases in the Search service.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly aliases: SearchAlias[];\n}\n\n/** Response from a get service statistics request. If successful, it includes service level counters and limits. */\nexport interface ServiceStatistics {\n /** Service level resource counters. */\n counters: ServiceCounters;\n /** Service level general limits. */\n limits: ServiceLimits;\n}\n\n/** Represents service-level resource counters and quotas. */\nexport interface ServiceCounters {\n /** Total number of aliases. */\n aliasCounter: ResourceCounter;\n /** Total number of documents across all indexes in the service. */\n documentCounter: ResourceCounter;\n /** Total number of indexes. */\n indexCounter: ResourceCounter;\n /** Total number of indexers. */\n indexerCounter: ResourceCounter;\n /** Total number of data sources. */\n dataSourceCounter: ResourceCounter;\n /** Total size of used storage in bytes. */\n storageSizeCounter: ResourceCounter;\n /** Total number of synonym maps. */\n synonymMapCounter: ResourceCounter;\n /** Total number of skillsets. */\n skillsetCounter: ResourceCounter;\n /** Total memory consumption of all vector indexes within the service, in bytes. */\n vectorIndexSizeCounter: ResourceCounter;\n}\n\n/** Represents a resource's usage and quota. */\nexport interface ResourceCounter {\n /** The resource usage amount. */\n usage: number;\n /** The resource amount quota. */\n quota?: number;\n}\n\n/** Represents various service level limits. */\nexport interface ServiceLimits {\n /** The maximum allowed fields per index. */\n maxFieldsPerIndex?: number;\n /** The maximum depth which you can nest sub-fields in an index, including the top-level complex field. For example, a/b/c has a nesting depth of 3. */\n maxFieldNestingDepthPerIndex?: number;\n /** The maximum number of fields of type Collection(Edm.ComplexType) allowed in an index. */\n maxComplexCollectionFieldsPerIndex?: number;\n /** The maximum number of objects in complex collections allowed per document. */\n maxComplexObjectsInCollectionsPerDocument?: number;\n /** The maximum amount of storage in bytes allowed per index. */\n maxStoragePerIndexInBytes?: number;\n}\n\n/** Contains the parameters specific to the HNSW algorithm. */\nexport interface HnswParameters {\n /** The number of bi-directional links created for every new element during construction. Increasing this parameter value may improve recall and reduce retrieval times for datasets with high intrinsic dimensionality at the expense of increased memory consumption and longer indexing time. */\n m?: number;\n /** The size of the dynamic list containing the nearest neighbors, which is used during index time. Increasing this parameter may improve index quality, at the expense of increased indexing time. At a certain point, increasing this parameter leads to diminishing returns. */\n efConstruction?: number;\n /** The size of the dynamic list containing the nearest neighbors, which is used during search time. Increasing this parameter may improve search results, at the expense of slower search. At a certain point, increasing this parameter leads to diminishing returns. */\n efSearch?: number;\n /** The similarity metric to use for vector comparisons. */\n metric?: VectorSearchAlgorithmMetric;\n}\n\n/** Contains the parameters specific to exhaustive KNN algorithm. */\nexport interface ExhaustiveKnnParameters {\n /** The similarity metric to use for vector comparisons. */\n metric?: VectorSearchAlgorithmMetric;\n}\n\n/** Contains the parameters specific to Scalar Quantization. */\nexport interface ScalarQuantizationParameters {\n /** The quantized data type of compressed vector values. */\n quantizedDataType?: VectorSearchCompressionTarget;\n}\n\n/** Specifies the parameters for connecting to the Azure OpenAI resource. */\nexport interface AzureOpenAIParameters {\n /** The resource URI of the Azure OpenAI resource. */\n resourceUrl?: string;\n /** ID of the Azure OpenAI model deployment on the designated resource. */\n deploymentId?: string;\n /** API key of the designated Azure OpenAI resource. */\n apiKey?: string;\n /** The user-assigned managed identity used for outbound connections. */\n authIdentity?: SearchIndexerDataIdentityUnion;\n /** The name of the embedding model that is deployed at the provided deploymentId path. */\n modelName?: AzureOpenAIModelName;\n}\n\n/** Specifies the properties for connecting to a user-defined vectorizer. */\nexport interface WebApiParameters {\n /** The URI of the Web API providing the vectorizer. */\n uri?: string;\n /** The headers required to make the HTTP request. */\n httpHeaders?: { [propertyName: string]: string };\n /** The method for the HTTP request. */\n httpMethod?: string;\n /** The desired timeout for the request. Default is 30 seconds. */\n timeout?: string;\n /** Applies to custom endpoints that connect to external code in an Azure function or some other application that provides the transformations. This value should be the application ID created for the function or app when it was registered with Azure Active Directory. When specified, the vectorization connects to the function or app using a managed ID (either system or user-assigned) of the search service and the access token of the function or app, using this value as the resource id for creating the scope of the access token. */\n authResourceId?: string;\n /** The user-assigned managed identity used for outbound connections. If an authResourceId is provided and it's not specified, the system-assigned managed identity is used. On updates to the indexer, if the identity is unspecified, the value remains unchanged. If set to \"none\", the value of this property is cleared. */\n authIdentity?: SearchIndexerDataIdentityUnion;\n}\n\n/** Specifies the AI Services Vision parameters for vectorizing a query image or text. */\nexport interface AIServicesVisionParameters {\n /** The version of the model to use when calling the AI Services Vision service. It will default to the latest available when not specified. */\n modelVersion: string | null;\n /** The resource URI of the AI Services resource. */\n resourceUri: string;\n /** API key of the designated AI Services resource. */\n apiKey?: string;\n /** The user-assigned managed identity used for outbound connections. If an authResourceId is provided and it's not specified, the system-assigned managed identity is used. On updates to the index, if the identity is unspecified, the value remains unchanged. If set to \"none\", the value of this property is cleared. */\n authIdentity?: SearchIndexerDataIdentityUnion;\n}\n\n/** Specifies the properties for connecting to an AML vectorizer. */\nexport interface AMLParameters {\n /** (Required for no authentication or key authentication) The scoring URI of the AML service to which the JSON payload will be sent. Only the https URI scheme is allowed. */\n scoringUri: string | null;\n /** (Required for key authentication) The key for the AML service. */\n authenticationKey?: string;\n /** (Required for token authentication). The Azure Resource Manager resource ID of the AML service. It should be in the format subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.MachineLearningServices/workspaces/{workspace-name}/services/{service_name}. */\n resourceId?: string;\n /** (Optional) When specified, indicates the timeout for the http client making the API call. */\n timeout?: string;\n /** (Optional for token authentication). The region the AML service is deployed in. */\n region?: string;\n /** The name of the embedding model from the Azure AI Studio Catalog that is deployed at the provided endpoint. */\n modelName?: AIStudioModelCatalogName;\n}\n\n/** Provides parameter values to a distance scoring function. */\nexport interface DistanceScoringParameters {\n /** The name of the parameter passed in search queries to specify the reference location. */\n referencePointParameter: string;\n /** The distance in kilometers from the reference location where the boosting range ends. */\n boostingDistance: number;\n}\n\n/** Provides parameter values to a freshness scoring function. */\nexport interface FreshnessScoringParameters {\n /** The expiration period after which boosting will stop for a particular document. */\n boostingDuration: string;\n}\n\n/** Provides parameter values to a magnitude scoring function. */\nexport interface MagnitudeScoringParameters {\n /** The field value at which boosting starts. */\n boostingRangeStart: number;\n /** The field value at which boosting ends. */\n boostingRangeEnd: number;\n /** A value indicating whether to apply a constant boost for field values beyond the range end value; default is false. */\n shouldBoostBeyondRangeByConstant?: boolean;\n}\n\n/** Provides parameter values to a tag scoring function. */\nexport interface TagScoringParameters {\n /** The name of the parameter passed in search queries to specify the list of tags to compare against the target field. */\n tagsParameter: string;\n}\n\n/** An object that contains information about the matches that were found, and related metadata. */\nexport interface CustomEntity {\n /** The top-level entity descriptor. Matches in the skill output will be grouped by this name, and it should represent the \"normalized\" form of the text being found. */\n name: string;\n /** This field can be used as a passthrough for custom metadata about the matched text(s). The value of this field will appear with every match of its entity in the skill output. */\n description?: string;\n /** This field can be used as a passthrough for custom metadata about the matched text(s). The value of this field will appear with every match of its entity in the skill output. */\n type?: string;\n /** This field can be used as a passthrough for custom metadata about the matched text(s). The value of this field will appear with every match of its entity in the skill output. */\n subtype?: string;\n /** This field can be used as a passthrough for custom metadata about the matched text(s). The value of this field will appear with every match of its entity in the skill output. */\n id?: string;\n /** Defaults to false. Boolean value denoting whether comparisons with the entity name should be sensitive to character casing. Sample case insensitive matches of \"Microsoft\" could be: microsoft, microSoft, MICROSOFT. */\n caseSensitive?: boolean;\n /** Defaults to false. Boolean value denoting whether comparisons with the entity name should be sensitive to accent. */\n accentSensitive?: boolean;\n /** Defaults to 0. Maximum value of 5. Denotes the acceptable number of divergent characters that would still constitute a match with the entity name. The smallest possible fuzziness for any given match is returned. For instance, if the edit distance is set to 3, \"Windows10\" would still match \"Windows\", \"Windows10\" and \"Windows 7\". When case sensitivity is set to false, case differences do NOT count towards fuzziness tolerance, but otherwise do. */\n fuzzyEditDistance?: number;\n /** Changes the default case sensitivity value for this entity. It be used to change the default value of all aliases caseSensitive values. */\n defaultCaseSensitive?: boolean;\n /** Changes the default accent sensitivity value for this entity. It be used to change the default value of all aliases accentSensitive values. */\n defaultAccentSensitive?: boolean;\n /** Changes the default fuzzy edit distance value for this entity. It can be used to change the default value of all aliases fuzzyEditDistance values. */\n defaultFuzzyEditDistance?: number;\n /** An array of complex objects that can be used to specify alternative spellings or synonyms to the root entity name. */\n aliases?: CustomEntityAlias[];\n}\n\n/** A complex object that can be used to specify alternative spellings or synonyms to the root entity name. */\nexport interface CustomEntityAlias {\n /** The text of the alias. */\n text: string;\n /** Determine if the alias is case sensitive. */\n caseSensitive?: boolean;\n /** Determine if the alias is accent sensitive. */\n accentSensitive?: boolean;\n /** Determine the fuzzy edit distance of the alias. */\n fuzzyEditDistance?: number;\n}\n\nexport interface AzureOpenAITokenizerParameters {\n /** Only applies if the unit is set to azureOpenAITokens. Options include 'R50k_base', 'P50k_base', 'P50k_edit' and 'CL100k_base'. The default value is 'CL100k_base'. */\n encoderModelName?: SplitSkillEncoderModelName;\n /** (Optional) Only applies if the unit is set to azureOpenAITokens. This parameter defines a collection of special tokens that are permitted within the tokenization process. */\n allowedSpecialTokens?: string[];\n}\n\n/** Clears the identity property of a datasource. */\nexport interface SearchIndexerDataNoneIdentity\n extends SearchIndexerDataIdentity {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.DataNoneIdentity\";\n}\n\n/** Specifies the identity for a datasource to use. */\nexport interface SearchIndexerDataUserAssignedIdentity\n extends SearchIndexerDataIdentity {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.DataUserAssignedIdentity\";\n /** The fully qualified Azure resource Id of a user assigned managed identity typically in the form \"/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId\" that should have been assigned to the search service. */\n resourceId: string;\n}\n\n/** Defines a data change detection policy that captures changes based on the value of a high water mark column. */\nexport interface HighWaterMarkChangeDetectionPolicy\n extends DataChangeDetectionPolicy {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy\";\n /** The name of the high water mark column. */\n highWaterMarkColumnName: string;\n}\n\n/** Defines a data change detection policy that captures changes using the Integrated Change Tracking feature of Azure SQL Database. */\nexport interface SqlIntegratedChangeTrackingPolicy\n extends DataChangeDetectionPolicy {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy\";\n}\n\n/** Defines a data deletion detection policy that implements a soft-deletion strategy. It determines whether an item should be deleted based on the value of a designated 'soft delete' column. */\nexport interface SoftDeleteColumnDeletionDetectionPolicy\n extends DataDeletionDetectionPolicy {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy\";\n /** The name of the column to use for soft-deletion detection. */\n softDeleteColumnName?: string;\n /** The marker value that identifies an item as deleted. */\n softDeleteMarkerValue?: string;\n}\n\n/** Defines a data deletion detection policy utilizing Azure Blob Storage's native soft delete feature for deletion detection. */\nexport interface NativeBlobSoftDeleteDeletionDetectionPolicy\n extends DataDeletionDetectionPolicy {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.NativeBlobSoftDeleteDeletionDetectionPolicy\";\n}\n\n/** A skill that enables scenarios that require a Boolean operation to determine the data to assign to an output. */\nexport interface ConditionalSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Util.ConditionalSkill\";\n}\n\n/** A skill that uses text analytics for key phrase extraction. */\nexport interface KeyPhraseExtractionSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.KeyPhraseExtractionSkill\";\n /** A value indicating which language code to use. Default is `en`. */\n defaultLanguageCode?: KeyPhraseExtractionSkillLanguage;\n /** A number indicating how many key phrases to return. If absent, all identified key phrases will be returned. */\n maxKeyPhraseCount?: number;\n /** The version of the model to use when calling the Text Analytics service. It will default to the latest available when not specified. We recommend you do not specify this value unless absolutely necessary. */\n modelVersion?: string;\n}\n\n/** A skill that extracts text from image files. */\nexport interface OcrSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Vision.OcrSkill\";\n /** A value indicating which language code to use. Default is `en`. */\n defaultLanguageCode?: OcrSkillLanguage;\n /** A value indicating to turn orientation detection on or not. Default is false. */\n shouldDetectOrientation?: boolean;\n /** Defines the sequence of characters to use between the lines of text recognized by the OCR skill. The default value is \"space\". */\n lineEnding?: OcrLineEnding;\n}\n\n/** A skill that analyzes image files. It extracts a rich set of visual features based on the image content. */\nexport interface ImageAnalysisSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Vision.ImageAnalysisSkill\";\n /** A value indicating which language code to use. Default is `en`. */\n defaultLanguageCode?: ImageAnalysisSkillLanguage;\n /** A list of visual features. */\n visualFeatures?: VisualFeature[];\n /** A string indicating which domain-specific details to return. */\n details?: ImageDetail[];\n}\n\n/** A skill that detects the language of input text and reports a single language code for every document submitted on the request. The language code is paired with a score indicating the confidence of the analysis. */\nexport interface LanguageDetectionSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.LanguageDetectionSkill\";\n /** A country code to use as a hint to the language detection model if it cannot disambiguate the language. */\n defaultCountryHint?: string;\n /** The version of the model to use when calling the Text Analytics service. It will default to the latest available when not specified. We recommend you do not specify this value unless absolutely necessary. */\n modelVersion?: string;\n}\n\n/** A skill for reshaping the outputs. It creates a complex type to support composite fields (also known as multipart fields). */\nexport interface ShaperSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Util.ShaperSkill\";\n}\n\n/** A skill for merging two or more strings into a single unified string, with an optional user-defined delimiter separating each component part. */\nexport interface MergeSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.MergeSkill\";\n /** The tag indicates the start of the merged text. By default, the tag is an empty space. */\n insertPreTag?: string;\n /** The tag indicates the end of the merged text. By default, the tag is an empty space. */\n insertPostTag?: string;\n}\n\n/**\n * This skill is deprecated. Use the V3.EntityRecognitionSkill instead.\n *\n * @deprecated\n */\nexport interface EntityRecognitionSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.EntityRecognitionSkill\";\n /** A list of entity categories that should be extracted. */\n categories?: EntityCategory[];\n /** A value indicating which language code to use. Default is `en`. */\n defaultLanguageCode?: EntityRecognitionSkillLanguage;\n /** Determines whether or not to include entities which are well known but don't conform to a pre-defined type. If this configuration is not set (default), set to null or set to false, entities which don't conform to one of the pre-defined types will not be surfaced. */\n includeTypelessEntities?: boolean;\n /** A value between 0 and 1 that be used to only include entities whose confidence score is greater than the value specified. If not set (default), or if explicitly set to null, all entities will be included. */\n minimumPrecision?: number;\n}\n\n/**\n * This skill is deprecated. Use the V3.SentimentSkill instead.\n *\n * @deprecated\n */\nexport interface SentimentSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.SentimentSkill\";\n /** A value indicating which language code to use. Default is `en`. */\n defaultLanguageCode?: SentimentSkillLanguage;\n}\n\n/** Using the Text Analytics API, evaluates unstructured text and for each record, provides sentiment labels (such as \"negative\", \"neutral\" and \"positive\") based on the highest confidence score found by the service at a sentence and document-level. */\nexport interface SentimentSkillV3 extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.V3.SentimentSkill\";\n /** A value indicating which language code to use. Default is `en`. */\n defaultLanguageCode?: string;\n /** If set to true, the skill output will include information from Text Analytics for opinion mining, namely targets (nouns or verbs) and their associated assessment (adjective) in the text. Default is false. */\n includeOpinionMining?: boolean;\n /** The version of the model to use when calling the Text Analytics service. It will default to the latest available when not specified. We recommend you do not specify this value unless absolutely necessary. */\n modelVersion?: string;\n}\n\n/** Using the Text Analytics API, extracts linked entities from text. */\nexport interface EntityLinkingSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.V3.EntityLinkingSkill\";\n /** A value indicating which language code to use. Default is `en`. */\n defaultLanguageCode?: string;\n /** A value between 0 and 1 that be used to only include entities whose confidence score is greater than the value specified. If not set (default), or if explicitly set to null, all entities will be included. */\n minimumPrecision?: number;\n /** The version of the model to use when calling the Text Analytics service. It will default to the latest available when not specified. We recommend you do not specify this value unless absolutely necessary. */\n modelVersion?: string;\n}\n\n/** Using the Text Analytics API, extracts entities of different types from text. */\nexport interface EntityRecognitionSkillV3 extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.V3.EntityRecognitionSkill\";\n /** A list of entity categories that should be extracted. */\n categories?: string[];\n /** A value indicating which language code to use. Default is `en`. */\n defaultLanguageCode?: string;\n /** A value between 0 and 1 that be used to only include entities whose confidence score is greater than the value specified. If not set (default), or if explicitly set to null, all entities will be included. */\n minimumPrecision?: number;\n /** The version of the model to use when calling the Text Analytics API. It will default to the latest available when not specified. We recommend you do not specify this value unless absolutely necessary. */\n modelVersion?: string;\n}\n\n/** Using the Text Analytics API, extracts personal information from an input text and gives you the option of masking it. */\nexport interface PIIDetectionSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.PIIDetectionSkill\";\n /** A value indicating which language code to use. Default is `en`. */\n defaultLanguageCode?: string;\n /** A value between 0 and 1 that be used to only include entities whose confidence score is greater than the value specified. If not set (default), or if explicitly set to null, all entities will be included. */\n minimumPrecision?: number;\n /** A parameter that provides various ways to mask the personal information detected in the input text. Default is 'none'. */\n maskingMode?: PIIDetectionSkillMaskingMode;\n /** The character used to mask the text if the maskingMode parameter is set to replace. Default is '*'. */\n maskingCharacter?: string;\n /** The version of the model to use when calling the Text Analytics service. It will default to the latest available when not specified. We recommend you do not specify this value unless absolutely necessary. */\n modelVersion?: string;\n /** A list of PII entity categories that should be extracted and masked. */\n categories?: string[];\n /** If specified, will set the PII domain to include only a subset of the entity categories. Possible values include: 'phi', 'none'. Default is 'none'. */\n domain?: string;\n}\n\n/** A skill to split a string into chunks of text. */\nexport interface SplitSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.SplitSkill\";\n /** A value indicating which language code to use. Default is `en`. */\n defaultLanguageCode?: SplitSkillLanguage;\n /** A value indicating which split mode to perform. */\n textSplitMode?: TextSplitMode;\n /** The desired maximum page length. Default is 10000. */\n maxPageLength?: number;\n /** Only applicable when textSplitMode is set to 'pages'. If specified, n+1th chunk will start with this number of characters/tokens from the end of the nth chunk. */\n pageOverlapLength?: number;\n /** Only applicable when textSplitMode is set to 'pages'. If specified, the SplitSkill will discontinue splitting after processing the first 'maximumPagesToTake' pages, in order to improve performance when only a few initial pages are needed from each document. */\n maximumPagesToTake?: number;\n /** Only applies if textSplitMode is set to pages. There are two possible values. The choice of the values will decide the length (maximumPageLength and pageOverlapLength) measurement. The default is 'characters', which means the length will be measured by character. */\n unit?: SplitSkillUnit;\n /** Only applies if the unit is set to azureOpenAITokens. If specified, the splitSkill will use these parameters when performing the tokenization. The parameters are a valid 'encoderModelName' and an optional 'allowedSpecialTokens' property. */\n azureOpenAITokenizerParameters?: AzureOpenAITokenizerParameters;\n}\n\n/** A skill looks for text from a custom, user-defined list of words and phrases. */\nexport interface CustomEntityLookupSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.CustomEntityLookupSkill\";\n /** A value indicating which language code to use. Default is `en`. */\n defaultLanguageCode?: CustomEntityLookupSkillLanguage;\n /** Path to a JSON or CSV file containing all the target text to match against. This entity definition is read at the beginning of an indexer run. Any updates to this file during an indexer run will not take effect until subsequent runs. This config must be accessible over HTTPS. */\n entitiesDefinitionUri?: string;\n /** The inline CustomEntity definition. */\n inlineEntitiesDefinition?: CustomEntity[];\n /** A global flag for CaseSensitive. If CaseSensitive is not set in CustomEntity, this value will be the default value. */\n globalDefaultCaseSensitive?: boolean;\n /** A global flag for AccentSensitive. If AccentSensitive is not set in CustomEntity, this value will be the default value. */\n globalDefaultAccentSensitive?: boolean;\n /** A global flag for FuzzyEditDistance. If FuzzyEditDistance is not set in CustomEntity, this value will be the default value. */\n globalDefaultFuzzyEditDistance?: number;\n}\n\n/** A skill to translate text from one language to another. */\nexport interface TextTranslationSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.TranslationSkill\";\n /** The language code to translate documents into for documents that don't specify the to language explicitly. */\n defaultToLanguageCode: TextTranslationSkillLanguage;\n /** The language code to translate documents from for documents that don't specify the from language explicitly. */\n defaultFromLanguageCode?: TextTranslationSkillLanguage;\n /** The language code to translate documents from when neither the fromLanguageCode input nor the defaultFromLanguageCode parameter are provided, and the automatic language detection is unsuccessful. Default is `en`. */\n suggestedFrom?: TextTranslationSkillLanguage;\n}\n\n/** A skill that extracts content from a file within the enrichment pipeline. */\nexport interface DocumentExtractionSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Util.DocumentExtractionSkill\";\n /** The parsingMode for the skill. Will be set to 'default' if not defined. */\n parsingMode?: string;\n /** The type of data to be extracted for the skill. Will be set to 'contentAndMetadata' if not defined. */\n dataToExtract?: string;\n /** A dictionary of configurations for the skill. */\n configuration?: { [propertyName: string]: any };\n}\n\n/** A skill that can call a Web API endpoint, allowing you to extend a skillset by having it call your custom code. */\nexport interface WebApiSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Custom.WebApiSkill\";\n /** The url for the Web API. */\n uri: string;\n /** The headers required to make the http request. */\n httpHeaders?: { [propertyName: string]: string };\n /** The method for the http request. */\n httpMethod?: string;\n /** The desired timeout for the request. Default is 30 seconds. */\n timeout?: string;\n /** The desired batch size which indicates number of documents. */\n batchSize?: number;\n /** If set, the number of parallel calls that can be made to the Web API. */\n degreeOfParallelism?: number;\n /** Applies to custom skills that connect to external code in an Azure function or some other application that provides the transformations. This value should be the application ID created for the function or app when it was registered with Azure Active Directory. When specified, the custom skill connects to the function or app using a managed ID (either system or user-assigned) of the search service and the access token of the function or app, using this value as the resource id for creating the scope of the access token. */\n authResourceId?: string;\n /** The user-assigned managed identity used for outbound connections. If an authResourceId is provided and it's not specified, the system-assigned managed identity is used. On updates to the indexer, if the identity is unspecified, the value remains unchanged. If set to \"none\", the value of this property is cleared. */\n authIdentity?: SearchIndexerDataIdentityUnion;\n}\n\n/** The AML skill allows you to extend AI enrichment with a custom Azure Machine Learning (AML) model. Once an AML model is trained and deployed, an AML skill integrates it into AI enrichment. */\nexport interface AzureMachineLearningSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Custom.AmlSkill\";\n /** (Required for no authentication or key authentication) The scoring URI of the AML service to which the JSON payload will be sent. Only the https URI scheme is allowed. */\n scoringUri?: string;\n /** (Required for key authentication) The key for the AML service. */\n authenticationKey?: string;\n /** (Required for token authentication). The Azure Resource Manager resource ID of the AML service. It should be in the format subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.MachineLearningServices/workspaces/{workspace-name}/services/{service_name}. */\n resourceId?: string;\n /** (Optional) When specified, indicates the timeout for the http client making the API call. */\n timeout?: string;\n /** (Optional for token authentication). The region the AML service is deployed in. */\n region?: string;\n /** (Optional) When specified, indicates the number of calls the indexer will make in parallel to the endpoint you have provided. You can decrease this value if your endpoint is failing under too high of a request load, or raise it if your endpoint is able to accept more requests and you would like an increase in the performance of the indexer. If not set, a default value of 5 is used. The degreeOfParallelism can be set to a maximum of 10 and a minimum of 1. */\n degreeOfParallelism?: number;\n}\n\n/** Allows you to generate a vector embedding for a given text input using the Azure OpenAI resource. */\nexport interface AzureOpenAIEmbeddingSkill\n extends SearchIndexerSkill,\n AzureOpenAIParameters {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill\";\n /** The number of dimensions the resulting output embeddings should have. Only supported in text-embedding-3 and later models. */\n dimensions?: number;\n}\n\n/** Allows you to generate a vector embedding for a given image or text input using the Azure AI Services Vision Vectorize API. */\nexport interface VisionVectorizeSkill extends SearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Vision.VectorizeSkill\";\n /** The version of the model to use when calling the AI Services Vision service. It will default to the latest available when not specified. */\n modelVersion: string | null;\n}\n\n/** An empty object that represents the default Azure AI service resource for a skillset. */\nexport interface DefaultCognitiveServicesAccount\n extends CognitiveServicesAccount {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.DefaultCognitiveServices\";\n}\n\n/** The multi-region account key of an Azure AI service resource that's attached to a skillset. */\nexport interface CognitiveServicesAccountKey extends CognitiveServicesAccount {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.CognitiveServicesByKey\";\n /** The key used to provision the Azure AI service resource attached to a skillset. */\n key: string;\n}\n\n/** Description for what data to store in Azure Tables. */\nexport interface SearchIndexerKnowledgeStoreTableProjectionSelector\n extends SearchIndexerKnowledgeStoreProjectionSelector {\n /** Name of the Azure table to store projected data in. */\n tableName: string;\n}\n\n/** Abstract class to share properties between concrete selectors. */\nexport interface SearchIndexerKnowledgeStoreBlobProjectionSelector\n extends SearchIndexerKnowledgeStoreProjectionSelector {\n /** Blob container to store projections in. */\n storageContainer: string;\n}\n\n/** Defines a function that boosts scores based on distance from a geographic location. */\nexport interface DistanceScoringFunction extends ScoringFunction {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n type: \"distance\";\n /** Parameter values for the distance scoring function. */\n parameters: DistanceScoringParameters;\n}\n\n/** Defines a function that boosts scores based on the value of a date-time field. */\nexport interface FreshnessScoringFunction extends ScoringFunction {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n type: \"freshness\";\n /** Parameter values for the freshness scoring function. */\n parameters: FreshnessScoringParameters;\n}\n\n/** Defines a function that boosts scores based on the magnitude of a numeric field. */\nexport interface MagnitudeScoringFunction extends ScoringFunction {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n type: \"magnitude\";\n /** Parameter values for the magnitude scoring function. */\n parameters: MagnitudeScoringParameters;\n}\n\n/** Defines a function that boosts scores of documents with string values matching a given list of tags. */\nexport interface TagScoringFunction extends ScoringFunction {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n type: \"tag\";\n /** Parameter values for the tag scoring function. */\n parameters: TagScoringParameters;\n}\n\n/** Allows you to take control over the process of converting text into indexable/searchable tokens. It's a user-defined configuration consisting of a single predefined tokenizer and one or more filters. The tokenizer is responsible for breaking text into tokens, and the filters for modifying tokens emitted by the tokenizer. */\nexport interface CustomAnalyzer extends LexicalAnalyzer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.CustomAnalyzer\";\n /** The name of the tokenizer to use to divide continuous text into a sequence of tokens, such as breaking a sentence into words. KnownTokenizerNames is an enum containing known values. */\n tokenizerName: string;\n /** A list of token filters used to filter out or modify the tokens generated by a tokenizer. For example, you can specify a lowercase filter that converts all characters to lowercase. The filters are run in the order in which they are listed. */\n tokenFilters?: string[];\n /** A list of character filters used to prepare input text before it is processed by the tokenizer. For instance, they can replace certain characters or symbols. The filters are run in the order in which they are listed. */\n charFilters?: string[];\n}\n\n/** Flexibly separates text into terms via a regular expression pattern. This analyzer is implemented using Apache Lucene. */\nexport interface PatternAnalyzer extends LexicalAnalyzer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.PatternAnalyzer\";\n /** A value indicating whether terms should be lower-cased. Default is true. */\n lowerCaseTerms?: boolean;\n /** A regular expression pattern to match token separators. Default is an expression that matches one or more non-word characters. */\n pattern?: string;\n /** Regular expression flags. */\n flags?: string;\n /** A list of stopwords. */\n stopwords?: string[];\n}\n\n/** Standard Apache Lucene analyzer; Composed of the standard tokenizer, lowercase filter and stop filter. */\nexport interface LuceneStandardAnalyzer extends LexicalAnalyzer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.StandardAnalyzer\";\n /** The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters. */\n maxTokenLength?: number;\n /** A list of stopwords. */\n stopwords?: string[];\n}\n\n/** Divides text at non-letters; Applies the lowercase and stopword token filters. This analyzer is implemented using Apache Lucene. */\nexport interface StopAnalyzer extends LexicalAnalyzer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.StopAnalyzer\";\n /** A list of stopwords. */\n stopwords?: string[];\n}\n\n/** Grammar-based tokenizer that is suitable for processing most European-language documents. This tokenizer is implemented using Apache Lucene. */\nexport interface ClassicTokenizer extends LexicalTokenizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.ClassicTokenizer\";\n /** The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters. */\n maxTokenLength?: number;\n}\n\n/** Tokenizes the input from an edge into n-grams of the given size(s). This tokenizer is implemented using Apache Lucene. */\nexport interface EdgeNGramTokenizer extends LexicalTokenizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.EdgeNGramTokenizer\";\n /** The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram. */\n minGram?: number;\n /** The maximum n-gram length. Default is 2. Maximum is 300. */\n maxGram?: number;\n /** Character classes to keep in the tokens. */\n tokenChars?: TokenCharacterKind[];\n}\n\n/** Emits the entire input as a single token. This tokenizer is implemented using Apache Lucene. */\nexport interface KeywordTokenizer extends LexicalTokenizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.KeywordTokenizer\";\n /** The read buffer size in bytes. Default is 256. */\n bufferSize?: number;\n}\n\n/** Emits the entire input as a single token. This tokenizer is implemented using Apache Lucene. */\nexport interface KeywordTokenizerV2 extends LexicalTokenizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.KeywordTokenizerV2\";\n /** The maximum token length. Default is 256. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters. */\n maxTokenLength?: number;\n}\n\n/** Divides text using language-specific rules. */\nexport interface MicrosoftLanguageTokenizer extends LexicalTokenizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.MicrosoftLanguageTokenizer\";\n /** The maximum token length. Tokens longer than the maximum length are split. Maximum token length that can be used is 300 characters. Tokens longer than 300 characters are first split into tokens of length 300 and then each of those tokens is split based on the max token length set. Default is 255. */\n maxTokenLength?: number;\n /** A value indicating how the tokenizer is used. Set to true if used as the search tokenizer, set to false if used as the indexing tokenizer. Default is false. */\n isSearchTokenizer?: boolean;\n /** The language to use. The default is English. */\n language?: MicrosoftTokenizerLanguage;\n}\n\n/** Divides text using language-specific rules and reduces words to their base forms. */\nexport interface MicrosoftLanguageStemmingTokenizer extends LexicalTokenizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer\";\n /** The maximum token length. Tokens longer than the maximum length are split. Maximum token length that can be used is 300 characters. Tokens longer than 300 characters are first split into tokens of length 300 and then each of those tokens is split based on the max token length set. Default is 255. */\n maxTokenLength?: number;\n /** A value indicating how the tokenizer is used. Set to true if used as the search tokenizer, set to false if used as the indexing tokenizer. Default is false. */\n isSearchTokenizer?: boolean;\n /** The language to use. The default is English. */\n language?: MicrosoftStemmingTokenizerLanguage;\n}\n\n/** Tokenizes the input into n-grams of the given size(s). This tokenizer is implemented using Apache Lucene. */\nexport interface NGramTokenizer extends LexicalTokenizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.NGramTokenizer\";\n /** The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram. */\n minGram?: number;\n /** The maximum n-gram length. Default is 2. Maximum is 300. */\n maxGram?: number;\n /** Character classes to keep in the tokens. */\n tokenChars?: TokenCharacterKind[];\n}\n\n/** Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache Lucene. */\nexport interface PathHierarchyTokenizerV2 extends LexicalTokenizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.PathHierarchyTokenizerV2\";\n /** The delimiter character to use. Default is \"/\". */\n delimiter?: string;\n /** A value that, if set, replaces the delimiter character. Default is \"/\". */\n replacement?: string;\n /** The maximum token length. Default and maximum is 300. */\n maxTokenLength?: number;\n /** A value indicating whether to generate tokens in reverse order. Default is false. */\n reverseTokenOrder?: boolean;\n /** The number of initial tokens to skip. Default is 0. */\n numberOfTokensToSkip?: number;\n}\n\n/** Tokenizer that uses regex pattern matching to construct distinct tokens. This tokenizer is implemented using Apache Lucene. */\nexport interface PatternTokenizer extends LexicalTokenizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.PatternTokenizer\";\n /** A regular expression pattern to match token separators. Default is an expression that matches one or more non-word characters. */\n pattern?: string;\n /** Regular expression flags. */\n flags?: string;\n /** The zero-based ordinal of the matching group in the regular expression pattern to extract into tokens. Use -1 if you want to use the entire pattern to split the input into tokens, irrespective of matching groups. Default is -1. */\n group?: number;\n}\n\n/** Breaks text following the Unicode Text Segmentation rules. This tokenizer is implemented using Apache Lucene. */\nexport interface LuceneStandardTokenizer extends LexicalTokenizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.StandardTokenizer\";\n /** The maximum token length. Default is 255. Tokens longer than the maximum length are split. */\n maxTokenLength?: number;\n}\n\n/** Breaks text following the Unicode Text Segmentation rules. This tokenizer is implemented using Apache Lucene. */\nexport interface LuceneStandardTokenizerV2 extends LexicalTokenizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.StandardTokenizerV2\";\n /** The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters. */\n maxTokenLength?: number;\n}\n\n/** Tokenizes urls and emails as one token. This tokenizer is implemented using Apache Lucene. */\nexport interface UaxUrlEmailTokenizer extends LexicalTokenizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.UaxUrlEmailTokenizer\";\n /** The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters. */\n maxTokenLength?: number;\n}\n\n/** Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. This token filter is implemented using Apache Lucene. */\nexport interface AsciiFoldingTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.AsciiFoldingTokenFilter\";\n /** A value indicating whether the original token will be kept. Default is false. */\n preserveOriginal?: boolean;\n}\n\n/** Forms bigrams of CJK terms that are generated from the standard tokenizer. This token filter is implemented using Apache Lucene. */\nexport interface CjkBigramTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.CjkBigramTokenFilter\";\n /** The scripts to ignore. */\n ignoreScripts?: CjkBigramTokenFilterScripts[];\n /** A value indicating whether to output both unigrams and bigrams (if true), or just bigrams (if false). Default is false. */\n outputUnigrams?: boolean;\n}\n\n/** Construct bigrams for frequently occurring terms while indexing. Single terms are still indexed too, with bigrams overlaid. This token filter is implemented using Apache Lucene. */\nexport interface CommonGramTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.CommonGramTokenFilter\";\n /** The set of common words. */\n commonWords: string[];\n /** A value indicating whether common words matching will be case insensitive. Default is false. */\n ignoreCase?: boolean;\n /** A value that indicates whether the token filter is in query mode. When in query mode, the token filter generates bigrams and then removes common words and single terms followed by a common word. Default is false. */\n useQueryMode?: boolean;\n}\n\n/** Decomposes compound words found in many Germanic languages. This token filter is implemented using Apache Lucene. */\nexport interface DictionaryDecompounderTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter\";\n /** The list of words to match against. */\n wordList: string[];\n /** The minimum word size. Only words longer than this get processed. Default is 5. Maximum is 300. */\n minWordSize?: number;\n /** The minimum subword size. Only subwords longer than this are outputted. Default is 2. Maximum is 300. */\n minSubwordSize?: number;\n /** The maximum subword size. Only subwords shorter than this are outputted. Default is 15. Maximum is 300. */\n maxSubwordSize?: number;\n /** A value indicating whether to add only the longest matching subword to the output. Default is false. */\n onlyLongestMatch?: boolean;\n}\n\n/** Generates n-grams of the given size(s) starting from the front or the back of an input token. This token filter is implemented using Apache Lucene. */\nexport interface EdgeNGramTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.EdgeNGramTokenFilter\";\n /** The minimum n-gram length. Default is 1. Must be less than the value of maxGram. */\n minGram?: number;\n /** The maximum n-gram length. Default is 2. */\n maxGram?: number;\n /** Specifies which side of the input the n-gram should be generated from. Default is \"front\". */\n side?: EdgeNGramTokenFilterSide;\n}\n\n/** Generates n-grams of the given size(s) starting from the front or the back of an input token. This token filter is implemented using Apache Lucene. */\nexport interface EdgeNGramTokenFilterV2 extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.EdgeNGramTokenFilterV2\";\n /** The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram. */\n minGram?: number;\n /** The maximum n-gram length. Default is 2. Maximum is 300. */\n maxGram?: number;\n /** Specifies which side of the input the n-gram should be generated from. Default is \"front\". */\n side?: EdgeNGramTokenFilterSide;\n}\n\n/** Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). This token filter is implemented using Apache Lucene. */\nexport interface ElisionTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.ElisionTokenFilter\";\n /** The set of articles to remove. */\n articles?: string[];\n}\n\n/** A token filter that only keeps tokens with text contained in a specified list of words. This token filter is implemented using Apache Lucene. */\nexport interface KeepTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.KeepTokenFilter\";\n /** The list of words to keep. */\n keepWords: string[];\n /** A value indicating whether to lower case all words first. Default is false. */\n lowerCaseKeepWords?: boolean;\n}\n\n/** Marks terms as keywords. This token filter is implemented using Apache Lucene. */\nexport interface KeywordMarkerTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.KeywordMarkerTokenFilter\";\n /** A list of words to mark as keywords. */\n keywords: string[];\n /** A value indicating whether to ignore case. If true, all words are converted to lower case first. Default is false. */\n ignoreCase?: boolean;\n}\n\n/** Removes words that are too long or too short. This token filter is implemented using Apache Lucene. */\nexport interface LengthTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.LengthTokenFilter\";\n /** The minimum length in characters. Default is 0. Maximum is 300. Must be less than the value of max. */\n minLength?: number;\n /** The maximum length in characters. Default and maximum is 300. */\n maxLength?: number;\n}\n\n/** Limits the number of tokens while indexing. This token filter is implemented using Apache Lucene. */\nexport interface LimitTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.LimitTokenFilter\";\n /** The maximum number of tokens to produce. Default is 1. */\n maxTokenCount?: number;\n /** A value indicating whether all tokens from the input must be consumed even if maxTokenCount is reached. Default is false. */\n consumeAllTokens?: boolean;\n}\n\n/** Generates n-grams of the given size(s). This token filter is implemented using Apache Lucene. */\nexport interface NGramTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.NGramTokenFilter\";\n /** The minimum n-gram length. Default is 1. Must be less than the value of maxGram. */\n minGram?: number;\n /** The maximum n-gram length. Default is 2. */\n maxGram?: number;\n}\n\n/** Generates n-grams of the given size(s). This token filter is implemented using Apache Lucene. */\nexport interface NGramTokenFilterV2 extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.NGramTokenFilterV2\";\n /** The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram. */\n minGram?: number;\n /** The maximum n-gram length. Default is 2. Maximum is 300. */\n maxGram?: number;\n}\n\n/** Uses Java regexes to emit multiple tokens - one for each capture group in one or more patterns. This token filter is implemented using Apache Lucene. */\nexport interface PatternCaptureTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.PatternCaptureTokenFilter\";\n /** A list of patterns to match against each token. */\n patterns: string[];\n /** A value indicating whether to return the original token even if one of the patterns matches. Default is true. */\n preserveOriginal?: boolean;\n}\n\n/** A character filter that replaces characters in the input string. It uses a regular expression to identify character sequences to preserve and a replacement pattern to identify characters to replace. For example, given the input text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the result would be \"aa#bb aa#bb\". This token filter is implemented using Apache Lucene. */\nexport interface PatternReplaceTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.PatternReplaceTokenFilter\";\n /** A regular expression pattern. */\n pattern: string;\n /** The replacement text. */\n replacement: string;\n}\n\n/** Create tokens for phonetic matches. This token filter is implemented using Apache Lucene. */\nexport interface PhoneticTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.PhoneticTokenFilter\";\n /** The phonetic encoder to use. Default is \"metaphone\". */\n encoder?: PhoneticEncoder;\n /** A value indicating whether encoded tokens should replace original tokens. If false, encoded tokens are added as synonyms. Default is true. */\n replaceOriginalTokens?: boolean;\n}\n\n/** Creates combinations of tokens as a single token. This token filter is implemented using Apache Lucene. */\nexport interface ShingleTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.ShingleTokenFilter\";\n /** The maximum shingle size. Default and minimum value is 2. */\n maxShingleSize?: number;\n /** The minimum shingle size. Default and minimum value is 2. Must be less than the value of maxShingleSize. */\n minShingleSize?: number;\n /** A value indicating whether the output stream will contain the input tokens (unigrams) as well as shingles. Default is true. */\n outputUnigrams?: boolean;\n /** A value indicating whether to output unigrams for those times when no shingles are available. This property takes precedence when outputUnigrams is set to false. Default is false. */\n outputUnigramsIfNoShingles?: boolean;\n /** The string to use when joining adjacent tokens to form a shingle. Default is a single space (\" \"). */\n tokenSeparator?: string;\n /** The string to insert for each position at which there is no token. Default is an underscore (\"_\"). */\n filterToken?: string;\n}\n\n/** A filter that stems words using a Snowball-generated stemmer. This token filter is implemented using Apache Lucene. */\nexport interface SnowballTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.SnowballTokenFilter\";\n /** The language to use. */\n language: SnowballTokenFilterLanguage;\n}\n\n/** Language specific stemming filter. This token filter is implemented using Apache Lucene. */\nexport interface StemmerTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.StemmerTokenFilter\";\n /** The language to use. */\n language: StemmerTokenFilterLanguage;\n}\n\n/** Provides the ability to override other stemming filters with custom dictionary-based stemming. Any dictionary-stemmed terms will be marked as keywords so that they will not be stemmed with stemmers down the chain. Must be placed before any stemming filters. This token filter is implemented using Apache Lucene. */\nexport interface StemmerOverrideTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.StemmerOverrideTokenFilter\";\n /** A list of stemming rules in the following format: \"word => stem\", for example: \"ran => run\". */\n rules: string[];\n}\n\n/** Removes stop words from a token stream. This token filter is implemented using Apache Lucene. */\nexport interface StopwordsTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.StopwordsTokenFilter\";\n /** The list of stopwords. This property and the stopwords list property cannot both be set. */\n stopwords?: string[];\n /** A predefined list of stopwords to use. This property and the stopwords property cannot both be set. Default is English. */\n stopwordsList?: StopwordsList;\n /** A value indicating whether to ignore case. If true, all words are converted to lower case first. Default is false. */\n ignoreCase?: boolean;\n /** A value indicating whether to ignore the last search term if it's a stop word. Default is true. */\n removeTrailingStopWords?: boolean;\n}\n\n/** Matches single or multi-word synonyms in a token stream. This token filter is implemented using Apache Lucene. */\nexport interface SynonymTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.SynonymTokenFilter\";\n /** A list of synonyms in following one of two formats: 1. incredible, unbelievable, fabulous => amazing - all terms on the left side of => symbol will be replaced with all terms on its right side; 2. incredible, unbelievable, fabulous, amazing - comma separated list of equivalent words. Set the expand option to change how this list is interpreted. */\n synonyms: string[];\n /** A value indicating whether to case-fold input for matching. Default is false. */\n ignoreCase?: boolean;\n /** A value indicating whether all words in the list of synonyms (if => notation is not used) will map to one another. If true, all words in the list of synonyms (if => notation is not used) will map to one another. The following list: incredible, unbelievable, fabulous, amazing is equivalent to: incredible, unbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing. If false, the following list: incredible, unbelievable, fabulous, amazing will be equivalent to: incredible, unbelievable, fabulous, amazing => incredible. Default is true. */\n expand?: boolean;\n}\n\n/** Truncates the terms to a specific length. This token filter is implemented using Apache Lucene. */\nexport interface TruncateTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.TruncateTokenFilter\";\n /** The length at which terms will be truncated. Default and maximum is 300. */\n length?: number;\n}\n\n/** Filters out tokens with same text as the previous token. This token filter is implemented using Apache Lucene. */\nexport interface UniqueTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.UniqueTokenFilter\";\n /** A value indicating whether to remove duplicates only at the same position. Default is false. */\n onlyOnSamePosition?: boolean;\n}\n\n/** Splits words into subwords and performs optional transformations on subword groups. This token filter is implemented using Apache Lucene. */\nexport interface WordDelimiterTokenFilter extends TokenFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.WordDelimiterTokenFilter\";\n /** A value indicating whether to generate part words. If set, causes parts of words to be generated; for example \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true. */\n generateWordParts?: boolean;\n /** A value indicating whether to generate number subwords. Default is true. */\n generateNumberParts?: boolean;\n /** A value indicating whether maximum runs of word parts will be catenated. For example, if this is set to true, \"Azure-Search\" becomes \"AzureSearch\". Default is false. */\n catenateWords?: boolean;\n /** A value indicating whether maximum runs of number parts will be catenated. For example, if this is set to true, \"1-2\" becomes \"12\". Default is false. */\n catenateNumbers?: boolean;\n /** A value indicating whether all subword parts will be catenated. For example, if this is set to true, \"Azure-Search-1\" becomes \"AzureSearch1\". Default is false. */\n catenateAll?: boolean;\n /** A value indicating whether to split words on caseChange. For example, if this is set to true, \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true. */\n splitOnCaseChange?: boolean;\n /** A value indicating whether original words will be preserved and added to the subword list. Default is false. */\n preserveOriginal?: boolean;\n /** A value indicating whether to split on numbers. For example, if this is set to true, \"Azure1Search\" becomes \"Azure\" \"1\" \"Search\". Default is true. */\n splitOnNumerics?: boolean;\n /** A value indicating whether to remove trailing \"'s\" for each subword. Default is true. */\n stemEnglishPossessive?: boolean;\n /** A list of tokens to protect from being delimited. */\n protectedWords?: string[];\n}\n\n/** A character filter that applies mappings defined with the mappings option. Matching is greedy (longest pattern matching at a given point wins). Replacement is allowed to be the empty string. This character filter is implemented using Apache Lucene. */\nexport interface MappingCharFilter extends CharFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.MappingCharFilter\";\n /** A list of mappings of the following format: \"a=>b\" (all occurrences of the character \"a\" will be replaced with character \"b\"). */\n mappings: string[];\n}\n\n/** A character filter that replaces characters in the input string. It uses a regular expression to identify character sequences to preserve and a replacement pattern to identify characters to replace. For example, given the input text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the result would be \"aa#bb aa#bb\". This character filter is implemented using Apache Lucene. */\nexport interface PatternReplaceCharFilter extends CharFilter {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.PatternReplaceCharFilter\";\n /** A regular expression pattern. */\n pattern: string;\n /** The replacement text. */\n replacement: string;\n}\n\n/** Allows you to configure normalization for filterable, sortable, and facetable fields, which by default operate with strict matching. This is a user-defined configuration consisting of at least one or more filters, which modify the token that is stored. */\nexport interface CustomNormalizer extends LexicalNormalizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.CustomNormalizer\";\n /** A list of token filters used to filter out or modify the input token. For example, you can specify a lowercase filter that converts all characters to lowercase. The filters are run in the order in which they are listed. */\n tokenFilters?: TokenFilterName[];\n /** A list of character filters used to prepare input text before it is processed. For instance, they can replace certain characters or symbols. The filters are run in the order in which they are listed. */\n charFilters?: CharFilterName[];\n}\n\n/** Legacy similarity algorithm which uses the Lucene TFIDFSimilarity implementation of TF-IDF. This variation of TF-IDF introduces static document length normalization as well as coordinating factors that penalize documents that only partially match the searched queries. */\nexport interface ClassicSimilarity extends Similarity {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.ClassicSimilarity\";\n}\n\n/** Ranking function based on the Okapi BM25 similarity algorithm. BM25 is a TF-IDF-like algorithm that includes length normalization (controlled by the 'b' parameter) as well as term frequency saturation (controlled by the 'k1' parameter). */\nexport interface BM25Similarity extends Similarity {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Azure.Search.BM25Similarity\";\n /** This property controls the scaling function between the term frequency of each matching terms and the final relevance score of a document-query pair. By default, a value of 1.2 is used. A value of 0.0 means the score does not scale with an increase in term frequency. */\n k1?: number;\n /** This property controls how the length of a document affects the relevance score. By default, a value of 0.75 is used. A value of 0.0 means no length normalization is applied, while a value of 1.0 means the score is fully normalized by the length of the document. */\n b?: number;\n}\n\n/** Contains configuration options specific to the HNSW approximate nearest neighbors algorithm used during indexing and querying. The HNSW algorithm offers a tunable trade-off between search speed and accuracy. */\nexport interface HnswAlgorithmConfiguration\n extends VectorSearchAlgorithmConfiguration {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"hnsw\";\n /** Contains the parameters specific to HNSW algorithm. */\n parameters?: HnswParameters;\n}\n\n/** Contains configuration options specific to the exhaustive KNN algorithm used during querying, which will perform brute-force search across the entire vector index. */\nexport interface ExhaustiveKnnAlgorithmConfiguration\n extends VectorSearchAlgorithmConfiguration {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"exhaustiveKnn\";\n /** Contains the parameters specific to exhaustive KNN algorithm. */\n parameters?: ExhaustiveKnnParameters;\n}\n\n/** Specifies the Azure OpenAI resource used to vectorize a query string. */\nexport interface AzureOpenAIVectorizer extends VectorSearchVectorizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"azureOpenAI\";\n /** Contains the parameters specific to Azure OpenAI embedding vectorization. */\n parameters?: AzureOpenAIParameters;\n}\n\n/** Specifies a user-defined vectorizer for generating the vector embedding of a query string. Integration of an external vectorizer is achieved using the custom Web API interface of a skillset. */\nexport interface WebApiVectorizer extends VectorSearchVectorizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"customWebApi\";\n /** Specifies the properties of the user-defined vectorizer. */\n parameters?: WebApiParameters;\n}\n\n/** Specifies the AI Services Vision parameters for vectorizing a query image or text. */\nexport interface AIServicesVisionVectorizer extends VectorSearchVectorizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"aiServicesVision\";\n /** Contains the parameters specific to AI Services Vision embedding vectorization. */\n aIServicesVisionParameters?: AIServicesVisionParameters;\n}\n\n/** Specifies an Azure Machine Learning endpoint deployed via the Azure AI Studio Model Catalog for generating the vector embedding of a query string. */\nexport interface AMLVectorizer extends VectorSearchVectorizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"aml\";\n /** Specifies the properties of the AML vectorizer. */\n aMLParameters?: AMLParameters;\n}\n\n/** Contains configuration options specific to the scalar quantization compression method used during indexing and querying. */\nexport interface ScalarQuantizationCompression extends VectorSearchCompression {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"scalarQuantization\";\n /** Contains the parameters specific to Scalar Quantization. */\n parameters?: ScalarQuantizationParameters;\n}\n\n/** Contains configuration options specific to the binary quantization compression method used during indexing and querying. */\nexport interface BinaryQuantizationCompression extends VectorSearchCompression {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"binaryQuantization\";\n}\n\n/** Projection definition for what data to store in Azure Blob. */\nexport interface SearchIndexerKnowledgeStoreObjectProjectionSelector\n extends SearchIndexerKnowledgeStoreBlobProjectionSelector {}\n\n/** Projection definition for what data to store in Azure Files. */\nexport interface SearchIndexerKnowledgeStoreFileProjectionSelector\n extends SearchIndexerKnowledgeStoreBlobProjectionSelector {}\n\n/** Known values of {@link ApiVersion20240901Preview} that the service accepts. */\nexport enum KnownApiVersion20240901Preview {\n /** Api Version '2024-09-01-preview' */\n TwoThousandTwentyFour0901Preview = \"2024-09-01-preview\",\n}\n\n/**\n * Defines values for ApiVersion20240901Preview. \\\n * {@link KnownApiVersion20240901Preview} can be used interchangeably with ApiVersion20240901Preview,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **2024-09-01-preview**: Api Version '2024-09-01-preview'\n */\nexport type ApiVersion20240901Preview = string;\n\n/** Known values of {@link SearchIndexerDataSourceType} that the service accepts. */\nexport enum KnownSearchIndexerDataSourceType {\n /** Indicates an Azure SQL datasource. */\n AzureSql = \"azuresql\",\n /** Indicates a CosmosDB datasource. */\n CosmosDb = \"cosmosdb\",\n /** Indicates an Azure Blob datasource. */\n AzureBlob = \"azureblob\",\n /** Indicates an Azure Table datasource. */\n AzureTable = \"azuretable\",\n /** Indicates a MySql datasource. */\n MySql = \"mysql\",\n /** Indicates an ADLS Gen2 datasource. */\n AdlsGen2 = \"adlsgen2\",\n /** Indicates a Microsoft Fabric OneLake datasource. */\n OneLake = \"onelake\",\n}\n\n/**\n * Defines values for SearchIndexerDataSourceType. \\\n * {@link KnownSearchIndexerDataSourceType} can be used interchangeably with SearchIndexerDataSourceType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **azuresql**: Indicates an Azure SQL datasource. \\\n * **cosmosdb**: Indicates a CosmosDB datasource. \\\n * **azureblob**: Indicates an Azure Blob datasource. \\\n * **azuretable**: Indicates an Azure Table datasource. \\\n * **mysql**: Indicates a MySql datasource. \\\n * **adlsgen2**: Indicates an ADLS Gen2 datasource. \\\n * **onelake**: Indicates a Microsoft Fabric OneLake datasource.\n */\nexport type SearchIndexerDataSourceType = string;\n\n/** Known values of {@link BlobIndexerParsingMode} that the service accepts. */\nexport enum KnownBlobIndexerParsingMode {\n /** Set to default for normal file processing. */\n Default = \"default\",\n /** Set to text to improve indexing performance on plain text files in blob storage. */\n Text = \"text\",\n /** Set to delimitedText when blobs are plain CSV files. */\n DelimitedText = \"delimitedText\",\n /** Set to json to extract structured content from JSON files. */\n Json = \"json\",\n /** Set to jsonArray to extract individual elements of a JSON array as separate documents. */\n JsonArray = \"jsonArray\",\n /** Set to jsonLines to extract individual JSON entities, separated by a new line, as separate documents. */\n JsonLines = \"jsonLines\",\n}\n\n/**\n * Defines values for BlobIndexerParsingMode. \\\n * {@link KnownBlobIndexerParsingMode} can be used interchangeably with BlobIndexerParsingMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **default**: Set to default for normal file processing. \\\n * **text**: Set to text to improve indexing performance on plain text files in blob storage. \\\n * **delimitedText**: Set to delimitedText when blobs are plain CSV files. \\\n * **json**: Set to json to extract structured content from JSON files. \\\n * **jsonArray**: Set to jsonArray to extract individual elements of a JSON array as separate documents. \\\n * **jsonLines**: Set to jsonLines to extract individual JSON entities, separated by a new line, as separate documents.\n */\nexport type BlobIndexerParsingMode = string;\n\n/** Known values of {@link BlobIndexerDataToExtract} that the service accepts. */\nexport enum KnownBlobIndexerDataToExtract {\n /** Indexes just the standard blob properties and user-specified metadata. */\n StorageMetadata = \"storageMetadata\",\n /** Extracts metadata provided by the Azure blob storage subsystem and the content-type specific metadata (for example, metadata unique to just .png files are indexed). */\n AllMetadata = \"allMetadata\",\n /** Extracts all metadata and textual content from each blob. */\n ContentAndMetadata = \"contentAndMetadata\",\n}\n\n/**\n * Defines values for BlobIndexerDataToExtract. \\\n * {@link KnownBlobIndexerDataToExtract} can be used interchangeably with BlobIndexerDataToExtract,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **storageMetadata**: Indexes just the standard blob properties and user-specified metadata. \\\n * **allMetadata**: Extracts metadata provided by the Azure blob storage subsystem and the content-type specific metadata (for example, metadata unique to just .png files are indexed). \\\n * **contentAndMetadata**: Extracts all metadata and textual content from each blob.\n */\nexport type BlobIndexerDataToExtract = string;\n\n/** Known values of {@link BlobIndexerImageAction} that the service accepts. */\nexport enum KnownBlobIndexerImageAction {\n /** Ignores embedded images or image files in the data set. This is the default. */\n None = \"none\",\n /** Extracts text from images (for example, the word \"STOP\" from a traffic stop sign), and embeds it into the content field. This action requires that \"dataToExtract\" is set to \"contentAndMetadata\". A normalized image refers to additional processing resulting in uniform image output, sized and rotated to promote consistent rendering when you include images in visual search results. This information is generated for each image when you use this option. */\n GenerateNormalizedImages = \"generateNormalizedImages\",\n /** Extracts text from images (for example, the word \"STOP\" from a traffic stop sign), and embeds it into the content field, but treats PDF files differently in that each page will be rendered as an image and normalized accordingly, instead of extracting embedded images. Non-PDF file types will be treated the same as if \"generateNormalizedImages\" was set. */\n GenerateNormalizedImagePerPage = \"generateNormalizedImagePerPage\",\n}\n\n/**\n * Defines values for BlobIndexerImageAction. \\\n * {@link KnownBlobIndexerImageAction} can be used interchangeably with BlobIndexerImageAction,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **none**: Ignores embedded images or image files in the data set. This is the default. \\\n * **generateNormalizedImages**: Extracts text from images (for example, the word \"STOP\" from a traffic stop sign), and embeds it into the content field. This action requires that \"dataToExtract\" is set to \"contentAndMetadata\". A normalized image refers to additional processing resulting in uniform image output, sized and rotated to promote consistent rendering when you include images in visual search results. This information is generated for each image when you use this option. \\\n * **generateNormalizedImagePerPage**: Extracts text from images (for example, the word \"STOP\" from a traffic stop sign), and embeds it into the content field, but treats PDF files differently in that each page will be rendered as an image and normalized accordingly, instead of extracting embedded images. Non-PDF file types will be treated the same as if \"generateNormalizedImages\" was set.\n */\nexport type BlobIndexerImageAction = string;\n\n/** Known values of {@link BlobIndexerPDFTextRotationAlgorithm} that the service accepts. */\nexport enum KnownBlobIndexerPDFTextRotationAlgorithm {\n /** Leverages normal text extraction. This is the default. */\n None = \"none\",\n /** May produce better and more readable text extraction from PDF files that have rotated text within them. Note that there may be a small performance speed impact when this parameter is used. This parameter only applies to PDF files, and only to PDFs with embedded text. If the rotated text appears within an embedded image in the PDF, this parameter does not apply. */\n DetectAngles = \"detectAngles\",\n}\n\n/**\n * Defines values for BlobIndexerPDFTextRotationAlgorithm. \\\n * {@link KnownBlobIndexerPDFTextRotationAlgorithm} can be used interchangeably with BlobIndexerPDFTextRotationAlgorithm,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **none**: Leverages normal text extraction. This is the default. \\\n * **detectAngles**: May produce better and more readable text extraction from PDF files that have rotated text within them. Note that there may be a small performance speed impact when this parameter is used. This parameter only applies to PDF files, and only to PDFs with embedded text. If the rotated text appears within an embedded image in the PDF, this parameter does not apply.\n */\nexport type BlobIndexerPDFTextRotationAlgorithm = string;\n\n/** Known values of {@link IndexerExecutionEnvironment} that the service accepts. */\nexport enum KnownIndexerExecutionEnvironment {\n /** Indicates that the search service can determine where the indexer should execute. This is the default environment when nothing is specified and is the recommended value. */\n Standard = \"standard\",\n /** Indicates that the indexer should run with the environment provisioned specifically for the search service. This should only be specified as the execution environment if the indexer needs to access resources securely over shared private link resources. */\n Private = \"private\",\n}\n\n/**\n * Defines values for IndexerExecutionEnvironment. \\\n * {@link KnownIndexerExecutionEnvironment} can be used interchangeably with IndexerExecutionEnvironment,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **standard**: Indicates that the search service can determine where the indexer should execute. This is the default environment when nothing is specified and is the recommended value. \\\n * **private**: Indicates that the indexer should run with the environment provisioned specifically for the search service. This should only be specified as the execution environment if the indexer needs to access resources securely over shared private link resources.\n */\nexport type IndexerExecutionEnvironment = string;\n\n/** Known values of {@link IndexerExecutionStatusDetail} that the service accepts. */\nexport enum KnownIndexerExecutionStatusDetail {\n /** Indicates that the reset that occurred was for a call to ResetDocs. */\n ResetDocs = \"resetDocs\",\n}\n\n/**\n * Defines values for IndexerExecutionStatusDetail. \\\n * {@link KnownIndexerExecutionStatusDetail} can be used interchangeably with IndexerExecutionStatusDetail,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **resetDocs**: Indicates that the reset that occurred was for a call to ResetDocs.\n */\nexport type IndexerExecutionStatusDetail = string;\n\n/** Known values of {@link IndexingMode} that the service accepts. */\nexport enum KnownIndexingMode {\n /** The indexer is indexing all documents in the datasource. */\n IndexingAllDocs = \"indexingAllDocs\",\n /** The indexer is indexing selective, reset documents in the datasource. The documents being indexed are defined on indexer status. */\n IndexingResetDocs = \"indexingResetDocs\",\n}\n\n/**\n * Defines values for IndexingMode. \\\n * {@link KnownIndexingMode} can be used interchangeably with IndexingMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **indexingAllDocs**: The indexer is indexing all documents in the datasource. \\\n * **indexingResetDocs**: The indexer is indexing selective, reset documents in the datasource. The documents being indexed are defined on indexer status.\n */\nexport type IndexingMode = string;\n\n/** Known values of {@link IndexProjectionMode} that the service accepts. */\nexport enum KnownIndexProjectionMode {\n /** The source document will be skipped from writing into the indexer's target index. */\n SkipIndexingParentDocuments = \"skipIndexingParentDocuments\",\n /** The source document will be written into the indexer's target index. This is the default pattern. */\n IncludeIndexingParentDocuments = \"includeIndexingParentDocuments\",\n}\n\n/**\n * Defines values for IndexProjectionMode. \\\n * {@link KnownIndexProjectionMode} can be used interchangeably with IndexProjectionMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **skipIndexingParentDocuments**: The source document will be skipped from writing into the indexer's target index. \\\n * **includeIndexingParentDocuments**: The source document will be written into the indexer's target index. This is the default pattern.\n */\nexport type IndexProjectionMode = string;\n\n/** Known values of {@link SearchFieldDataType} that the service accepts. */\nexport enum KnownSearchFieldDataType {\n /** Indicates that a field contains a string. */\n String = \"Edm.String\",\n /** Indicates that a field contains a 32-bit signed integer. */\n Int32 = \"Edm.Int32\",\n /** Indicates that a field contains a 64-bit signed integer. */\n Int64 = \"Edm.Int64\",\n /** Indicates that a field contains an IEEE double-precision floating point number. */\n Double = \"Edm.Double\",\n /** Indicates that a field contains a Boolean value (true or false). */\n Boolean = \"Edm.Boolean\",\n /** Indicates that a field contains a date\\/time value, including timezone information. */\n DateTimeOffset = \"Edm.DateTimeOffset\",\n /** Indicates that a field contains a geo-location in terms of longitude and latitude. */\n GeographyPoint = \"Edm.GeographyPoint\",\n /** Indicates that a field contains one or more complex objects that in turn have sub-fields of other types. */\n Complex = \"Edm.ComplexType\",\n /** Indicates that a field contains a single-precision floating point number. This is only valid when used with Collection(Edm.Single). */\n Single = \"Edm.Single\",\n /** Indicates that a field contains a half-precision floating point number. This is only valid when used with Collection(Edm.Half). */\n Half = \"Edm.Half\",\n /** Indicates that a field contains a 16-bit signed integer. This is only valid when used with Collection(Edm.Int16). */\n Int16 = \"Edm.Int16\",\n /** Indicates that a field contains a 8-bit signed integer. This is only valid when used with Collection(Edm.SByte). */\n SByte = \"Edm.SByte\",\n /** Indicates that a field contains a 8-bit unsigned integer. This is only valid when used with Collection(Edm.Byte). */\n Byte = \"Edm.Byte\",\n}\n\n/**\n * Defines values for SearchFieldDataType. \\\n * {@link KnownSearchFieldDataType} can be used interchangeably with SearchFieldDataType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Edm.String**: Indicates that a field contains a string. \\\n * **Edm.Int32**: Indicates that a field contains a 32-bit signed integer. \\\n * **Edm.Int64**: Indicates that a field contains a 64-bit signed integer. \\\n * **Edm.Double**: Indicates that a field contains an IEEE double-precision floating point number. \\\n * **Edm.Boolean**: Indicates that a field contains a Boolean value (true or false). \\\n * **Edm.DateTimeOffset**: Indicates that a field contains a date\\/time value, including timezone information. \\\n * **Edm.GeographyPoint**: Indicates that a field contains a geo-location in terms of longitude and latitude. \\\n * **Edm.ComplexType**: Indicates that a field contains one or more complex objects that in turn have sub-fields of other types. \\\n * **Edm.Single**: Indicates that a field contains a single-precision floating point number. This is only valid when used with Collection(Edm.Single). \\\n * **Edm.Half**: Indicates that a field contains a half-precision floating point number. This is only valid when used with Collection(Edm.Half). \\\n * **Edm.Int16**: Indicates that a field contains a 16-bit signed integer. This is only valid when used with Collection(Edm.Int16). \\\n * **Edm.SByte**: Indicates that a field contains a 8-bit signed integer. This is only valid when used with Collection(Edm.SByte). \\\n * **Edm.Byte**: Indicates that a field contains a 8-bit unsigned integer. This is only valid when used with Collection(Edm.Byte).\n */\nexport type SearchFieldDataType = string;\n\n/** Known values of {@link LexicalAnalyzerName} that the service accepts. */\nexport enum KnownLexicalAnalyzerName {\n /** Microsoft analyzer for Arabic. */\n ArMicrosoft = \"ar.microsoft\",\n /** Lucene analyzer for Arabic. */\n ArLucene = \"ar.lucene\",\n /** Lucene analyzer for Armenian. */\n HyLucene = \"hy.lucene\",\n /** Microsoft analyzer for Bangla. */\n BnMicrosoft = \"bn.microsoft\",\n /** Lucene analyzer for Basque. */\n EuLucene = \"eu.lucene\",\n /** Microsoft analyzer for Bulgarian. */\n BgMicrosoft = \"bg.microsoft\",\n /** Lucene analyzer for Bulgarian. */\n BgLucene = \"bg.lucene\",\n /** Microsoft analyzer for Catalan. */\n CaMicrosoft = \"ca.microsoft\",\n /** Lucene analyzer for Catalan. */\n CaLucene = \"ca.lucene\",\n /** Microsoft analyzer for Chinese (Simplified). */\n ZhHansMicrosoft = \"zh-Hans.microsoft\",\n /** Lucene analyzer for Chinese (Simplified). */\n ZhHansLucene = \"zh-Hans.lucene\",\n /** Microsoft analyzer for Chinese (Traditional). */\n ZhHantMicrosoft = \"zh-Hant.microsoft\",\n /** Lucene analyzer for Chinese (Traditional). */\n ZhHantLucene = \"zh-Hant.lucene\",\n /** Microsoft analyzer for Croatian. */\n HrMicrosoft = \"hr.microsoft\",\n /** Microsoft analyzer for Czech. */\n CsMicrosoft = \"cs.microsoft\",\n /** Lucene analyzer for Czech. */\n CsLucene = \"cs.lucene\",\n /** Microsoft analyzer for Danish. */\n DaMicrosoft = \"da.microsoft\",\n /** Lucene analyzer for Danish. */\n DaLucene = \"da.lucene\",\n /** Microsoft analyzer for Dutch. */\n NlMicrosoft = \"nl.microsoft\",\n /** Lucene analyzer for Dutch. */\n NlLucene = \"nl.lucene\",\n /** Microsoft analyzer for English. */\n EnMicrosoft = \"en.microsoft\",\n /** Lucene analyzer for English. */\n EnLucene = \"en.lucene\",\n /** Microsoft analyzer for Estonian. */\n EtMicrosoft = \"et.microsoft\",\n /** Microsoft analyzer for Finnish. */\n FiMicrosoft = \"fi.microsoft\",\n /** Lucene analyzer for Finnish. */\n FiLucene = \"fi.lucene\",\n /** Microsoft analyzer for French. */\n FrMicrosoft = \"fr.microsoft\",\n /** Lucene analyzer for French. */\n FrLucene = \"fr.lucene\",\n /** Lucene analyzer for Galician. */\n GlLucene = \"gl.lucene\",\n /** Microsoft analyzer for German. */\n DeMicrosoft = \"de.microsoft\",\n /** Lucene analyzer for German. */\n DeLucene = \"de.lucene\",\n /** Microsoft analyzer for Greek. */\n ElMicrosoft = \"el.microsoft\",\n /** Lucene analyzer for Greek. */\n ElLucene = \"el.lucene\",\n /** Microsoft analyzer for Gujarati. */\n GuMicrosoft = \"gu.microsoft\",\n /** Microsoft analyzer for Hebrew. */\n HeMicrosoft = \"he.microsoft\",\n /** Microsoft analyzer for Hindi. */\n HiMicrosoft = \"hi.microsoft\",\n /** Lucene analyzer for Hindi. */\n HiLucene = \"hi.lucene\",\n /** Microsoft analyzer for Hungarian. */\n HuMicrosoft = \"hu.microsoft\",\n /** Lucene analyzer for Hungarian. */\n HuLucene = \"hu.lucene\",\n /** Microsoft analyzer for Icelandic. */\n IsMicrosoft = \"is.microsoft\",\n /** Microsoft analyzer for Indonesian (Bahasa). */\n IdMicrosoft = \"id.microsoft\",\n /** Lucene analyzer for Indonesian. */\n IdLucene = \"id.lucene\",\n /** Lucene analyzer for Irish. */\n GaLucene = \"ga.lucene\",\n /** Microsoft analyzer for Italian. */\n ItMicrosoft = \"it.microsoft\",\n /** Lucene analyzer for Italian. */\n ItLucene = \"it.lucene\",\n /** Microsoft analyzer for Japanese. */\n JaMicrosoft = \"ja.microsoft\",\n /** Lucene analyzer for Japanese. */\n JaLucene = \"ja.lucene\",\n /** Microsoft analyzer for Kannada. */\n KnMicrosoft = \"kn.microsoft\",\n /** Microsoft analyzer for Korean. */\n KoMicrosoft = \"ko.microsoft\",\n /** Lucene analyzer for Korean. */\n KoLucene = \"ko.lucene\",\n /** Microsoft analyzer for Latvian. */\n LvMicrosoft = \"lv.microsoft\",\n /** Lucene analyzer for Latvian. */\n LvLucene = \"lv.lucene\",\n /** Microsoft analyzer for Lithuanian. */\n LtMicrosoft = \"lt.microsoft\",\n /** Microsoft analyzer for Malayalam. */\n MlMicrosoft = \"ml.microsoft\",\n /** Microsoft analyzer for Malay (Latin). */\n MsMicrosoft = \"ms.microsoft\",\n /** Microsoft analyzer for Marathi. */\n MrMicrosoft = \"mr.microsoft\",\n /** Microsoft analyzer for Norwegian (Bokmål). */\n NbMicrosoft = \"nb.microsoft\",\n /** Lucene analyzer for Norwegian. */\n NoLucene = \"no.lucene\",\n /** Lucene analyzer for Persian. */\n FaLucene = \"fa.lucene\",\n /** Microsoft analyzer for Polish. */\n PlMicrosoft = \"pl.microsoft\",\n /** Lucene analyzer for Polish. */\n PlLucene = \"pl.lucene\",\n /** Microsoft analyzer for Portuguese (Brazil). */\n PtBrMicrosoft = \"pt-BR.microsoft\",\n /** Lucene analyzer for Portuguese (Brazil). */\n PtBrLucene = \"pt-BR.lucene\",\n /** Microsoft analyzer for Portuguese (Portugal). */\n PtPtMicrosoft = \"pt-PT.microsoft\",\n /** Lucene analyzer for Portuguese (Portugal). */\n PtPtLucene = \"pt-PT.lucene\",\n /** Microsoft analyzer for Punjabi. */\n PaMicrosoft = \"pa.microsoft\",\n /** Microsoft analyzer for Romanian. */\n RoMicrosoft = \"ro.microsoft\",\n /** Lucene analyzer for Romanian. */\n RoLucene = \"ro.lucene\",\n /** Microsoft analyzer for Russian. */\n RuMicrosoft = \"ru.microsoft\",\n /** Lucene analyzer for Russian. */\n RuLucene = \"ru.lucene\",\n /** Microsoft analyzer for Serbian (Cyrillic). */\n SrCyrillicMicrosoft = \"sr-cyrillic.microsoft\",\n /** Microsoft analyzer for Serbian (Latin). */\n SrLatinMicrosoft = \"sr-latin.microsoft\",\n /** Microsoft analyzer for Slovak. */\n SkMicrosoft = \"sk.microsoft\",\n /** Microsoft analyzer for Slovenian. */\n SlMicrosoft = \"sl.microsoft\",\n /** Microsoft analyzer for Spanish. */\n EsMicrosoft = \"es.microsoft\",\n /** Lucene analyzer for Spanish. */\n EsLucene = \"es.lucene\",\n /** Microsoft analyzer for Swedish. */\n SvMicrosoft = \"sv.microsoft\",\n /** Lucene analyzer for Swedish. */\n SvLucene = \"sv.lucene\",\n /** Microsoft analyzer for Tamil. */\n TaMicrosoft = \"ta.microsoft\",\n /** Microsoft analyzer for Telugu. */\n TeMicrosoft = \"te.microsoft\",\n /** Microsoft analyzer for Thai. */\n ThMicrosoft = \"th.microsoft\",\n /** Lucene analyzer for Thai. */\n ThLucene = \"th.lucene\",\n /** Microsoft analyzer for Turkish. */\n TrMicrosoft = \"tr.microsoft\",\n /** Lucene analyzer for Turkish. */\n TrLucene = \"tr.lucene\",\n /** Microsoft analyzer for Ukrainian. */\n UkMicrosoft = \"uk.microsoft\",\n /** Microsoft analyzer for Urdu. */\n UrMicrosoft = \"ur.microsoft\",\n /** Microsoft analyzer for Vietnamese. */\n ViMicrosoft = \"vi.microsoft\",\n /** Standard Lucene analyzer. */\n StandardLucene = \"standard.lucene\",\n /** Standard ASCII Folding Lucene analyzer. See https:\\//learn.microsoft.com\\/rest\\/api\\/searchservice\\/Custom-analyzers-in-Azure-Search#Analyzers */\n StandardAsciiFoldingLucene = \"standardasciifolding.lucene\",\n /** Treats the entire content of a field as a single token. This is useful for data like zip codes, ids, and some product names. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/KeywordAnalyzer.html */\n Keyword = \"keyword\",\n /** Flexibly separates text into terms via a regular expression pattern. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/PatternAnalyzer.html */\n Pattern = \"pattern\",\n /** Divides text at non-letters and converts them to lower case. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/SimpleAnalyzer.html */\n Simple = \"simple\",\n /** Divides text at non-letters; Applies the lowercase and stopword token filters. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/StopAnalyzer.html */\n Stop = \"stop\",\n /** An analyzer that uses the whitespace tokenizer. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/WhitespaceAnalyzer.html */\n Whitespace = \"whitespace\",\n}\n\n/**\n * Defines values for LexicalAnalyzerName. \\\n * {@link KnownLexicalAnalyzerName} can be used interchangeably with LexicalAnalyzerName,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ar.microsoft**: Microsoft analyzer for Arabic. \\\n * **ar.lucene**: Lucene analyzer for Arabic. \\\n * **hy.lucene**: Lucene analyzer for Armenian. \\\n * **bn.microsoft**: Microsoft analyzer for Bangla. \\\n * **eu.lucene**: Lucene analyzer for Basque. \\\n * **bg.microsoft**: Microsoft analyzer for Bulgarian. \\\n * **bg.lucene**: Lucene analyzer for Bulgarian. \\\n * **ca.microsoft**: Microsoft analyzer for Catalan. \\\n * **ca.lucene**: Lucene analyzer for Catalan. \\\n * **zh-Hans.microsoft**: Microsoft analyzer for Chinese (Simplified). \\\n * **zh-Hans.lucene**: Lucene analyzer for Chinese (Simplified). \\\n * **zh-Hant.microsoft**: Microsoft analyzer for Chinese (Traditional). \\\n * **zh-Hant.lucene**: Lucene analyzer for Chinese (Traditional). \\\n * **hr.microsoft**: Microsoft analyzer for Croatian. \\\n * **cs.microsoft**: Microsoft analyzer for Czech. \\\n * **cs.lucene**: Lucene analyzer for Czech. \\\n * **da.microsoft**: Microsoft analyzer for Danish. \\\n * **da.lucene**: Lucene analyzer for Danish. \\\n * **nl.microsoft**: Microsoft analyzer for Dutch. \\\n * **nl.lucene**: Lucene analyzer for Dutch. \\\n * **en.microsoft**: Microsoft analyzer for English. \\\n * **en.lucene**: Lucene analyzer for English. \\\n * **et.microsoft**: Microsoft analyzer for Estonian. \\\n * **fi.microsoft**: Microsoft analyzer for Finnish. \\\n * **fi.lucene**: Lucene analyzer for Finnish. \\\n * **fr.microsoft**: Microsoft analyzer for French. \\\n * **fr.lucene**: Lucene analyzer for French. \\\n * **gl.lucene**: Lucene analyzer for Galician. \\\n * **de.microsoft**: Microsoft analyzer for German. \\\n * **de.lucene**: Lucene analyzer for German. \\\n * **el.microsoft**: Microsoft analyzer for Greek. \\\n * **el.lucene**: Lucene analyzer for Greek. \\\n * **gu.microsoft**: Microsoft analyzer for Gujarati. \\\n * **he.microsoft**: Microsoft analyzer for Hebrew. \\\n * **hi.microsoft**: Microsoft analyzer for Hindi. \\\n * **hi.lucene**: Lucene analyzer for Hindi. \\\n * **hu.microsoft**: Microsoft analyzer for Hungarian. \\\n * **hu.lucene**: Lucene analyzer for Hungarian. \\\n * **is.microsoft**: Microsoft analyzer for Icelandic. \\\n * **id.microsoft**: Microsoft analyzer for Indonesian (Bahasa). \\\n * **id.lucene**: Lucene analyzer for Indonesian. \\\n * **ga.lucene**: Lucene analyzer for Irish. \\\n * **it.microsoft**: Microsoft analyzer for Italian. \\\n * **it.lucene**: Lucene analyzer for Italian. \\\n * **ja.microsoft**: Microsoft analyzer for Japanese. \\\n * **ja.lucene**: Lucene analyzer for Japanese. \\\n * **kn.microsoft**: Microsoft analyzer for Kannada. \\\n * **ko.microsoft**: Microsoft analyzer for Korean. \\\n * **ko.lucene**: Lucene analyzer for Korean. \\\n * **lv.microsoft**: Microsoft analyzer for Latvian. \\\n * **lv.lucene**: Lucene analyzer for Latvian. \\\n * **lt.microsoft**: Microsoft analyzer for Lithuanian. \\\n * **ml.microsoft**: Microsoft analyzer for Malayalam. \\\n * **ms.microsoft**: Microsoft analyzer for Malay (Latin). \\\n * **mr.microsoft**: Microsoft analyzer for Marathi. \\\n * **nb.microsoft**: Microsoft analyzer for Norwegian (Bokmål). \\\n * **no.lucene**: Lucene analyzer for Norwegian. \\\n * **fa.lucene**: Lucene analyzer for Persian. \\\n * **pl.microsoft**: Microsoft analyzer for Polish. \\\n * **pl.lucene**: Lucene analyzer for Polish. \\\n * **pt-BR.microsoft**: Microsoft analyzer for Portuguese (Brazil). \\\n * **pt-BR.lucene**: Lucene analyzer for Portuguese (Brazil). \\\n * **pt-PT.microsoft**: Microsoft analyzer for Portuguese (Portugal). \\\n * **pt-PT.lucene**: Lucene analyzer for Portuguese (Portugal). \\\n * **pa.microsoft**: Microsoft analyzer for Punjabi. \\\n * **ro.microsoft**: Microsoft analyzer for Romanian. \\\n * **ro.lucene**: Lucene analyzer for Romanian. \\\n * **ru.microsoft**: Microsoft analyzer for Russian. \\\n * **ru.lucene**: Lucene analyzer for Russian. \\\n * **sr-cyrillic.microsoft**: Microsoft analyzer for Serbian (Cyrillic). \\\n * **sr-latin.microsoft**: Microsoft analyzer for Serbian (Latin). \\\n * **sk.microsoft**: Microsoft analyzer for Slovak. \\\n * **sl.microsoft**: Microsoft analyzer for Slovenian. \\\n * **es.microsoft**: Microsoft analyzer for Spanish. \\\n * **es.lucene**: Lucene analyzer for Spanish. \\\n * **sv.microsoft**: Microsoft analyzer for Swedish. \\\n * **sv.lucene**: Lucene analyzer for Swedish. \\\n * **ta.microsoft**: Microsoft analyzer for Tamil. \\\n * **te.microsoft**: Microsoft analyzer for Telugu. \\\n * **th.microsoft**: Microsoft analyzer for Thai. \\\n * **th.lucene**: Lucene analyzer for Thai. \\\n * **tr.microsoft**: Microsoft analyzer for Turkish. \\\n * **tr.lucene**: Lucene analyzer for Turkish. \\\n * **uk.microsoft**: Microsoft analyzer for Ukrainian. \\\n * **ur.microsoft**: Microsoft analyzer for Urdu. \\\n * **vi.microsoft**: Microsoft analyzer for Vietnamese. \\\n * **standard.lucene**: Standard Lucene analyzer. \\\n * **standardasciifolding.lucene**: Standard ASCII Folding Lucene analyzer. See https:\\/\\/learn.microsoft.com\\/rest\\/api\\/searchservice\\/Custom-analyzers-in-Azure-Search#Analyzers \\\n * **keyword**: Treats the entire content of a field as a single token. This is useful for data like zip codes, ids, and some product names. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/KeywordAnalyzer.html \\\n * **pattern**: Flexibly separates text into terms via a regular expression pattern. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/PatternAnalyzer.html \\\n * **simple**: Divides text at non-letters and converts them to lower case. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/SimpleAnalyzer.html \\\n * **stop**: Divides text at non-letters; Applies the lowercase and stopword token filters. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/StopAnalyzer.html \\\n * **whitespace**: An analyzer that uses the whitespace tokenizer. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/WhitespaceAnalyzer.html\n */\nexport type LexicalAnalyzerName = string;\n\n/** Known values of {@link LexicalNormalizerName} that the service accepts. */\nexport enum KnownLexicalNormalizerName {\n /** Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/ASCIIFoldingFilter.html */\n AsciiFolding = \"asciifolding\",\n /** Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/util\\/ElisionFilter.html */\n Elision = \"elision\",\n /** Normalizes token text to lowercase. See https:\\//lucene.apache.org\\/core\\/6_6_1\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/LowerCaseFilter.html */\n Lowercase = \"lowercase\",\n /** Standard normalizer, which consists of lowercase and asciifolding. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/reverse\\/ReverseStringFilter.html */\n Standard = \"standard\",\n /** Normalizes token text to uppercase. See https:\\//lucene.apache.org\\/core\\/6_6_1\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/UpperCaseFilter.html */\n Uppercase = \"uppercase\",\n}\n\n/**\n * Defines values for LexicalNormalizerName. \\\n * {@link KnownLexicalNormalizerName} can be used interchangeably with LexicalNormalizerName,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **asciifolding**: Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/ASCIIFoldingFilter.html \\\n * **elision**: Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/util\\/ElisionFilter.html \\\n * **lowercase**: Normalizes token text to lowercase. See https:\\/\\/lucene.apache.org\\/core\\/6_6_1\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/LowerCaseFilter.html \\\n * **standard**: Standard normalizer, which consists of lowercase and asciifolding. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/reverse\\/ReverseStringFilter.html \\\n * **uppercase**: Normalizes token text to uppercase. See https:\\/\\/lucene.apache.org\\/core\\/6_6_1\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/UpperCaseFilter.html\n */\nexport type LexicalNormalizerName = string;\n\n/** Known values of {@link VectorEncodingFormat} that the service accepts. */\nexport enum KnownVectorEncodingFormat {\n /** Encoding format representing bits packed into a wider data type. */\n PackedBit = \"packedBit\",\n}\n\n/**\n * Defines values for VectorEncodingFormat. \\\n * {@link KnownVectorEncodingFormat} can be used interchangeably with VectorEncodingFormat,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **packedBit**: Encoding format representing bits packed into a wider data type.\n */\nexport type VectorEncodingFormat = string;\n\n/** Known values of {@link VectorSearchAlgorithmKind} that the service accepts. */\nexport enum KnownVectorSearchAlgorithmKind {\n /** HNSW (Hierarchical Navigable Small World), a type of approximate nearest neighbors algorithm. */\n Hnsw = \"hnsw\",\n /** Exhaustive KNN algorithm which will perform brute-force search. */\n ExhaustiveKnn = \"exhaustiveKnn\",\n}\n\n/**\n * Defines values for VectorSearchAlgorithmKind. \\\n * {@link KnownVectorSearchAlgorithmKind} can be used interchangeably with VectorSearchAlgorithmKind,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **hnsw**: HNSW (Hierarchical Navigable Small World), a type of approximate nearest neighbors algorithm. \\\n * **exhaustiveKnn**: Exhaustive KNN algorithm which will perform brute-force search.\n */\nexport type VectorSearchAlgorithmKind = string;\n\n/** Known values of {@link VectorSearchVectorizerKind} that the service accepts. */\nexport enum KnownVectorSearchVectorizerKind {\n /** Generate embeddings using an Azure OpenAI resource at query time. */\n AzureOpenAI = \"azureOpenAI\",\n /** Generate embeddings using a custom web endpoint at query time. */\n CustomWebApi = \"customWebApi\",\n /** Generate embeddings for an image or text input at query time using the Azure AI Services Vision Vectorize API. */\n AIServicesVision = \"aiServicesVision\",\n /** Generate embeddings using an Azure Machine Learning endpoint deployed via the Azure AI Studio Model Catalog at query time. */\n AML = \"aml\",\n}\n\n/**\n * Defines values for VectorSearchVectorizerKind. \\\n * {@link KnownVectorSearchVectorizerKind} can be used interchangeably with VectorSearchVectorizerKind,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **azureOpenAI**: Generate embeddings using an Azure OpenAI resource at query time. \\\n * **customWebApi**: Generate embeddings using a custom web endpoint at query time. \\\n * **aiServicesVision**: Generate embeddings for an image or text input at query time using the Azure AI Services Vision Vectorize API. \\\n * **aml**: Generate embeddings using an Azure Machine Learning endpoint deployed via the Azure AI Studio Model Catalog at query time.\n */\nexport type VectorSearchVectorizerKind = string;\n\n/** Known values of {@link VectorSearchCompressionKind} that the service accepts. */\nexport enum KnownVectorSearchCompressionKind {\n /** Scalar Quantization, a type of compression method. In scalar quantization, the original vectors values are compressed to a narrower type by discretizing and representing each component of a vector using a reduced set of quantized values, thereby reducing the overall data size. */\n ScalarQuantization = \"scalarQuantization\",\n /** Binary Quantization, a type of compression method. In binary quantization, the original vectors values are compressed to the narrower binary type by discretizing and representing each component of a vector using binary values, thereby reducing the overall data size. */\n BinaryQuantization = \"binaryQuantization\",\n}\n\n/**\n * Defines values for VectorSearchCompressionKind. \\\n * {@link KnownVectorSearchCompressionKind} can be used interchangeably with VectorSearchCompressionKind,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **scalarQuantization**: Scalar Quantization, a type of compression method. In scalar quantization, the original vectors values are compressed to a narrower type by discretizing and representing each component of a vector using a reduced set of quantized values, thereby reducing the overall data size. \\\n * **binaryQuantization**: Binary Quantization, a type of compression method. In binary quantization, the original vectors values are compressed to the narrower binary type by discretizing and representing each component of a vector using binary values, thereby reducing the overall data size.\n */\nexport type VectorSearchCompressionKind = string;\n\n/** Known values of {@link TokenFilterName} that the service accepts. */\nexport enum KnownTokenFilterName {\n /** A token filter that applies the Arabic normalizer to normalize the orthography. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/ar\\/ArabicNormalizationFilter.html */\n ArabicNormalization = \"arabic_normalization\",\n /** Strips all characters after an apostrophe (including the apostrophe itself). See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/tr\\/ApostropheFilter.html */\n Apostrophe = \"apostrophe\",\n /** Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/ASCIIFoldingFilter.html */\n AsciiFolding = \"asciifolding\",\n /** Forms bigrams of CJK terms that are generated from the standard tokenizer. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/cjk\\/CJKBigramFilter.html */\n CjkBigram = \"cjk_bigram\",\n /** Normalizes CJK width differences. Folds fullwidth ASCII variants into the equivalent basic Latin, and half-width Katakana variants into the equivalent Kana. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/cjk\\/CJKWidthFilter.html */\n CjkWidth = \"cjk_width\",\n /** Removes English possessives, and dots from acronyms. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/standard\\/ClassicFilter.html */\n Classic = \"classic\",\n /** Construct bigrams for frequently occurring terms while indexing. Single terms are still indexed too, with bigrams overlaid. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/commongrams\\/CommonGramsFilter.html */\n CommonGram = \"common_grams\",\n /** Generates n-grams of the given size(s) starting from the front or the back of an input token. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/ngram\\/EdgeNGramTokenFilter.html */\n EdgeNGram = \"edgeNGram_v2\",\n /** Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/util\\/ElisionFilter.html */\n Elision = \"elision\",\n /** Normalizes German characters according to the heuristics of the German2 snowball algorithm. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/de\\/GermanNormalizationFilter.html */\n GermanNormalization = \"german_normalization\",\n /** Normalizes text in Hindi to remove some differences in spelling variations. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/hi\\/HindiNormalizationFilter.html */\n HindiNormalization = \"hindi_normalization\",\n /** Normalizes the Unicode representation of text in Indian languages. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/in\\/IndicNormalizationFilter.html */\n IndicNormalization = \"indic_normalization\",\n /** Emits each incoming token twice, once as keyword and once as non-keyword. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/KeywordRepeatFilter.html */\n KeywordRepeat = \"keyword_repeat\",\n /** A high-performance kstem filter for English. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/en\\/KStemFilter.html */\n KStem = \"kstem\",\n /** Removes words that are too long or too short. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/LengthFilter.html */\n Length = \"length\",\n /** Limits the number of tokens while indexing. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/LimitTokenCountFilter.html */\n Limit = \"limit\",\n /** Normalizes token text to lower case. See https:\\//lucene.apache.org\\/core\\/6_6_1\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/LowerCaseFilter.html */\n Lowercase = \"lowercase\",\n /** Generates n-grams of the given size(s). See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/ngram\\/NGramTokenFilter.html */\n NGram = \"nGram_v2\",\n /** Applies normalization for Persian. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/fa\\/PersianNormalizationFilter.html */\n PersianNormalization = \"persian_normalization\",\n /** Create tokens for phonetic matches. See https:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-phonetic\\/org\\/apache\\/lucene\\/analysis\\/phonetic\\/package-tree.html */\n Phonetic = \"phonetic\",\n /** Uses the Porter stemming algorithm to transform the token stream. See http:\\//tartarus.org\\/~martin\\/PorterStemmer */\n PorterStem = \"porter_stem\",\n /** Reverses the token string. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/reverse\\/ReverseStringFilter.html */\n Reverse = \"reverse\",\n /** Normalizes use of the interchangeable Scandinavian characters. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/ScandinavianNormalizationFilter.html */\n ScandinavianNormalization = \"scandinavian_normalization\",\n /** Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also discriminates against use of double vowels aa, ae, ao, oe and oo, leaving just the first one. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/ScandinavianFoldingFilter.html */\n ScandinavianFoldingNormalization = \"scandinavian_folding\",\n /** Creates combinations of tokens as a single token. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/shingle\\/ShingleFilter.html */\n Shingle = \"shingle\",\n /** A filter that stems words using a Snowball-generated stemmer. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/snowball\\/SnowballFilter.html */\n Snowball = \"snowball\",\n /** Normalizes the Unicode representation of Sorani text. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/ckb\\/SoraniNormalizationFilter.html */\n SoraniNormalization = \"sorani_normalization\",\n /** Language specific stemming filter. See https:\\//learn.microsoft.com\\/rest\\/api\\/searchservice\\/Custom-analyzers-in-Azure-Search#TokenFilters */\n Stemmer = \"stemmer\",\n /** Removes stop words from a token stream. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/StopFilter.html */\n Stopwords = \"stopwords\",\n /** Trims leading and trailing whitespace from tokens. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/TrimFilter.html */\n Trim = \"trim\",\n /** Truncates the terms to a specific length. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/TruncateTokenFilter.html */\n Truncate = \"truncate\",\n /** Filters out tokens with same text as the previous token. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/RemoveDuplicatesTokenFilter.html */\n Unique = \"unique\",\n /** Normalizes token text to upper case. See https:\\//lucene.apache.org\\/core\\/6_6_1\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/UpperCaseFilter.html */\n Uppercase = \"uppercase\",\n /** Splits words into subwords and performs optional transformations on subword groups. */\n WordDelimiter = \"word_delimiter\",\n}\n\n/**\n * Defines values for TokenFilterName. \\\n * {@link KnownTokenFilterName} can be used interchangeably with TokenFilterName,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **arabic_normalization**: A token filter that applies the Arabic normalizer to normalize the orthography. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/ar\\/ArabicNormalizationFilter.html \\\n * **apostrophe**: Strips all characters after an apostrophe (including the apostrophe itself). See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/tr\\/ApostropheFilter.html \\\n * **asciifolding**: Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/ASCIIFoldingFilter.html \\\n * **cjk_bigram**: Forms bigrams of CJK terms that are generated from the standard tokenizer. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/cjk\\/CJKBigramFilter.html \\\n * **cjk_width**: Normalizes CJK width differences. Folds fullwidth ASCII variants into the equivalent basic Latin, and half-width Katakana variants into the equivalent Kana. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/cjk\\/CJKWidthFilter.html \\\n * **classic**: Removes English possessives, and dots from acronyms. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/standard\\/ClassicFilter.html \\\n * **common_grams**: Construct bigrams for frequently occurring terms while indexing. Single terms are still indexed too, with bigrams overlaid. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/commongrams\\/CommonGramsFilter.html \\\n * **edgeNGram_v2**: Generates n-grams of the given size(s) starting from the front or the back of an input token. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/ngram\\/EdgeNGramTokenFilter.html \\\n * **elision**: Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/util\\/ElisionFilter.html \\\n * **german_normalization**: Normalizes German characters according to the heuristics of the German2 snowball algorithm. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/de\\/GermanNormalizationFilter.html \\\n * **hindi_normalization**: Normalizes text in Hindi to remove some differences in spelling variations. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/hi\\/HindiNormalizationFilter.html \\\n * **indic_normalization**: Normalizes the Unicode representation of text in Indian languages. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/in\\/IndicNormalizationFilter.html \\\n * **keyword_repeat**: Emits each incoming token twice, once as keyword and once as non-keyword. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/KeywordRepeatFilter.html \\\n * **kstem**: A high-performance kstem filter for English. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/en\\/KStemFilter.html \\\n * **length**: Removes words that are too long or too short. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/LengthFilter.html \\\n * **limit**: Limits the number of tokens while indexing. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/LimitTokenCountFilter.html \\\n * **lowercase**: Normalizes token text to lower case. See https:\\/\\/lucene.apache.org\\/core\\/6_6_1\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/LowerCaseFilter.html \\\n * **nGram_v2**: Generates n-grams of the given size(s). See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/ngram\\/NGramTokenFilter.html \\\n * **persian_normalization**: Applies normalization for Persian. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/fa\\/PersianNormalizationFilter.html \\\n * **phonetic**: Create tokens for phonetic matches. See https:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-phonetic\\/org\\/apache\\/lucene\\/analysis\\/phonetic\\/package-tree.html \\\n * **porter_stem**: Uses the Porter stemming algorithm to transform the token stream. See http:\\/\\/tartarus.org\\/~martin\\/PorterStemmer \\\n * **reverse**: Reverses the token string. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/reverse\\/ReverseStringFilter.html \\\n * **scandinavian_normalization**: Normalizes use of the interchangeable Scandinavian characters. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/ScandinavianNormalizationFilter.html \\\n * **scandinavian_folding**: Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also discriminates against use of double vowels aa, ae, ao, oe and oo, leaving just the first one. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/ScandinavianFoldingFilter.html \\\n * **shingle**: Creates combinations of tokens as a single token. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/shingle\\/ShingleFilter.html \\\n * **snowball**: A filter that stems words using a Snowball-generated stemmer. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/snowball\\/SnowballFilter.html \\\n * **sorani_normalization**: Normalizes the Unicode representation of Sorani text. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/ckb\\/SoraniNormalizationFilter.html \\\n * **stemmer**: Language specific stemming filter. See https:\\/\\/learn.microsoft.com\\/rest\\/api\\/searchservice\\/Custom-analyzers-in-Azure-Search#TokenFilters \\\n * **stopwords**: Removes stop words from a token stream. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/StopFilter.html \\\n * **trim**: Trims leading and trailing whitespace from tokens. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/TrimFilter.html \\\n * **truncate**: Truncates the terms to a specific length. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/TruncateTokenFilter.html \\\n * **unique**: Filters out tokens with same text as the previous token. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/RemoveDuplicatesTokenFilter.html \\\n * **uppercase**: Normalizes token text to upper case. See https:\\/\\/lucene.apache.org\\/core\\/6_6_1\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/UpperCaseFilter.html \\\n * **word_delimiter**: Splits words into subwords and performs optional transformations on subword groups.\n */\nexport type TokenFilterName = string;\n\n/** Known values of {@link CharFilterName} that the service accepts. */\nexport enum KnownCharFilterName {\n /** A character filter that attempts to strip out HTML constructs. See https:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/charfilter\\/HTMLStripCharFilter.html */\n HtmlStrip = \"html_strip\",\n}\n\n/**\n * Defines values for CharFilterName. \\\n * {@link KnownCharFilterName} can be used interchangeably with CharFilterName,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **html_strip**: A character filter that attempts to strip out HTML constructs. See https:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/charfilter\\/HTMLStripCharFilter.html\n */\nexport type CharFilterName = string;\n\n/** Known values of {@link VectorSearchAlgorithmMetric} that the service accepts. */\nexport enum KnownVectorSearchAlgorithmMetric {\n /** Measures the angle between vectors to quantify their similarity, disregarding magnitude. The smaller the angle, the closer the similarity. */\n Cosine = \"cosine\",\n /** Computes the straight-line distance between vectors in a multi-dimensional space. The smaller the distance, the closer the similarity. */\n Euclidean = \"euclidean\",\n /** Calculates the sum of element-wise products to gauge alignment and magnitude similarity. The larger and more positive, the closer the similarity. */\n DotProduct = \"dotProduct\",\n /** Only applicable to bit-packed binary data types. Determines dissimilarity by counting differing positions in binary vectors. The fewer differences, the closer the similarity. */\n Hamming = \"hamming\",\n}\n\n/**\n * Defines values for VectorSearchAlgorithmMetric. \\\n * {@link KnownVectorSearchAlgorithmMetric} can be used interchangeably with VectorSearchAlgorithmMetric,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **cosine**: Measures the angle between vectors to quantify their similarity, disregarding magnitude. The smaller the angle, the closer the similarity. \\\n * **euclidean**: Computes the straight-line distance between vectors in a multi-dimensional space. The smaller the distance, the closer the similarity. \\\n * **dotProduct**: Calculates the sum of element-wise products to gauge alignment and magnitude similarity. The larger and more positive, the closer the similarity. \\\n * **hamming**: Only applicable to bit-packed binary data types. Determines dissimilarity by counting differing positions in binary vectors. The fewer differences, the closer the similarity.\n */\nexport type VectorSearchAlgorithmMetric = string;\n\n/** Known values of {@link VectorSearchCompressionTarget} that the service accepts. */\nexport enum KnownVectorSearchCompressionTarget {\n /** Int8 */\n Int8 = \"int8\",\n}\n\n/**\n * Defines values for VectorSearchCompressionTarget. \\\n * {@link KnownVectorSearchCompressionTarget} can be used interchangeably with VectorSearchCompressionTarget,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **int8**\n */\nexport type VectorSearchCompressionTarget = string;\n\n/** Known values of {@link AzureOpenAIModelName} that the service accepts. */\nexport enum KnownAzureOpenAIModelName {\n /** TextEmbeddingAda002 */\n TextEmbeddingAda002 = \"text-embedding-ada-002\",\n /** TextEmbedding3Large */\n TextEmbedding3Large = \"text-embedding-3-large\",\n /** TextEmbedding3Small */\n TextEmbedding3Small = \"text-embedding-3-small\",\n}\n\n/**\n * Defines values for AzureOpenAIModelName. \\\n * {@link KnownAzureOpenAIModelName} can be used interchangeably with AzureOpenAIModelName,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **text-embedding-ada-002** \\\n * **text-embedding-3-large** \\\n * **text-embedding-3-small**\n */\nexport type AzureOpenAIModelName = string;\n\n/** Known values of {@link AIStudioModelCatalogName} that the service accepts. */\nexport enum KnownAIStudioModelCatalogName {\n /** OpenAIClipImageTextEmbeddingsVitBasePatch32 */\n OpenAIClipImageTextEmbeddingsVitBasePatch32 = \"OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32\",\n /** OpenAIClipImageTextEmbeddingsViTLargePatch14336 */\n OpenAIClipImageTextEmbeddingsViTLargePatch14336 = \"OpenAI-CLIP-Image-Text-Embeddings-ViT-Large-Patch14-336\",\n /** FacebookDinoV2ImageEmbeddingsViTBase */\n FacebookDinoV2ImageEmbeddingsViTBase = \"Facebook-DinoV2-Image-Embeddings-ViT-Base\",\n /** FacebookDinoV2ImageEmbeddingsViTGiant */\n FacebookDinoV2ImageEmbeddingsViTGiant = \"Facebook-DinoV2-Image-Embeddings-ViT-Giant\",\n /** CohereEmbedV3English */\n CohereEmbedV3English = \"Cohere-embed-v3-english\",\n /** CohereEmbedV3Multilingual */\n CohereEmbedV3Multilingual = \"Cohere-embed-v3-multilingual\",\n}\n\n/**\n * Defines values for AIStudioModelCatalogName. \\\n * {@link KnownAIStudioModelCatalogName} can be used interchangeably with AIStudioModelCatalogName,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **OpenAI-CLIP-Image-Text-Embeddings-vit-base-patch32** \\\n * **OpenAI-CLIP-Image-Text-Embeddings-ViT-Large-Patch14-336** \\\n * **Facebook-DinoV2-Image-Embeddings-ViT-Base** \\\n * **Facebook-DinoV2-Image-Embeddings-ViT-Giant** \\\n * **Cohere-embed-v3-english** \\\n * **Cohere-embed-v3-multilingual**\n */\nexport type AIStudioModelCatalogName = string;\n\n/** Known values of {@link KeyPhraseExtractionSkillLanguage} that the service accepts. */\nexport enum KnownKeyPhraseExtractionSkillLanguage {\n /** Danish */\n Da = \"da\",\n /** Dutch */\n Nl = \"nl\",\n /** English */\n En = \"en\",\n /** Finnish */\n Fi = \"fi\",\n /** French */\n Fr = \"fr\",\n /** German */\n De = \"de\",\n /** Italian */\n It = \"it\",\n /** Japanese */\n Ja = \"ja\",\n /** Korean */\n Ko = \"ko\",\n /** Norwegian (Bokmaal) */\n No = \"no\",\n /** Polish */\n Pl = \"pl\",\n /** Portuguese (Portugal) */\n PtPT = \"pt-PT\",\n /** Portuguese (Brazil) */\n PtBR = \"pt-BR\",\n /** Russian */\n Ru = \"ru\",\n /** Spanish */\n Es = \"es\",\n /** Swedish */\n Sv = \"sv\",\n}\n\n/**\n * Defines values for KeyPhraseExtractionSkillLanguage. \\\n * {@link KnownKeyPhraseExtractionSkillLanguage} can be used interchangeably with KeyPhraseExtractionSkillLanguage,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **da**: Danish \\\n * **nl**: Dutch \\\n * **en**: English \\\n * **fi**: Finnish \\\n * **fr**: French \\\n * **de**: German \\\n * **it**: Italian \\\n * **ja**: Japanese \\\n * **ko**: Korean \\\n * **no**: Norwegian (Bokmaal) \\\n * **pl**: Polish \\\n * **pt-PT**: Portuguese (Portugal) \\\n * **pt-BR**: Portuguese (Brazil) \\\n * **ru**: Russian \\\n * **es**: Spanish \\\n * **sv**: Swedish\n */\nexport type KeyPhraseExtractionSkillLanguage = string;\n\n/** Known values of {@link OcrSkillLanguage} that the service accepts. */\nexport enum KnownOcrSkillLanguage {\n /** Afrikaans */\n Af = \"af\",\n /** Albanian */\n Sq = \"sq\",\n /** Angika (Devanagiri) */\n Anp = \"anp\",\n /** Arabic */\n Ar = \"ar\",\n /** Asturian */\n Ast = \"ast\",\n /** Awadhi-Hindi (Devanagiri) */\n Awa = \"awa\",\n /** Azerbaijani (Latin) */\n Az = \"az\",\n /** Bagheli */\n Bfy = \"bfy\",\n /** Basque */\n Eu = \"eu\",\n /** Belarusian (Cyrillic and Latin) */\n Be = \"be\",\n /** Belarusian (Cyrillic) */\n BeCyrl = \"be-cyrl\",\n /** Belarusian (Latin) */\n BeLatn = \"be-latn\",\n /** Bhojpuri-Hindi (Devanagiri) */\n Bho = \"bho\",\n /** Bislama */\n Bi = \"bi\",\n /** Bodo (Devanagiri) */\n Brx = \"brx\",\n /** Bosnian Latin */\n Bs = \"bs\",\n /** Brajbha */\n Bra = \"bra\",\n /** Breton */\n Br = \"br\",\n /** Bulgarian */\n Bg = \"bg\",\n /** Bundeli */\n Bns = \"bns\",\n /** Buryat (Cyrillic) */\n Bua = \"bua\",\n /** Catalan */\n Ca = \"ca\",\n /** Cebuano */\n Ceb = \"ceb\",\n /** Chamling */\n Rab = \"rab\",\n /** Chamorro */\n Ch = \"ch\",\n /** Chhattisgarhi (Devanagiri) */\n Hne = \"hne\",\n /** Chinese Simplified */\n ZhHans = \"zh-Hans\",\n /** Chinese Traditional */\n ZhHant = \"zh-Hant\",\n /** Cornish */\n Kw = \"kw\",\n /** Corsican */\n Co = \"co\",\n /** Crimean Tatar (Latin) */\n Crh = \"crh\",\n /** Croatian */\n Hr = \"hr\",\n /** Czech */\n Cs = \"cs\",\n /** Danish */\n Da = \"da\",\n /** Dari */\n Prs = \"prs\",\n /** Dhimal (Devanagiri) */\n Dhi = \"dhi\",\n /** Dogri (Devanagiri) */\n Doi = \"doi\",\n /** Dutch */\n Nl = \"nl\",\n /** English */\n En = \"en\",\n /** Erzya (Cyrillic) */\n Myv = \"myv\",\n /** Estonian */\n Et = \"et\",\n /** Faroese */\n Fo = \"fo\",\n /** Fijian */\n Fj = \"fj\",\n /** Filipino */\n Fil = \"fil\",\n /** Finnish */\n Fi = \"fi\",\n /** French */\n Fr = \"fr\",\n /** Frulian */\n Fur = \"fur\",\n /** Gagauz (Latin) */\n Gag = \"gag\",\n /** Galician */\n Gl = \"gl\",\n /** German */\n De = \"de\",\n /** Gilbertese */\n Gil = \"gil\",\n /** Gondi (Devanagiri) */\n Gon = \"gon\",\n /** Greek */\n El = \"el\",\n /** Greenlandic */\n Kl = \"kl\",\n /** Gurung (Devanagiri) */\n Gvr = \"gvr\",\n /** Haitian Creole */\n Ht = \"ht\",\n /** Halbi (Devanagiri) */\n Hlb = \"hlb\",\n /** Hani */\n Hni = \"hni\",\n /** Haryanvi */\n Bgc = \"bgc\",\n /** Hawaiian */\n Haw = \"haw\",\n /** Hindi */\n Hi = \"hi\",\n /** Hmong Daw (Latin) */\n Mww = \"mww\",\n /** Ho (Devanagiri) */\n Hoc = \"hoc\",\n /** Hungarian */\n Hu = \"hu\",\n /** Icelandic */\n Is = \"is\",\n /** Inari Sami */\n Smn = \"smn\",\n /** Indonesian */\n Id = \"id\",\n /** Interlingua */\n Ia = \"ia\",\n /** Inuktitut (Latin) */\n Iu = \"iu\",\n /** Irish */\n Ga = \"ga\",\n /** Italian */\n It = \"it\",\n /** Japanese */\n Ja = \"ja\",\n /** Jaunsari (Devanagiri) */\n Jns = \"Jns\",\n /** Javanese */\n Jv = \"jv\",\n /** Kabuverdianu */\n Kea = \"kea\",\n /** Kachin (Latin) */\n Kac = \"kac\",\n /** Kangri (Devanagiri) */\n Xnr = \"xnr\",\n /** Karachay-Balkar */\n Krc = \"krc\",\n /** Kara-Kalpak (Cyrillic) */\n KaaCyrl = \"kaa-cyrl\",\n /** Kara-Kalpak (Latin) */\n Kaa = \"kaa\",\n /** Kashubian */\n Csb = \"csb\",\n /** Kazakh (Cyrillic) */\n KkCyrl = \"kk-cyrl\",\n /** Kazakh (Latin) */\n KkLatn = \"kk-latn\",\n /** Khaling */\n Klr = \"klr\",\n /** Khasi */\n Kha = \"kha\",\n /** K'iche' */\n Quc = \"quc\",\n /** Korean */\n Ko = \"ko\",\n /** Korku */\n Kfq = \"kfq\",\n /** Koryak */\n Kpy = \"kpy\",\n /** Kosraean */\n Kos = \"kos\",\n /** Kumyk (Cyrillic) */\n Kum = \"kum\",\n /** Kurdish (Arabic) */\n KuArab = \"ku-arab\",\n /** Kurdish (Latin) */\n KuLatn = \"ku-latn\",\n /** Kurukh (Devanagiri) */\n Kru = \"kru\",\n /** Kyrgyz (Cyrillic) */\n Ky = \"ky\",\n /** Lakota */\n Lkt = \"lkt\",\n /** Latin */\n La = \"la\",\n /** Lithuanian */\n Lt = \"lt\",\n /** Lower Sorbian */\n Dsb = \"dsb\",\n /** Lule Sami */\n Smj = \"smj\",\n /** Luxembourgish */\n Lb = \"lb\",\n /** Mahasu Pahari (Devanagiri) */\n Bfz = \"bfz\",\n /** Malay (Latin) */\n Ms = \"ms\",\n /** Maltese */\n Mt = \"mt\",\n /** Malto (Devanagiri) */\n Kmj = \"kmj\",\n /** Manx */\n Gv = \"gv\",\n /** Maori */\n Mi = \"mi\",\n /** Marathi */\n Mr = \"mr\",\n /** Mongolian (Cyrillic) */\n Mn = \"mn\",\n /** Montenegrin (Cyrillic) */\n CnrCyrl = \"cnr-cyrl\",\n /** Montenegrin (Latin) */\n CnrLatn = \"cnr-latn\",\n /** Neapolitan */\n Nap = \"nap\",\n /** Nepali */\n Ne = \"ne\",\n /** Niuean */\n Niu = \"niu\",\n /** Nogay */\n Nog = \"nog\",\n /** Northern Sami (Latin) */\n Sme = \"sme\",\n /** Norwegian */\n Nb = \"nb\",\n /** Norwegian */\n No = \"no\",\n /** Occitan */\n Oc = \"oc\",\n /** Ossetic */\n Os = \"os\",\n /** Pashto */\n Ps = \"ps\",\n /** Persian */\n Fa = \"fa\",\n /** Polish */\n Pl = \"pl\",\n /** Portuguese */\n Pt = \"pt\",\n /** Punjabi (Arabic) */\n Pa = \"pa\",\n /** Ripuarian */\n Ksh = \"ksh\",\n /** Romanian */\n Ro = \"ro\",\n /** Romansh */\n Rm = \"rm\",\n /** Russian */\n Ru = \"ru\",\n /** Sadri (Devanagiri) */\n Sck = \"sck\",\n /** Samoan (Latin) */\n Sm = \"sm\",\n /** Sanskrit (Devanagiri) */\n Sa = \"sa\",\n /** Santali (Devanagiri) */\n Sat = \"sat\",\n /** Scots */\n Sco = \"sco\",\n /** Scottish Gaelic */\n Gd = \"gd\",\n /** Serbian (Latin) */\n Sr = \"sr\",\n /** Serbian (Cyrillic) */\n SrCyrl = \"sr-Cyrl\",\n /** Serbian (Latin) */\n SrLatn = \"sr-Latn\",\n /** Sherpa (Devanagiri) */\n Xsr = \"xsr\",\n /** Sirmauri (Devanagiri) */\n Srx = \"srx\",\n /** Skolt Sami */\n Sms = \"sms\",\n /** Slovak */\n Sk = \"sk\",\n /** Slovenian */\n Sl = \"sl\",\n /** Somali (Arabic) */\n So = \"so\",\n /** Southern Sami */\n Sma = \"sma\",\n /** Spanish */\n Es = \"es\",\n /** Swahili (Latin) */\n Sw = \"sw\",\n /** Swedish */\n Sv = \"sv\",\n /** Tajik (Cyrillic) */\n Tg = \"tg\",\n /** Tatar (Latin) */\n Tt = \"tt\",\n /** Tetum */\n Tet = \"tet\",\n /** Thangmi */\n Thf = \"thf\",\n /** Tongan */\n To = \"to\",\n /** Turkish */\n Tr = \"tr\",\n /** Turkmen (Latin) */\n Tk = \"tk\",\n /** Tuvan */\n Tyv = \"tyv\",\n /** Upper Sorbian */\n Hsb = \"hsb\",\n /** Urdu */\n Ur = \"ur\",\n /** Uyghur (Arabic) */\n Ug = \"ug\",\n /** Uzbek (Arabic) */\n UzArab = \"uz-arab\",\n /** Uzbek (Cyrillic) */\n UzCyrl = \"uz-cyrl\",\n /** Uzbek (Latin) */\n Uz = \"uz\",\n /** Volapük */\n Vo = \"vo\",\n /** Walser */\n Wae = \"wae\",\n /** Welsh */\n Cy = \"cy\",\n /** Western Frisian */\n Fy = \"fy\",\n /** Yucatec Maya */\n Yua = \"yua\",\n /** Zhuang */\n Za = \"za\",\n /** Zulu */\n Zu = \"zu\",\n /** Unknown (All) */\n Unk = \"unk\",\n}\n\n/**\n * Defines values for OcrSkillLanguage. \\\n * {@link KnownOcrSkillLanguage} can be used interchangeably with OcrSkillLanguage,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **af**: Afrikaans \\\n * **sq**: Albanian \\\n * **anp**: Angika (Devanagiri) \\\n * **ar**: Arabic \\\n * **ast**: Asturian \\\n * **awa**: Awadhi-Hindi (Devanagiri) \\\n * **az**: Azerbaijani (Latin) \\\n * **bfy**: Bagheli \\\n * **eu**: Basque \\\n * **be**: Belarusian (Cyrillic and Latin) \\\n * **be-cyrl**: Belarusian (Cyrillic) \\\n * **be-latn**: Belarusian (Latin) \\\n * **bho**: Bhojpuri-Hindi (Devanagiri) \\\n * **bi**: Bislama \\\n * **brx**: Bodo (Devanagiri) \\\n * **bs**: Bosnian Latin \\\n * **bra**: Brajbha \\\n * **br**: Breton \\\n * **bg**: Bulgarian \\\n * **bns**: Bundeli \\\n * **bua**: Buryat (Cyrillic) \\\n * **ca**: Catalan \\\n * **ceb**: Cebuano \\\n * **rab**: Chamling \\\n * **ch**: Chamorro \\\n * **hne**: Chhattisgarhi (Devanagiri) \\\n * **zh-Hans**: Chinese Simplified \\\n * **zh-Hant**: Chinese Traditional \\\n * **kw**: Cornish \\\n * **co**: Corsican \\\n * **crh**: Crimean Tatar (Latin) \\\n * **hr**: Croatian \\\n * **cs**: Czech \\\n * **da**: Danish \\\n * **prs**: Dari \\\n * **dhi**: Dhimal (Devanagiri) \\\n * **doi**: Dogri (Devanagiri) \\\n * **nl**: Dutch \\\n * **en**: English \\\n * **myv**: Erzya (Cyrillic) \\\n * **et**: Estonian \\\n * **fo**: Faroese \\\n * **fj**: Fijian \\\n * **fil**: Filipino \\\n * **fi**: Finnish \\\n * **fr**: French \\\n * **fur**: Frulian \\\n * **gag**: Gagauz (Latin) \\\n * **gl**: Galician \\\n * **de**: German \\\n * **gil**: Gilbertese \\\n * **gon**: Gondi (Devanagiri) \\\n * **el**: Greek \\\n * **kl**: Greenlandic \\\n * **gvr**: Gurung (Devanagiri) \\\n * **ht**: Haitian Creole \\\n * **hlb**: Halbi (Devanagiri) \\\n * **hni**: Hani \\\n * **bgc**: Haryanvi \\\n * **haw**: Hawaiian \\\n * **hi**: Hindi \\\n * **mww**: Hmong Daw (Latin) \\\n * **hoc**: Ho (Devanagiri) \\\n * **hu**: Hungarian \\\n * **is**: Icelandic \\\n * **smn**: Inari Sami \\\n * **id**: Indonesian \\\n * **ia**: Interlingua \\\n * **iu**: Inuktitut (Latin) \\\n * **ga**: Irish \\\n * **it**: Italian \\\n * **ja**: Japanese \\\n * **Jns**: Jaunsari (Devanagiri) \\\n * **jv**: Javanese \\\n * **kea**: Kabuverdianu \\\n * **kac**: Kachin (Latin) \\\n * **xnr**: Kangri (Devanagiri) \\\n * **krc**: Karachay-Balkar \\\n * **kaa-cyrl**: Kara-Kalpak (Cyrillic) \\\n * **kaa**: Kara-Kalpak (Latin) \\\n * **csb**: Kashubian \\\n * **kk-cyrl**: Kazakh (Cyrillic) \\\n * **kk-latn**: Kazakh (Latin) \\\n * **klr**: Khaling \\\n * **kha**: Khasi \\\n * **quc**: K'iche' \\\n * **ko**: Korean \\\n * **kfq**: Korku \\\n * **kpy**: Koryak \\\n * **kos**: Kosraean \\\n * **kum**: Kumyk (Cyrillic) \\\n * **ku-arab**: Kurdish (Arabic) \\\n * **ku-latn**: Kurdish (Latin) \\\n * **kru**: Kurukh (Devanagiri) \\\n * **ky**: Kyrgyz (Cyrillic) \\\n * **lkt**: Lakota \\\n * **la**: Latin \\\n * **lt**: Lithuanian \\\n * **dsb**: Lower Sorbian \\\n * **smj**: Lule Sami \\\n * **lb**: Luxembourgish \\\n * **bfz**: Mahasu Pahari (Devanagiri) \\\n * **ms**: Malay (Latin) \\\n * **mt**: Maltese \\\n * **kmj**: Malto (Devanagiri) \\\n * **gv**: Manx \\\n * **mi**: Maori \\\n * **mr**: Marathi \\\n * **mn**: Mongolian (Cyrillic) \\\n * **cnr-cyrl**: Montenegrin (Cyrillic) \\\n * **cnr-latn**: Montenegrin (Latin) \\\n * **nap**: Neapolitan \\\n * **ne**: Nepali \\\n * **niu**: Niuean \\\n * **nog**: Nogay \\\n * **sme**: Northern Sami (Latin) \\\n * **nb**: Norwegian \\\n * **no**: Norwegian \\\n * **oc**: Occitan \\\n * **os**: Ossetic \\\n * **ps**: Pashto \\\n * **fa**: Persian \\\n * **pl**: Polish \\\n * **pt**: Portuguese \\\n * **pa**: Punjabi (Arabic) \\\n * **ksh**: Ripuarian \\\n * **ro**: Romanian \\\n * **rm**: Romansh \\\n * **ru**: Russian \\\n * **sck**: Sadri (Devanagiri) \\\n * **sm**: Samoan (Latin) \\\n * **sa**: Sanskrit (Devanagiri) \\\n * **sat**: Santali (Devanagiri) \\\n * **sco**: Scots \\\n * **gd**: Scottish Gaelic \\\n * **sr**: Serbian (Latin) \\\n * **sr-Cyrl**: Serbian (Cyrillic) \\\n * **sr-Latn**: Serbian (Latin) \\\n * **xsr**: Sherpa (Devanagiri) \\\n * **srx**: Sirmauri (Devanagiri) \\\n * **sms**: Skolt Sami \\\n * **sk**: Slovak \\\n * **sl**: Slovenian \\\n * **so**: Somali (Arabic) \\\n * **sma**: Southern Sami \\\n * **es**: Spanish \\\n * **sw**: Swahili (Latin) \\\n * **sv**: Swedish \\\n * **tg**: Tajik (Cyrillic) \\\n * **tt**: Tatar (Latin) \\\n * **tet**: Tetum \\\n * **thf**: Thangmi \\\n * **to**: Tongan \\\n * **tr**: Turkish \\\n * **tk**: Turkmen (Latin) \\\n * **tyv**: Tuvan \\\n * **hsb**: Upper Sorbian \\\n * **ur**: Urdu \\\n * **ug**: Uyghur (Arabic) \\\n * **uz-arab**: Uzbek (Arabic) \\\n * **uz-cyrl**: Uzbek (Cyrillic) \\\n * **uz**: Uzbek (Latin) \\\n * **vo**: Volapük \\\n * **wae**: Walser \\\n * **cy**: Welsh \\\n * **fy**: Western Frisian \\\n * **yua**: Yucatec Maya \\\n * **za**: Zhuang \\\n * **zu**: Zulu \\\n * **unk**: Unknown (All)\n */\nexport type OcrSkillLanguage = string;\n\n/** Known values of {@link OcrLineEnding} that the service accepts. */\nexport enum KnownOcrLineEnding {\n /** Lines are separated by a single space character. */\n Space = \"space\",\n /** Lines are separated by a carriage return ('\\r') character. */\n CarriageReturn = \"carriageReturn\",\n /** Lines are separated by a single line feed ('\\n') character. */\n LineFeed = \"lineFeed\",\n /** Lines are separated by a carriage return and a line feed ('\\r\\n') character. */\n CarriageReturnLineFeed = \"carriageReturnLineFeed\",\n}\n\n/**\n * Defines values for OcrLineEnding. \\\n * {@link KnownOcrLineEnding} can be used interchangeably with OcrLineEnding,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **space**: Lines are separated by a single space character. \\\n * **carriageReturn**: Lines are separated by a carriage return ('\\r') character. \\\n * **lineFeed**: Lines are separated by a single line feed ('\\n') character. \\\n * **carriageReturnLineFeed**: Lines are separated by a carriage return and a line feed ('\\r\\n') character.\n */\nexport type OcrLineEnding = string;\n\n/** Known values of {@link ImageAnalysisSkillLanguage} that the service accepts. */\nexport enum KnownImageAnalysisSkillLanguage {\n /** Arabic */\n Ar = \"ar\",\n /** Azerbaijani */\n Az = \"az\",\n /** Bulgarian */\n Bg = \"bg\",\n /** Bosnian Latin */\n Bs = \"bs\",\n /** Catalan */\n Ca = \"ca\",\n /** Czech */\n Cs = \"cs\",\n /** Welsh */\n Cy = \"cy\",\n /** Danish */\n Da = \"da\",\n /** German */\n De = \"de\",\n /** Greek */\n El = \"el\",\n /** English */\n En = \"en\",\n /** Spanish */\n Es = \"es\",\n /** Estonian */\n Et = \"et\",\n /** Basque */\n Eu = \"eu\",\n /** Finnish */\n Fi = \"fi\",\n /** French */\n Fr = \"fr\",\n /** Irish */\n Ga = \"ga\",\n /** Galician */\n Gl = \"gl\",\n /** Hebrew */\n He = \"he\",\n /** Hindi */\n Hi = \"hi\",\n /** Croatian */\n Hr = \"hr\",\n /** Hungarian */\n Hu = \"hu\",\n /** Indonesian */\n Id = \"id\",\n /** Italian */\n It = \"it\",\n /** Japanese */\n Ja = \"ja\",\n /** Kazakh */\n Kk = \"kk\",\n /** Korean */\n Ko = \"ko\",\n /** Lithuanian */\n Lt = \"lt\",\n /** Latvian */\n Lv = \"lv\",\n /** Macedonian */\n Mk = \"mk\",\n /** Malay Malaysia */\n Ms = \"ms\",\n /** Norwegian (Bokmal) */\n Nb = \"nb\",\n /** Dutch */\n Nl = \"nl\",\n /** Polish */\n Pl = \"pl\",\n /** Dari */\n Prs = \"prs\",\n /** Portuguese-Brazil */\n PtBR = \"pt-BR\",\n /** Portuguese-Portugal */\n Pt = \"pt\",\n /** Portuguese-Portugal */\n PtPT = \"pt-PT\",\n /** Romanian */\n Ro = \"ro\",\n /** Russian */\n Ru = \"ru\",\n /** Slovak */\n Sk = \"sk\",\n /** Slovenian */\n Sl = \"sl\",\n /** Serbian - Cyrillic RS */\n SrCyrl = \"sr-Cyrl\",\n /** Serbian - Latin RS */\n SrLatn = \"sr-Latn\",\n /** Swedish */\n Sv = \"sv\",\n /** Thai */\n Th = \"th\",\n /** Turkish */\n Tr = \"tr\",\n /** Ukrainian */\n Uk = \"uk\",\n /** Vietnamese */\n Vi = \"vi\",\n /** Chinese Simplified */\n Zh = \"zh\",\n /** Chinese Simplified */\n ZhHans = \"zh-Hans\",\n /** Chinese Traditional */\n ZhHant = \"zh-Hant\",\n}\n\n/**\n * Defines values for ImageAnalysisSkillLanguage. \\\n * {@link KnownImageAnalysisSkillLanguage} can be used interchangeably with ImageAnalysisSkillLanguage,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ar**: Arabic \\\n * **az**: Azerbaijani \\\n * **bg**: Bulgarian \\\n * **bs**: Bosnian Latin \\\n * **ca**: Catalan \\\n * **cs**: Czech \\\n * **cy**: Welsh \\\n * **da**: Danish \\\n * **de**: German \\\n * **el**: Greek \\\n * **en**: English \\\n * **es**: Spanish \\\n * **et**: Estonian \\\n * **eu**: Basque \\\n * **fi**: Finnish \\\n * **fr**: French \\\n * **ga**: Irish \\\n * **gl**: Galician \\\n * **he**: Hebrew \\\n * **hi**: Hindi \\\n * **hr**: Croatian \\\n * **hu**: Hungarian \\\n * **id**: Indonesian \\\n * **it**: Italian \\\n * **ja**: Japanese \\\n * **kk**: Kazakh \\\n * **ko**: Korean \\\n * **lt**: Lithuanian \\\n * **lv**: Latvian \\\n * **mk**: Macedonian \\\n * **ms**: Malay Malaysia \\\n * **nb**: Norwegian (Bokmal) \\\n * **nl**: Dutch \\\n * **pl**: Polish \\\n * **prs**: Dari \\\n * **pt-BR**: Portuguese-Brazil \\\n * **pt**: Portuguese-Portugal \\\n * **pt-PT**: Portuguese-Portugal \\\n * **ro**: Romanian \\\n * **ru**: Russian \\\n * **sk**: Slovak \\\n * **sl**: Slovenian \\\n * **sr-Cyrl**: Serbian - Cyrillic RS \\\n * **sr-Latn**: Serbian - Latin RS \\\n * **sv**: Swedish \\\n * **th**: Thai \\\n * **tr**: Turkish \\\n * **uk**: Ukrainian \\\n * **vi**: Vietnamese \\\n * **zh**: Chinese Simplified \\\n * **zh-Hans**: Chinese Simplified \\\n * **zh-Hant**: Chinese Traditional\n */\nexport type ImageAnalysisSkillLanguage = string;\n\n/** Known values of {@link VisualFeature} that the service accepts. */\nexport enum KnownVisualFeature {\n /** Visual features recognized as adult persons. */\n Adult = \"adult\",\n /** Visual features recognized as commercial brands. */\n Brands = \"brands\",\n /** Categories. */\n Categories = \"categories\",\n /** Description. */\n Description = \"description\",\n /** Visual features recognized as people faces. */\n Faces = \"faces\",\n /** Visual features recognized as objects. */\n Objects = \"objects\",\n /** Tags. */\n Tags = \"tags\",\n}\n\n/**\n * Defines values for VisualFeature. \\\n * {@link KnownVisualFeature} can be used interchangeably with VisualFeature,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **adult**: Visual features recognized as adult persons. \\\n * **brands**: Visual features recognized as commercial brands. \\\n * **categories**: Categories. \\\n * **description**: Description. \\\n * **faces**: Visual features recognized as people faces. \\\n * **objects**: Visual features recognized as objects. \\\n * **tags**: Tags.\n */\nexport type VisualFeature = string;\n\n/** Known values of {@link ImageDetail} that the service accepts. */\nexport enum KnownImageDetail {\n /** Details recognized as celebrities. */\n Celebrities = \"celebrities\",\n /** Details recognized as landmarks. */\n Landmarks = \"landmarks\",\n}\n\n/**\n * Defines values for ImageDetail. \\\n * {@link KnownImageDetail} can be used interchangeably with ImageDetail,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **celebrities**: Details recognized as celebrities. \\\n * **landmarks**: Details recognized as landmarks.\n */\nexport type ImageDetail = string;\n\n/** Known values of {@link EntityCategory} that the service accepts. */\nexport enum KnownEntityCategory {\n /** Entities describing a physical location. */\n Location = \"location\",\n /** Entities describing an organization. */\n Organization = \"organization\",\n /** Entities describing a person. */\n Person = \"person\",\n /** Entities describing a quantity. */\n Quantity = \"quantity\",\n /** Entities describing a date and time. */\n Datetime = \"datetime\",\n /** Entities describing a URL. */\n Url = \"url\",\n /** Entities describing an email address. */\n Email = \"email\",\n}\n\n/**\n * Defines values for EntityCategory. \\\n * {@link KnownEntityCategory} can be used interchangeably with EntityCategory,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **location**: Entities describing a physical location. \\\n * **organization**: Entities describing an organization. \\\n * **person**: Entities describing a person. \\\n * **quantity**: Entities describing a quantity. \\\n * **datetime**: Entities describing a date and time. \\\n * **url**: Entities describing a URL. \\\n * **email**: Entities describing an email address.\n */\nexport type EntityCategory = string;\n\n/** Known values of {@link EntityRecognitionSkillLanguage} that the service accepts. */\nexport enum KnownEntityRecognitionSkillLanguage {\n /** Arabic */\n Ar = \"ar\",\n /** Czech */\n Cs = \"cs\",\n /** Chinese-Simplified */\n ZhHans = \"zh-Hans\",\n /** Chinese-Traditional */\n ZhHant = \"zh-Hant\",\n /** Danish */\n Da = \"da\",\n /** Dutch */\n Nl = \"nl\",\n /** English */\n En = \"en\",\n /** Finnish */\n Fi = \"fi\",\n /** French */\n Fr = \"fr\",\n /** German */\n De = \"de\",\n /** Greek */\n El = \"el\",\n /** Hungarian */\n Hu = \"hu\",\n /** Italian */\n It = \"it\",\n /** Japanese */\n Ja = \"ja\",\n /** Korean */\n Ko = \"ko\",\n /** Norwegian (Bokmaal) */\n No = \"no\",\n /** Polish */\n Pl = \"pl\",\n /** Portuguese (Portugal) */\n PtPT = \"pt-PT\",\n /** Portuguese (Brazil) */\n PtBR = \"pt-BR\",\n /** Russian */\n Ru = \"ru\",\n /** Spanish */\n Es = \"es\",\n /** Swedish */\n Sv = \"sv\",\n /** Turkish */\n Tr = \"tr\",\n}\n\n/**\n * Defines values for EntityRecognitionSkillLanguage. \\\n * {@link KnownEntityRecognitionSkillLanguage} can be used interchangeably with EntityRecognitionSkillLanguage,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ar**: Arabic \\\n * **cs**: Czech \\\n * **zh-Hans**: Chinese-Simplified \\\n * **zh-Hant**: Chinese-Traditional \\\n * **da**: Danish \\\n * **nl**: Dutch \\\n * **en**: English \\\n * **fi**: Finnish \\\n * **fr**: French \\\n * **de**: German \\\n * **el**: Greek \\\n * **hu**: Hungarian \\\n * **it**: Italian \\\n * **ja**: Japanese \\\n * **ko**: Korean \\\n * **no**: Norwegian (Bokmaal) \\\n * **pl**: Polish \\\n * **pt-PT**: Portuguese (Portugal) \\\n * **pt-BR**: Portuguese (Brazil) \\\n * **ru**: Russian \\\n * **es**: Spanish \\\n * **sv**: Swedish \\\n * **tr**: Turkish\n */\nexport type EntityRecognitionSkillLanguage = string;\n\n/** Known values of {@link SentimentSkillLanguage} that the service accepts. */\nexport enum KnownSentimentSkillLanguage {\n /** Danish */\n Da = \"da\",\n /** Dutch */\n Nl = \"nl\",\n /** English */\n En = \"en\",\n /** Finnish */\n Fi = \"fi\",\n /** French */\n Fr = \"fr\",\n /** German */\n De = \"de\",\n /** Greek */\n El = \"el\",\n /** Italian */\n It = \"it\",\n /** Norwegian (Bokmaal) */\n No = \"no\",\n /** Polish */\n Pl = \"pl\",\n /** Portuguese (Portugal) */\n PtPT = \"pt-PT\",\n /** Russian */\n Ru = \"ru\",\n /** Spanish */\n Es = \"es\",\n /** Swedish */\n Sv = \"sv\",\n /** Turkish */\n Tr = \"tr\",\n}\n\n/**\n * Defines values for SentimentSkillLanguage. \\\n * {@link KnownSentimentSkillLanguage} can be used interchangeably with SentimentSkillLanguage,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **da**: Danish \\\n * **nl**: Dutch \\\n * **en**: English \\\n * **fi**: Finnish \\\n * **fr**: French \\\n * **de**: German \\\n * **el**: Greek \\\n * **it**: Italian \\\n * **no**: Norwegian (Bokmaal) \\\n * **pl**: Polish \\\n * **pt-PT**: Portuguese (Portugal) \\\n * **ru**: Russian \\\n * **es**: Spanish \\\n * **sv**: Swedish \\\n * **tr**: Turkish\n */\nexport type SentimentSkillLanguage = string;\n\n/** Known values of {@link PIIDetectionSkillMaskingMode} that the service accepts. */\nexport enum KnownPIIDetectionSkillMaskingMode {\n /** No masking occurs and the maskedText output will not be returned. */\n None = \"none\",\n /** Replaces the detected entities with the character given in the maskingCharacter parameter. The character will be repeated to the length of the detected entity so that the offsets will correctly correspond to both the input text as well as the output maskedText. */\n Replace = \"replace\",\n}\n\n/**\n * Defines values for PIIDetectionSkillMaskingMode. \\\n * {@link KnownPIIDetectionSkillMaskingMode} can be used interchangeably with PIIDetectionSkillMaskingMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **none**: No masking occurs and the maskedText output will not be returned. \\\n * **replace**: Replaces the detected entities with the character given in the maskingCharacter parameter. The character will be repeated to the length of the detected entity so that the offsets will correctly correspond to both the input text as well as the output maskedText.\n */\nexport type PIIDetectionSkillMaskingMode = string;\n\n/** Known values of {@link SplitSkillLanguage} that the service accepts. */\nexport enum KnownSplitSkillLanguage {\n /** Amharic */\n Am = \"am\",\n /** Bosnian */\n Bs = \"bs\",\n /** Czech */\n Cs = \"cs\",\n /** Danish */\n Da = \"da\",\n /** German */\n De = \"de\",\n /** English */\n En = \"en\",\n /** Spanish */\n Es = \"es\",\n /** Estonian */\n Et = \"et\",\n /** Finnish */\n Fi = \"fi\",\n /** French */\n Fr = \"fr\",\n /** Hebrew */\n He = \"he\",\n /** Hindi */\n Hi = \"hi\",\n /** Croatian */\n Hr = \"hr\",\n /** Hungarian */\n Hu = \"hu\",\n /** Indonesian */\n Id = \"id\",\n /** Icelandic */\n Is = \"is\",\n /** Italian */\n It = \"it\",\n /** Japanese */\n Ja = \"ja\",\n /** Korean */\n Ko = \"ko\",\n /** Latvian */\n Lv = \"lv\",\n /** Norwegian */\n Nb = \"nb\",\n /** Dutch */\n Nl = \"nl\",\n /** Polish */\n Pl = \"pl\",\n /** Portuguese (Portugal) */\n Pt = \"pt\",\n /** Portuguese (Brazil) */\n PtBr = \"pt-br\",\n /** Russian */\n Ru = \"ru\",\n /** Slovak */\n Sk = \"sk\",\n /** Slovenian */\n Sl = \"sl\",\n /** Serbian */\n Sr = \"sr\",\n /** Swedish */\n Sv = \"sv\",\n /** Turkish */\n Tr = \"tr\",\n /** Urdu */\n Ur = \"ur\",\n /** Chinese (Simplified) */\n Zh = \"zh\",\n}\n\n/**\n * Defines values for SplitSkillLanguage. \\\n * {@link KnownSplitSkillLanguage} can be used interchangeably with SplitSkillLanguage,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **am**: Amharic \\\n * **bs**: Bosnian \\\n * **cs**: Czech \\\n * **da**: Danish \\\n * **de**: German \\\n * **en**: English \\\n * **es**: Spanish \\\n * **et**: Estonian \\\n * **fi**: Finnish \\\n * **fr**: French \\\n * **he**: Hebrew \\\n * **hi**: Hindi \\\n * **hr**: Croatian \\\n * **hu**: Hungarian \\\n * **id**: Indonesian \\\n * **is**: Icelandic \\\n * **it**: Italian \\\n * **ja**: Japanese \\\n * **ko**: Korean \\\n * **lv**: Latvian \\\n * **nb**: Norwegian \\\n * **nl**: Dutch \\\n * **pl**: Polish \\\n * **pt**: Portuguese (Portugal) \\\n * **pt-br**: Portuguese (Brazil) \\\n * **ru**: Russian \\\n * **sk**: Slovak \\\n * **sl**: Slovenian \\\n * **sr**: Serbian \\\n * **sv**: Swedish \\\n * **tr**: Turkish \\\n * **ur**: Urdu \\\n * **zh**: Chinese (Simplified)\n */\nexport type SplitSkillLanguage = string;\n\n/** Known values of {@link TextSplitMode} that the service accepts. */\nexport enum KnownTextSplitMode {\n /** Split the text into individual pages. */\n Pages = \"pages\",\n /** Split the text into individual sentences. */\n Sentences = \"sentences\",\n}\n\n/**\n * Defines values for TextSplitMode. \\\n * {@link KnownTextSplitMode} can be used interchangeably with TextSplitMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **pages**: Split the text into individual pages. \\\n * **sentences**: Split the text into individual sentences.\n */\nexport type TextSplitMode = string;\n\n/** Known values of {@link SplitSkillUnit} that the service accepts. */\nexport enum KnownSplitSkillUnit {\n /** The length will be measured by character. */\n Characters = \"characters\",\n /** The length will be measured by an AzureOpenAI tokenizer from the tiktoken library. */\n AzureOpenAITokens = \"azureOpenAITokens\",\n}\n\n/**\n * Defines values for SplitSkillUnit. \\\n * {@link KnownSplitSkillUnit} can be used interchangeably with SplitSkillUnit,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **characters**: The length will be measured by character. \\\n * **azureOpenAITokens**: The length will be measured by an AzureOpenAI tokenizer from the tiktoken library.\n */\nexport type SplitSkillUnit = string;\n\n/** Known values of {@link SplitSkillEncoderModelName} that the service accepts. */\nexport enum KnownSplitSkillEncoderModelName {\n /** Refers to a base model trained with a 50,000 token vocabulary, often used in general natural language processing tasks. */\n R50KBase = \"r50k_base\",\n /** A base model with a 50,000 token vocabulary, optimized for prompt-based tasks. */\n P50KBase = \"p50k_base\",\n /** Similar to p50k_base but fine-tuned for editing or rephrasing tasks with a 50,000 token vocabulary. */\n P50KEdit = \"p50k_edit\",\n /** A base model with a 100,000 token vocabulary. */\n CL100KBase = \"cl100k_base\",\n}\n\n/**\n * Defines values for SplitSkillEncoderModelName. \\\n * {@link KnownSplitSkillEncoderModelName} can be used interchangeably with SplitSkillEncoderModelName,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **r50k_base**: Refers to a base model trained with a 50,000 token vocabulary, often used in general natural language processing tasks. \\\n * **p50k_base**: A base model with a 50,000 token vocabulary, optimized for prompt-based tasks. \\\n * **p50k_edit**: Similar to p50k_base but fine-tuned for editing or rephrasing tasks with a 50,000 token vocabulary. \\\n * **cl100k_base**: A base model with a 100,000 token vocabulary.\n */\nexport type SplitSkillEncoderModelName = string;\n\n/** Known values of {@link CustomEntityLookupSkillLanguage} that the service accepts. */\nexport enum KnownCustomEntityLookupSkillLanguage {\n /** Danish */\n Da = \"da\",\n /** German */\n De = \"de\",\n /** English */\n En = \"en\",\n /** Spanish */\n Es = \"es\",\n /** Finnish */\n Fi = \"fi\",\n /** French */\n Fr = \"fr\",\n /** Italian */\n It = \"it\",\n /** Korean */\n Ko = \"ko\",\n /** Portuguese */\n Pt = \"pt\",\n}\n\n/**\n * Defines values for CustomEntityLookupSkillLanguage. \\\n * {@link KnownCustomEntityLookupSkillLanguage} can be used interchangeably with CustomEntityLookupSkillLanguage,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **da**: Danish \\\n * **de**: German \\\n * **en**: English \\\n * **es**: Spanish \\\n * **fi**: Finnish \\\n * **fr**: French \\\n * **it**: Italian \\\n * **ko**: Korean \\\n * **pt**: Portuguese\n */\nexport type CustomEntityLookupSkillLanguage = string;\n\n/** Known values of {@link TextTranslationSkillLanguage} that the service accepts. */\nexport enum KnownTextTranslationSkillLanguage {\n /** Afrikaans */\n Af = \"af\",\n /** Arabic */\n Ar = \"ar\",\n /** Bangla */\n Bn = \"bn\",\n /** Bosnian (Latin) */\n Bs = \"bs\",\n /** Bulgarian */\n Bg = \"bg\",\n /** Cantonese (Traditional) */\n Yue = \"yue\",\n /** Catalan */\n Ca = \"ca\",\n /** Chinese Simplified */\n ZhHans = \"zh-Hans\",\n /** Chinese Traditional */\n ZhHant = \"zh-Hant\",\n /** Croatian */\n Hr = \"hr\",\n /** Czech */\n Cs = \"cs\",\n /** Danish */\n Da = \"da\",\n /** Dutch */\n Nl = \"nl\",\n /** English */\n En = \"en\",\n /** Estonian */\n Et = \"et\",\n /** Fijian */\n Fj = \"fj\",\n /** Filipino */\n Fil = \"fil\",\n /** Finnish */\n Fi = \"fi\",\n /** French */\n Fr = \"fr\",\n /** German */\n De = \"de\",\n /** Greek */\n El = \"el\",\n /** Haitian Creole */\n Ht = \"ht\",\n /** Hebrew */\n He = \"he\",\n /** Hindi */\n Hi = \"hi\",\n /** Hmong Daw */\n Mww = \"mww\",\n /** Hungarian */\n Hu = \"hu\",\n /** Icelandic */\n Is = \"is\",\n /** Indonesian */\n Id = \"id\",\n /** Italian */\n It = \"it\",\n /** Japanese */\n Ja = \"ja\",\n /** Kiswahili */\n Sw = \"sw\",\n /** Klingon */\n Tlh = \"tlh\",\n /** Klingon (Latin script) */\n TlhLatn = \"tlh-Latn\",\n /** Klingon (Klingon script) */\n TlhPiqd = \"tlh-Piqd\",\n /** Korean */\n Ko = \"ko\",\n /** Latvian */\n Lv = \"lv\",\n /** Lithuanian */\n Lt = \"lt\",\n /** Malagasy */\n Mg = \"mg\",\n /** Malay */\n Ms = \"ms\",\n /** Maltese */\n Mt = \"mt\",\n /** Norwegian */\n Nb = \"nb\",\n /** Persian */\n Fa = \"fa\",\n /** Polish */\n Pl = \"pl\",\n /** Portuguese */\n Pt = \"pt\",\n /** Portuguese (Brazil) */\n PtBr = \"pt-br\",\n /** Portuguese (Portugal) */\n PtPT = \"pt-PT\",\n /** Queretaro Otomi */\n Otq = \"otq\",\n /** Romanian */\n Ro = \"ro\",\n /** Russian */\n Ru = \"ru\",\n /** Samoan */\n Sm = \"sm\",\n /** Serbian (Cyrillic) */\n SrCyrl = \"sr-Cyrl\",\n /** Serbian (Latin) */\n SrLatn = \"sr-Latn\",\n /** Slovak */\n Sk = \"sk\",\n /** Slovenian */\n Sl = \"sl\",\n /** Spanish */\n Es = \"es\",\n /** Swedish */\n Sv = \"sv\",\n /** Tahitian */\n Ty = \"ty\",\n /** Tamil */\n Ta = \"ta\",\n /** Telugu */\n Te = \"te\",\n /** Thai */\n Th = \"th\",\n /** Tongan */\n To = \"to\",\n /** Turkish */\n Tr = \"tr\",\n /** Ukrainian */\n Uk = \"uk\",\n /** Urdu */\n Ur = \"ur\",\n /** Vietnamese */\n Vi = \"vi\",\n /** Welsh */\n Cy = \"cy\",\n /** Yucatec Maya */\n Yua = \"yua\",\n /** Irish */\n Ga = \"ga\",\n /** Kannada */\n Kn = \"kn\",\n /** Maori */\n Mi = \"mi\",\n /** Malayalam */\n Ml = \"ml\",\n /** Punjabi */\n Pa = \"pa\",\n}\n\n/**\n * Defines values for TextTranslationSkillLanguage. \\\n * {@link KnownTextTranslationSkillLanguage} can be used interchangeably with TextTranslationSkillLanguage,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **af**: Afrikaans \\\n * **ar**: Arabic \\\n * **bn**: Bangla \\\n * **bs**: Bosnian (Latin) \\\n * **bg**: Bulgarian \\\n * **yue**: Cantonese (Traditional) \\\n * **ca**: Catalan \\\n * **zh-Hans**: Chinese Simplified \\\n * **zh-Hant**: Chinese Traditional \\\n * **hr**: Croatian \\\n * **cs**: Czech \\\n * **da**: Danish \\\n * **nl**: Dutch \\\n * **en**: English \\\n * **et**: Estonian \\\n * **fj**: Fijian \\\n * **fil**: Filipino \\\n * **fi**: Finnish \\\n * **fr**: French \\\n * **de**: German \\\n * **el**: Greek \\\n * **ht**: Haitian Creole \\\n * **he**: Hebrew \\\n * **hi**: Hindi \\\n * **mww**: Hmong Daw \\\n * **hu**: Hungarian \\\n * **is**: Icelandic \\\n * **id**: Indonesian \\\n * **it**: Italian \\\n * **ja**: Japanese \\\n * **sw**: Kiswahili \\\n * **tlh**: Klingon \\\n * **tlh-Latn**: Klingon (Latin script) \\\n * **tlh-Piqd**: Klingon (Klingon script) \\\n * **ko**: Korean \\\n * **lv**: Latvian \\\n * **lt**: Lithuanian \\\n * **mg**: Malagasy \\\n * **ms**: Malay \\\n * **mt**: Maltese \\\n * **nb**: Norwegian \\\n * **fa**: Persian \\\n * **pl**: Polish \\\n * **pt**: Portuguese \\\n * **pt-br**: Portuguese (Brazil) \\\n * **pt-PT**: Portuguese (Portugal) \\\n * **otq**: Queretaro Otomi \\\n * **ro**: Romanian \\\n * **ru**: Russian \\\n * **sm**: Samoan \\\n * **sr-Cyrl**: Serbian (Cyrillic) \\\n * **sr-Latn**: Serbian (Latin) \\\n * **sk**: Slovak \\\n * **sl**: Slovenian \\\n * **es**: Spanish \\\n * **sv**: Swedish \\\n * **ty**: Tahitian \\\n * **ta**: Tamil \\\n * **te**: Telugu \\\n * **th**: Thai \\\n * **to**: Tongan \\\n * **tr**: Turkish \\\n * **uk**: Ukrainian \\\n * **ur**: Urdu \\\n * **vi**: Vietnamese \\\n * **cy**: Welsh \\\n * **yua**: Yucatec Maya \\\n * **ga**: Irish \\\n * **kn**: Kannada \\\n * **mi**: Maori \\\n * **ml**: Malayalam \\\n * **pa**: Punjabi\n */\nexport type TextTranslationSkillLanguage = string;\n\n/** Known values of {@link LexicalTokenizerName} that the service accepts. */\nexport enum KnownLexicalTokenizerName {\n /** Grammar-based tokenizer that is suitable for processing most European-language documents. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/standard\\/ClassicTokenizer.html */\n Classic = \"classic\",\n /** Tokenizes the input from an edge into n-grams of the given size(s). See https:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/ngram\\/EdgeNGramTokenizer.html */\n EdgeNGram = \"edgeNGram\",\n /** Emits the entire input as a single token. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/KeywordTokenizer.html */\n Keyword = \"keyword_v2\",\n /** Divides text at non-letters. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/LetterTokenizer.html */\n Letter = \"letter\",\n /** Divides text at non-letters and converts them to lower case. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/LowerCaseTokenizer.html */\n Lowercase = \"lowercase\",\n /** Divides text using language-specific rules. */\n MicrosoftLanguageTokenizer = \"microsoft_language_tokenizer\",\n /** Divides text using language-specific rules and reduces words to their base forms. */\n MicrosoftLanguageStemmingTokenizer = \"microsoft_language_stemming_tokenizer\",\n /** Tokenizes the input into n-grams of the given size(s). See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/ngram\\/NGramTokenizer.html */\n NGram = \"nGram\",\n /** Tokenizer for path-like hierarchies. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/path\\/PathHierarchyTokenizer.html */\n PathHierarchy = \"path_hierarchy_v2\",\n /** Tokenizer that uses regex pattern matching to construct distinct tokens. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/pattern\\/PatternTokenizer.html */\n Pattern = \"pattern\",\n /** Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter and stop filter. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/standard\\/StandardTokenizer.html */\n Standard = \"standard_v2\",\n /** Tokenizes urls and emails as one token. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/standard\\/UAX29URLEmailTokenizer.html */\n UaxUrlEmail = \"uax_url_email\",\n /** Divides text at whitespace. See http:\\//lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/WhitespaceTokenizer.html */\n Whitespace = \"whitespace\",\n}\n\n/**\n * Defines values for LexicalTokenizerName. \\\n * {@link KnownLexicalTokenizerName} can be used interchangeably with LexicalTokenizerName,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **classic**: Grammar-based tokenizer that is suitable for processing most European-language documents. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/standard\\/ClassicTokenizer.html \\\n * **edgeNGram**: Tokenizes the input from an edge into n-grams of the given size(s). See https:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/ngram\\/EdgeNGramTokenizer.html \\\n * **keyword_v2**: Emits the entire input as a single token. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/KeywordTokenizer.html \\\n * **letter**: Divides text at non-letters. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/LetterTokenizer.html \\\n * **lowercase**: Divides text at non-letters and converts them to lower case. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/LowerCaseTokenizer.html \\\n * **microsoft_language_tokenizer**: Divides text using language-specific rules. \\\n * **microsoft_language_stemming_tokenizer**: Divides text using language-specific rules and reduces words to their base forms. \\\n * **nGram**: Tokenizes the input into n-grams of the given size(s). See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/ngram\\/NGramTokenizer.html \\\n * **path_hierarchy_v2**: Tokenizer for path-like hierarchies. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/path\\/PathHierarchyTokenizer.html \\\n * **pattern**: Tokenizer that uses regex pattern matching to construct distinct tokens. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/pattern\\/PatternTokenizer.html \\\n * **standard_v2**: Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter and stop filter. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/standard\\/StandardTokenizer.html \\\n * **uax_url_email**: Tokenizes urls and emails as one token. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/standard\\/UAX29URLEmailTokenizer.html \\\n * **whitespace**: Divides text at whitespace. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/WhitespaceTokenizer.html\n */\nexport type LexicalTokenizerName = string;\n\n/** Known values of {@link RegexFlags} that the service accepts. */\nexport enum KnownRegexFlags {\n /** Enables canonical equivalence. */\n CanonEq = \"CANON_EQ\",\n /** Enables case-insensitive matching. */\n CaseInsensitive = \"CASE_INSENSITIVE\",\n /** Permits whitespace and comments in the pattern. */\n Comments = \"COMMENTS\",\n /** Enables dotall mode. */\n DotAll = \"DOTALL\",\n /** Enables literal parsing of the pattern. */\n Literal = \"LITERAL\",\n /** Enables multiline mode. */\n Multiline = \"MULTILINE\",\n /** Enables Unicode-aware case folding. */\n UnicodeCase = \"UNICODE_CASE\",\n /** Enables Unix lines mode. */\n UnixLines = \"UNIX_LINES\",\n}\n\n/**\n * Defines values for RegexFlags. \\\n * {@link KnownRegexFlags} can be used interchangeably with RegexFlags,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **CANON_EQ**: Enables canonical equivalence. \\\n * **CASE_INSENSITIVE**: Enables case-insensitive matching. \\\n * **COMMENTS**: Permits whitespace and comments in the pattern. \\\n * **DOTALL**: Enables dotall mode. \\\n * **LITERAL**: Enables literal parsing of the pattern. \\\n * **MULTILINE**: Enables multiline mode. \\\n * **UNICODE_CASE**: Enables Unicode-aware case folding. \\\n * **UNIX_LINES**: Enables Unix lines mode.\n */\nexport type RegexFlags = string;\n/** Defines values for IndexerStatus. */\nexport type IndexerStatus = \"unknown\" | \"error\" | \"running\";\n/** Defines values for IndexerExecutionStatus. */\nexport type IndexerExecutionStatus =\n | \"transientFailure\"\n | \"success\"\n | \"inProgress\"\n | \"reset\";\n/** Defines values for ScoringFunctionInterpolation. */\nexport type ScoringFunctionInterpolation =\n | \"linear\"\n | \"constant\"\n | \"quadratic\"\n | \"logarithmic\";\n/** Defines values for ScoringFunctionAggregation. */\nexport type ScoringFunctionAggregation =\n | \"sum\"\n | \"average\"\n | \"minimum\"\n | \"maximum\"\n | \"firstMatching\";\n/** Defines values for TokenCharacterKind. */\nexport type TokenCharacterKind =\n | \"letter\"\n | \"digit\"\n | \"whitespace\"\n | \"punctuation\"\n | \"symbol\";\n/** Defines values for MicrosoftTokenizerLanguage. */\nexport type MicrosoftTokenizerLanguage =\n | \"bangla\"\n | \"bulgarian\"\n | \"catalan\"\n | \"chineseSimplified\"\n | \"chineseTraditional\"\n | \"croatian\"\n | \"czech\"\n | \"danish\"\n | \"dutch\"\n | \"english\"\n | \"french\"\n | \"german\"\n | \"greek\"\n | \"gujarati\"\n | \"hindi\"\n | \"icelandic\"\n | \"indonesian\"\n | \"italian\"\n | \"japanese\"\n | \"kannada\"\n | \"korean\"\n | \"malay\"\n | \"malayalam\"\n | \"marathi\"\n | \"norwegianBokmaal\"\n | \"polish\"\n | \"portuguese\"\n | \"portugueseBrazilian\"\n | \"punjabi\"\n | \"romanian\"\n | \"russian\"\n | \"serbianCyrillic\"\n | \"serbianLatin\"\n | \"slovenian\"\n | \"spanish\"\n | \"swedish\"\n | \"tamil\"\n | \"telugu\"\n | \"thai\"\n | \"ukrainian\"\n | \"urdu\"\n | \"vietnamese\";\n/** Defines values for MicrosoftStemmingTokenizerLanguage. */\nexport type MicrosoftStemmingTokenizerLanguage =\n | \"arabic\"\n | \"bangla\"\n | \"bulgarian\"\n | \"catalan\"\n | \"croatian\"\n | \"czech\"\n | \"danish\"\n | \"dutch\"\n | \"english\"\n | \"estonian\"\n | \"finnish\"\n | \"french\"\n | \"german\"\n | \"greek\"\n | \"gujarati\"\n | \"hebrew\"\n | \"hindi\"\n | \"hungarian\"\n | \"icelandic\"\n | \"indonesian\"\n | \"italian\"\n | \"kannada\"\n | \"latvian\"\n | \"lithuanian\"\n | \"malay\"\n | \"malayalam\"\n | \"marathi\"\n | \"norwegianBokmaal\"\n | \"polish\"\n | \"portuguese\"\n | \"portugueseBrazilian\"\n | \"punjabi\"\n | \"romanian\"\n | \"russian\"\n | \"serbianCyrillic\"\n | \"serbianLatin\"\n | \"slovak\"\n | \"slovenian\"\n | \"spanish\"\n | \"swedish\"\n | \"tamil\"\n | \"telugu\"\n | \"turkish\"\n | \"ukrainian\"\n | \"urdu\";\n/** Defines values for CjkBigramTokenFilterScripts. */\nexport type CjkBigramTokenFilterScripts =\n | \"han\"\n | \"hiragana\"\n | \"katakana\"\n | \"hangul\";\n/** Defines values for EdgeNGramTokenFilterSide. */\nexport type EdgeNGramTokenFilterSide = \"front\" | \"back\";\n/** Defines values for PhoneticEncoder. */\nexport type PhoneticEncoder =\n | \"metaphone\"\n | \"doubleMetaphone\"\n | \"soundex\"\n | \"refinedSoundex\"\n | \"caverphone1\"\n | \"caverphone2\"\n | \"cologne\"\n | \"nysiis\"\n | \"koelnerPhonetik\"\n | \"haasePhonetik\"\n | \"beiderMorse\";\n/** Defines values for SnowballTokenFilterLanguage. */\nexport type SnowballTokenFilterLanguage =\n | \"armenian\"\n | \"basque\"\n | \"catalan\"\n | \"danish\"\n | \"dutch\"\n | \"english\"\n | \"finnish\"\n | \"french\"\n | \"german\"\n | \"german2\"\n | \"hungarian\"\n | \"italian\"\n | \"kp\"\n | \"lovins\"\n | \"norwegian\"\n | \"porter\"\n | \"portuguese\"\n | \"romanian\"\n | \"russian\"\n | \"spanish\"\n | \"swedish\"\n | \"turkish\";\n/** Defines values for StemmerTokenFilterLanguage. */\nexport type StemmerTokenFilterLanguage =\n | \"arabic\"\n | \"armenian\"\n | \"basque\"\n | \"brazilian\"\n | \"bulgarian\"\n | \"catalan\"\n | \"czech\"\n | \"danish\"\n | \"dutch\"\n | \"dutchKp\"\n | \"english\"\n | \"lightEnglish\"\n | \"minimalEnglish\"\n | \"possessiveEnglish\"\n | \"porter2\"\n | \"lovins\"\n | \"finnish\"\n | \"lightFinnish\"\n | \"french\"\n | \"lightFrench\"\n | \"minimalFrench\"\n | \"galician\"\n | \"minimalGalician\"\n | \"german\"\n | \"german2\"\n | \"lightGerman\"\n | \"minimalGerman\"\n | \"greek\"\n | \"hindi\"\n | \"hungarian\"\n | \"lightHungarian\"\n | \"indonesian\"\n | \"irish\"\n | \"italian\"\n | \"lightItalian\"\n | \"sorani\"\n | \"latvian\"\n | \"norwegian\"\n | \"lightNorwegian\"\n | \"minimalNorwegian\"\n | \"lightNynorsk\"\n | \"minimalNynorsk\"\n | \"portuguese\"\n | \"lightPortuguese\"\n | \"minimalPortuguese\"\n | \"portugueseRslp\"\n | \"romanian\"\n | \"russian\"\n | \"lightRussian\"\n | \"spanish\"\n | \"lightSpanish\"\n | \"swedish\"\n | \"lightSwedish\"\n | \"turkish\";\n/** Defines values for StopwordsList. */\nexport type StopwordsList =\n | \"arabic\"\n | \"armenian\"\n | \"basque\"\n | \"brazilian\"\n | \"bulgarian\"\n | \"catalan\"\n | \"czech\"\n | \"danish\"\n | \"dutch\"\n | \"english\"\n | \"finnish\"\n | \"french\"\n | \"galician\"\n | \"german\"\n | \"greek\"\n | \"hindi\"\n | \"hungarian\"\n | \"indonesian\"\n | \"irish\"\n | \"italian\"\n | \"latvian\"\n | \"norwegian\"\n | \"persian\"\n | \"portuguese\"\n | \"romanian\"\n | \"russian\"\n | \"sorani\"\n | \"spanish\"\n | \"swedish\"\n | \"thai\"\n | \"turkish\";\n\n/** Optional parameters. */\nexport interface DataSourcesCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value. */\n ifMatch?: string;\n /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */\n ifNoneMatch?: string;\n /** Ignores cache reset requirements. */\n skipIndexerResetRequirementForCache?: boolean;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type DataSourcesCreateOrUpdateResponse = SearchIndexerDataSource;\n\n/** Optional parameters. */\nexport interface DataSourcesDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value. */\n ifMatch?: string;\n /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */\n ifNoneMatch?: string;\n}\n\n/** Optional parameters. */\nexport interface DataSourcesGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type DataSourcesGetResponse = SearchIndexerDataSource;\n\n/** Optional parameters. */\nexport interface DataSourcesListOptionalParams\n extends coreClient.OperationOptions {\n /** Selects which top-level properties of the data sources to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties. */\n select?: string;\n}\n\n/** Contains response data for the list operation. */\nexport type DataSourcesListResponse = ListDataSourcesResult;\n\n/** Optional parameters. */\nexport interface DataSourcesCreateOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the create operation. */\nexport type DataSourcesCreateResponse = SearchIndexerDataSource;\n\n/** Optional parameters. */\nexport interface IndexersResetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface IndexersResetDocsOptionalParams\n extends coreClient.OperationOptions {\n keysOrIds?: DocumentKeysOrIds;\n /** If false, keys or ids will be appended to existing ones. If true, only the keys or ids in this payload will be queued to be re-ingested. */\n overwrite?: boolean;\n}\n\n/** Optional parameters. */\nexport interface IndexersRunOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface IndexersCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value. */\n ifMatch?: string;\n /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */\n ifNoneMatch?: string;\n /** Ignores cache reset requirements. */\n skipIndexerResetRequirementForCache?: boolean;\n /** Disables cache reprocessing change detection. */\n disableCacheReprocessingChangeDetection?: boolean;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type IndexersCreateOrUpdateResponse = SearchIndexer;\n\n/** Optional parameters. */\nexport interface IndexersDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value. */\n ifMatch?: string;\n /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */\n ifNoneMatch?: string;\n}\n\n/** Optional parameters. */\nexport interface IndexersGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type IndexersGetResponse = SearchIndexer;\n\n/** Optional parameters. */\nexport interface IndexersListOptionalParams\n extends coreClient.OperationOptions {\n /** Selects which top-level properties of the indexers to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties. */\n select?: string;\n}\n\n/** Contains response data for the list operation. */\nexport type IndexersListResponse = ListIndexersResult;\n\n/** Optional parameters. */\nexport interface IndexersCreateOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the create operation. */\nexport type IndexersCreateResponse = SearchIndexer;\n\n/** Optional parameters. */\nexport interface IndexersGetStatusOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getStatus operation. */\nexport type IndexersGetStatusResponse = SearchIndexerStatus;\n\n/** Optional parameters. */\nexport interface SkillsetsCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value. */\n ifMatch?: string;\n /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */\n ifNoneMatch?: string;\n /** Ignores cache reset requirements. */\n skipIndexerResetRequirementForCache?: boolean;\n /** Disables cache reprocessing change detection. */\n disableCacheReprocessingChangeDetection?: boolean;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type SkillsetsCreateOrUpdateResponse = SearchIndexerSkillset;\n\n/** Optional parameters. */\nexport interface SkillsetsDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value. */\n ifMatch?: string;\n /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */\n ifNoneMatch?: string;\n}\n\n/** Optional parameters. */\nexport interface SkillsetsGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type SkillsetsGetResponse = SearchIndexerSkillset;\n\n/** Optional parameters. */\nexport interface SkillsetsListOptionalParams\n extends coreClient.OperationOptions {\n /** Selects which top-level properties of the skillsets to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties. */\n select?: string;\n}\n\n/** Contains response data for the list operation. */\nexport type SkillsetsListResponse = ListSkillsetsResult;\n\n/** Optional parameters. */\nexport interface SkillsetsCreateOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the create operation. */\nexport type SkillsetsCreateResponse = SearchIndexerSkillset;\n\n/** Optional parameters. */\nexport interface SkillsetsResetSkillsOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Optional parameters. */\nexport interface SynonymMapsCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value. */\n ifMatch?: string;\n /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */\n ifNoneMatch?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type SynonymMapsCreateOrUpdateResponse = SynonymMap;\n\n/** Optional parameters. */\nexport interface SynonymMapsDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value. */\n ifMatch?: string;\n /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */\n ifNoneMatch?: string;\n}\n\n/** Optional parameters. */\nexport interface SynonymMapsGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type SynonymMapsGetResponse = SynonymMap;\n\n/** Optional parameters. */\nexport interface SynonymMapsListOptionalParams\n extends coreClient.OperationOptions {\n /** Selects which top-level properties of the synonym maps to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties. */\n select?: string;\n}\n\n/** Contains response data for the list operation. */\nexport type SynonymMapsListResponse = ListSynonymMapsResult;\n\n/** Optional parameters. */\nexport interface SynonymMapsCreateOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the create operation. */\nexport type SynonymMapsCreateResponse = SynonymMap;\n\n/** Optional parameters. */\nexport interface IndexesCreateOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the create operation. */\nexport type IndexesCreateResponse = SearchIndex;\n\n/** Optional parameters. */\nexport interface IndexesListOptionalParams extends coreClient.OperationOptions {\n /** Selects which top-level properties of the index definitions to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties. */\n select?: string;\n}\n\n/** Contains response data for the list operation. */\nexport type IndexesListResponse = ListIndexesResult;\n\n/** Optional parameters. */\nexport interface IndexesCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value. */\n ifMatch?: string;\n /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */\n ifNoneMatch?: string;\n /** Allows new analyzers, tokenizers, token filters, or char filters to be added to an index by taking the index offline for at least a few seconds. This temporarily causes indexing and query requests to fail. Performance and write availability of the index can be impaired for several minutes after the index is updated, or longer for very large indexes. */\n allowIndexDowntime?: boolean;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type IndexesCreateOrUpdateResponse = SearchIndex;\n\n/** Optional parameters. */\nexport interface IndexesDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value. */\n ifMatch?: string;\n /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */\n ifNoneMatch?: string;\n}\n\n/** Optional parameters. */\nexport interface IndexesGetOptionalParams extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type IndexesGetResponse = SearchIndex;\n\n/** Optional parameters. */\nexport interface IndexesGetStatisticsOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getStatistics operation. */\nexport type IndexesGetStatisticsResponse = GetIndexStatisticsResult;\n\n/** Optional parameters. */\nexport interface IndexesAnalyzeOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the analyze operation. */\nexport type IndexesAnalyzeResponse = AnalyzeResult;\n\n/** Optional parameters. */\nexport interface AliasesCreateOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the create operation. */\nexport type AliasesCreateResponse = SearchAlias;\n\n/** Optional parameters. */\nexport interface AliasesListOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the list operation. */\nexport type AliasesListResponse = ListAliasesResult;\n\n/** Optional parameters. */\nexport interface AliasesCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value. */\n ifMatch?: string;\n /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */\n ifNoneMatch?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type AliasesCreateOrUpdateResponse = SearchAlias;\n\n/** Optional parameters. */\nexport interface AliasesDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value. */\n ifMatch?: string;\n /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */\n ifNoneMatch?: string;\n}\n\n/** Optional parameters. */\nexport interface AliasesGetOptionalParams extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type AliasesGetResponse = SearchAlias;\n\n/** Optional parameters. */\nexport interface GetServiceStatisticsOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the getServiceStatistics operation. */\nexport type GetServiceStatisticsResponse = ServiceStatistics;\n\n/** Optional parameters. */\nexport interface SearchServiceClientOptionalParams\n extends coreHttpCompat.ExtendedServiceClientOptions {\n /** Overrides client endpoint. */\n endpoint?: string;\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nconst WorldGeodeticSystem1984 = \"EPSG:4326\"; // See https://epsg.io/4326\n\n/**\n * Represents a geographic point in global coordinates.\n */\nexport default class GeographyPoint {\n /**\n * The latitude in decimal.\n */\n public latitude: number;\n /**\n * The longitude in decimal.\n */\n public longitude: number;\n\n /**\n * Constructs a new instance of GeographyPoint given\n * the specified coordinates.\n * @param geographyPoint - object with longitude and latitude values in decimal\n */\n constructor(geographyPoint: { longitude: number; latitude: number }) {\n this.longitude = geographyPoint.longitude;\n this.latitude = geographyPoint.latitude;\n }\n\n /**\n * Used to serialize to a GeoJSON Point.\n */\n public toJSON(): Record<string, unknown> {\n return {\n type: \"Point\",\n coordinates: [this.longitude, this.latitude],\n crs: { type: \"name\", properties: { name: WorldGeodeticSystem1984 } },\n };\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { IndexDocumentsAction } from \"./indexModels\";\n\n/**\n * Class used to perform batch operations\n * with multiple documents to the index.\n */\nexport class IndexDocumentsBatch<TModel> {\n /**\n * The set of actions taken in this batch.\n */\n public readonly actions: IndexDocumentsAction<TModel>[];\n\n constructor(actions: IndexDocumentsAction<TModel>[] = []) {\n this.actions = actions;\n }\n\n /**\n * Upload an array of documents to the index.\n * @param documents - The documents to upload.\n */\n public upload(documents: TModel[]): void {\n const batch = documents.map<IndexDocumentsAction<TModel>>((doc) => {\n return {\n ...doc,\n __actionType: \"upload\",\n };\n });\n\n this.actions.push(...batch);\n }\n\n /**\n * Update a set of documents in the index.\n * For more details about how merging works, see https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents\n * @param documents - The updated documents.\n */\n public merge(documents: TModel[]): void {\n const batch = documents.map<IndexDocumentsAction<TModel>>((doc) => {\n return {\n ...doc,\n __actionType: \"merge\",\n };\n });\n\n this.actions.push(...batch);\n }\n\n /**\n * Update a set of documents in the index or uploads them if they don't exist.\n * For more details about how merging works, see https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents\n * @param documents - The new/updated documents.\n */\n public mergeOrUpload(documents: TModel[]): void {\n const batch = documents.map<IndexDocumentsAction<TModel>>((doc) => {\n return {\n ...doc,\n __actionType: \"mergeOrUpload\",\n };\n });\n\n this.actions.push(...batch);\n }\n\n /**\n * Delete a set of documents.\n * @param keyName - The name of their primary key in the index.\n * @param keyValues - The primary key values of documents to delete.\n */\n public delete(keyName: keyof TModel, keyValues: string[]): void;\n\n /**\n * Delete a set of documents.\n * @param documents - Documents to be deleted.\n */\n public delete(documents: TModel[]): void;\n\n public delete(keyNameOrDocuments: keyof TModel | TModel[], keyValues?: string[]): void {\n if (keyValues) {\n const keyName = keyNameOrDocuments as keyof TModel;\n\n const batch = keyValues.map<IndexDocumentsAction<TModel>>((keyValue) => {\n return {\n __actionType: \"delete\",\n [keyName]: keyValue,\n } as IndexDocumentsAction<TModel>;\n });\n\n this.actions.push(...batch);\n } else {\n const documents = keyNameOrDocuments as TModel[];\n\n const batch = documents.map<IndexDocumentsAction<TModel>>((document) => {\n return {\n __actionType: \"delete\",\n ...document,\n } as IndexDocumentsAction<TModel>;\n });\n\n this.actions.push(...batch);\n }\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nfunction formatNullAndUndefined(input: unknown): string | unknown {\n if (input === null || input === undefined) {\n return \"null\";\n }\n\n return input;\n}\n\nfunction escapeQuotesIfString(input: unknown, previous: string): string | unknown {\n let result = input;\n\n if (typeof input === \"string\") {\n result = input.replace(/'/g, \"''\");\n // check if we need to escape this literal\n if (!previous.trim().endsWith(\"'\")) {\n result = `'${result}'`;\n }\n }\n\n return result;\n}\n\n/**\n * Escapes an odata filter expression to avoid errors with quoting string literals.\n * Example usage:\n * ```ts\n * const baseRateMax = 200;\n * const ratingMin = 4;\n * const filter = odata`Rooms/any(room: room/BaseRate lt ${baseRateMax}) and Rating ge ${ratingMin}`;\n * ```\n * For more information on supported syntax see: https://docs.microsoft.com/en-us/azure/search/search-query-odata-filter\n * @param strings - Array of strings for the expression\n * @param values - Array of values for the expression\n */\nexport function odata(strings: TemplateStringsArray, ...values: unknown[]): string {\n const results = [];\n for (let i = 0; i < strings.length; i++) {\n results.push(strings[i]);\n if (i < values.length) {\n if (values[i] === null || values[i] === undefined) {\n results.push(formatNullAndUndefined(values[i]));\n } else {\n results.push(escapeQuotesIfString(values[i], strings[i]));\n }\n }\n }\n return results.join(\"\");\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * Known values for Search Audience\n */\nexport enum KnownSearchAudience {\n /**\n * Audience for Azure China\n */\n AzureChina = \"https://search.azure.cn\",\n /**\n * Audience for Azure Government\n */\n AzureGovernment = \"https://search.azure.us\",\n /**\n * Audience for Azure Public\n */\n AzurePublicCloud = \"https://search.azure.com\",\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * Encodes a string in base64 format.\n * @param value - The string to encode.\n */\nexport function encode(value: string): string {\n return Buffer.from(value).toString(\"base64\");\n}\n\n/**\n * Decodes a base64 string into a regular string.\n * @param value - The base64 string to decode.\n */\nexport function decode(value: string): string {\n return Buffer.from(value, \"base64\").toString();\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 ErrorResponse: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\",\n modelProperties: {\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorDetail\",\n },\n },\n },\n },\n};\n\nexport const ErrorDetail: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorDetail\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n message: {\n serializedName: \"message\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n 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: \"ErrorDetail\",\n },\n },\n },\n },\n additionalInfo: {\n serializedName: \"additionalInfo\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ErrorAdditionalInfo\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const ErrorAdditionalInfo: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorAdditionalInfo\",\n modelProperties: {\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n info: {\n serializedName: \"info\",\n readOnly: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } },\n },\n },\n },\n },\n};\n\nexport const SearchDocumentsResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchDocumentsResult\",\n modelProperties: {\n count: {\n serializedName: \"@odata\\\\.count\",\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n coverage: {\n serializedName: \"@search\\\\.coverage\",\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n facets: {\n serializedName: \"@search\\\\.facets\",\n readOnly: true,\n type: {\n name: \"Dictionary\",\n value: {\n type: {\n name: \"Sequence\",\n element: {\n type: { name: \"Composite\", className: \"FacetResult\" },\n },\n },\n },\n },\n },\n answers: {\n serializedName: \"@search\\\\.answers\",\n readOnly: true,\n nullable: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"QueryAnswerResult\",\n },\n },\n },\n },\n nextPageParameters: {\n serializedName: \"@search\\\\.nextPageParameters\",\n type: {\n name: \"Composite\",\n className: \"SearchRequest\",\n },\n },\n results: {\n serializedName: \"value\",\n required: true,\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SearchResult\",\n },\n },\n },\n },\n nextLink: {\n serializedName: \"@odata\\\\.nextLink\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n semanticPartialResponseReason: {\n serializedName: \"@search\\\\.semanticPartialResponseReason\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n semanticPartialResponseType: {\n serializedName: \"@search\\\\.semanticPartialResponseType\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const FacetResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FacetResult\",\n additionalProperties: { type: { name: \"Object\" } },\n modelProperties: {\n count: {\n serializedName: \"count\",\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const QueryAnswerResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"QueryAnswerResult\",\n additionalProperties: { type: { name: \"Object\" } },\n modelProperties: {\n score: {\n serializedName: \"score\",\n required: true,\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n key: {\n serializedName: \"key\",\n required: true,\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n text: {\n serializedName: \"text\",\n required: true,\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n highlights: {\n serializedName: \"highlights\",\n readOnly: true,\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SearchRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchRequest\",\n modelProperties: {\n includeTotalResultCount: {\n serializedName: \"count\",\n type: {\n name: \"Boolean\",\n },\n },\n facets: {\n serializedName: \"facets\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n filter: {\n serializedName: \"filter\",\n type: {\n name: \"String\",\n },\n },\n highlightFields: {\n serializedName: \"highlight\",\n type: {\n name: \"String\",\n },\n },\n highlightPostTag: {\n serializedName: \"highlightPostTag\",\n type: {\n name: \"String\",\n },\n },\n highlightPreTag: {\n serializedName: \"highlightPreTag\",\n type: {\n name: \"String\",\n },\n },\n minimumCoverage: {\n serializedName: \"minimumCoverage\",\n type: {\n name: \"Number\",\n },\n },\n orderBy: {\n serializedName: \"orderby\",\n type: {\n name: \"String\",\n },\n },\n queryType: {\n serializedName: \"queryType\",\n type: {\n name: \"Enum\",\n allowedValues: [\"simple\", \"full\", \"semantic\"],\n },\n },\n scoringStatistics: {\n serializedName: \"scoringStatistics\",\n type: {\n name: \"Enum\",\n allowedValues: [\"local\", \"global\"],\n },\n },\n sessionId: {\n serializedName: \"sessionId\",\n type: {\n name: \"String\",\n },\n },\n scoringParameters: {\n serializedName: \"scoringParameters\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n scoringProfile: {\n serializedName: \"scoringProfile\",\n type: {\n name: \"String\",\n },\n },\n debug: {\n serializedName: \"debug\",\n type: {\n name: \"String\",\n },\n },\n searchText: {\n serializedName: \"search\",\n type: {\n name: \"String\",\n },\n },\n searchFields: {\n serializedName: \"searchFields\",\n type: {\n name: \"String\",\n },\n },\n searchMode: {\n serializedName: \"searchMode\",\n type: {\n name: \"Enum\",\n allowedValues: [\"any\", \"all\"],\n },\n },\n queryLanguage: {\n serializedName: \"queryLanguage\",\n type: {\n name: \"String\",\n },\n },\n speller: {\n serializedName: \"speller\",\n type: {\n name: \"String\",\n },\n },\n select: {\n serializedName: \"select\",\n type: {\n name: \"String\",\n },\n },\n skip: {\n serializedName: \"skip\",\n type: {\n name: \"Number\",\n },\n },\n top: {\n serializedName: \"top\",\n type: {\n name: \"Number\",\n },\n },\n semanticConfigurationName: {\n serializedName: \"semanticConfiguration\",\n type: {\n name: \"String\",\n },\n },\n semanticErrorHandling: {\n serializedName: \"semanticErrorHandling\",\n type: {\n name: \"String\",\n },\n },\n semanticMaxWaitInMilliseconds: {\n constraints: {\n InclusiveMinimum: 700,\n },\n serializedName: \"semanticMaxWaitInMilliseconds\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n semanticQuery: {\n serializedName: \"semanticQuery\",\n type: {\n name: \"String\",\n },\n },\n answers: {\n serializedName: \"answers\",\n type: {\n name: \"String\",\n },\n },\n captions: {\n serializedName: \"captions\",\n type: {\n name: \"String\",\n },\n },\n semanticFields: {\n serializedName: \"semanticFields\",\n type: {\n name: \"String\",\n },\n },\n vectorQueries: {\n serializedName: \"vectorQueries\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"VectorQuery\",\n },\n },\n },\n },\n vectorFilterMode: {\n serializedName: \"vectorFilterMode\",\n type: {\n name: \"String\",\n },\n },\n hybridSearch: {\n serializedName: \"hybridSearch\",\n type: {\n name: \"Composite\",\n className: \"HybridSearch\",\n },\n },\n },\n },\n};\n\nexport const VectorQuery: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"VectorQuery\",\n uberParent: \"VectorQuery\",\n polymorphicDiscriminator: {\n serializedName: \"kind\",\n clientName: \"kind\",\n },\n modelProperties: {\n kind: {\n serializedName: \"kind\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n kNearestNeighborsCount: {\n serializedName: \"k\",\n type: {\n name: \"Number\",\n },\n },\n fields: {\n serializedName: \"fields\",\n type: {\n name: \"String\",\n },\n },\n exhaustive: {\n serializedName: \"exhaustive\",\n type: {\n name: \"Boolean\",\n },\n },\n oversampling: {\n serializedName: \"oversampling\",\n type: {\n name: \"Number\",\n },\n },\n weight: {\n serializedName: \"weight\",\n type: {\n name: \"Number\",\n },\n },\n threshold: {\n serializedName: \"threshold\",\n type: {\n name: \"Composite\",\n className: \"VectorThreshold\",\n },\n },\n filterOverride: {\n serializedName: \"filterOverride\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const VectorThreshold: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"VectorThreshold\",\n uberParent: \"VectorThreshold\",\n polymorphicDiscriminator: {\n serializedName: \"kind\",\n clientName: \"kind\",\n },\n modelProperties: {\n kind: {\n serializedName: \"kind\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const HybridSearch: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"HybridSearch\",\n modelProperties: {\n maxTextRecallSize: {\n serializedName: \"maxTextRecallSize\",\n type: {\n name: \"Number\",\n },\n },\n countAndFacetMode: {\n serializedName: \"countAndFacetMode\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SearchResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchResult\",\n additionalProperties: { type: { name: \"Object\" } },\n modelProperties: {\n _score: {\n serializedName: \"@search\\\\.score\",\n required: true,\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n _rerankerScore: {\n serializedName: \"@search\\\\.rerankerScore\",\n readOnly: true,\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n _highlights: {\n serializedName: \"@search\\\\.highlights\",\n readOnly: true,\n type: {\n name: \"Dictionary\",\n value: {\n type: { name: \"Sequence\", element: { type: { name: \"String\" } } },\n },\n },\n },\n _captions: {\n serializedName: \"@search\\\\.captions\",\n readOnly: true,\n nullable: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"QueryCaptionResult\",\n },\n },\n },\n },\n documentDebugInfo: {\n serializedName: \"@search\\\\.documentDebugInfo\",\n readOnly: true,\n nullable: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"DocumentDebugInfo\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const QueryCaptionResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"QueryCaptionResult\",\n additionalProperties: { type: { name: \"Object\" } },\n modelProperties: {\n text: {\n serializedName: \"text\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n highlights: {\n serializedName: \"highlights\",\n readOnly: true,\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const DocumentDebugInfo: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DocumentDebugInfo\",\n modelProperties: {\n semantic: {\n serializedName: \"semantic\",\n type: {\n name: \"Composite\",\n className: \"SemanticDebugInfo\",\n },\n },\n vectors: {\n serializedName: \"vectors\",\n type: {\n name: \"Composite\",\n className: \"VectorsDebugInfo\",\n },\n },\n },\n },\n};\n\nexport const SemanticDebugInfo: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SemanticDebugInfo\",\n modelProperties: {\n titleField: {\n serializedName: \"titleField\",\n type: {\n name: \"Composite\",\n className: \"QueryResultDocumentSemanticField\",\n },\n },\n contentFields: {\n serializedName: \"contentFields\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"QueryResultDocumentSemanticField\",\n },\n },\n },\n },\n keywordFields: {\n serializedName: \"keywordFields\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"QueryResultDocumentSemanticField\",\n },\n },\n },\n },\n rerankerInput: {\n serializedName: \"rerankerInput\",\n type: {\n name: \"Composite\",\n className: \"QueryResultDocumentRerankerInput\",\n },\n },\n },\n },\n};\n\nexport const QueryResultDocumentSemanticField: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"QueryResultDocumentSemanticField\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n state: {\n serializedName: \"state\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const QueryResultDocumentRerankerInput: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"QueryResultDocumentRerankerInput\",\n modelProperties: {\n title: {\n serializedName: \"title\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n content: {\n serializedName: \"content\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n keywords: {\n serializedName: \"keywords\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const VectorsDebugInfo: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"VectorsDebugInfo\",\n modelProperties: {\n subscores: {\n serializedName: \"subscores\",\n type: {\n name: \"Composite\",\n className: \"QueryResultDocumentSubscores\",\n },\n },\n },\n },\n};\n\nexport const QueryResultDocumentSubscores: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"QueryResultDocumentSubscores\",\n modelProperties: {\n text: {\n serializedName: \"text\",\n type: {\n name: \"Composite\",\n className: \"TextResult\",\n },\n },\n vectors: {\n serializedName: \"vectors\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Dictionary\",\n value: {\n type: {\n name: \"Composite\",\n className: \"SingleVectorFieldResult\",\n },\n },\n },\n },\n },\n },\n documentBoost: {\n serializedName: \"documentBoost\",\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const TextResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TextResult\",\n modelProperties: {\n searchScore: {\n serializedName: \"searchScore\",\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const SingleVectorFieldResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SingleVectorFieldResult\",\n modelProperties: {\n searchScore: {\n serializedName: \"searchScore\",\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n vectorSimilarity: {\n serializedName: \"vectorSimilarity\",\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const SuggestDocumentsResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SuggestDocumentsResult\",\n modelProperties: {\n results: {\n serializedName: \"value\",\n required: true,\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SuggestResult\",\n },\n },\n },\n },\n coverage: {\n serializedName: \"@search\\\\.coverage\",\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const SuggestResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SuggestResult\",\n additionalProperties: { type: { name: \"Object\" } },\n modelProperties: {\n _text: {\n serializedName: \"@search\\\\.text\",\n required: true,\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SuggestRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SuggestRequest\",\n modelProperties: {\n filter: {\n serializedName: \"filter\",\n type: {\n name: \"String\",\n },\n },\n useFuzzyMatching: {\n serializedName: \"fuzzy\",\n type: {\n name: \"Boolean\",\n },\n },\n highlightPostTag: {\n serializedName: \"highlightPostTag\",\n type: {\n name: \"String\",\n },\n },\n highlightPreTag: {\n serializedName: \"highlightPreTag\",\n type: {\n name: \"String\",\n },\n },\n minimumCoverage: {\n serializedName: \"minimumCoverage\",\n type: {\n name: \"Number\",\n },\n },\n orderBy: {\n serializedName: \"orderby\",\n type: {\n name: \"String\",\n },\n },\n searchText: {\n serializedName: \"search\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n searchFields: {\n serializedName: \"searchFields\",\n type: {\n name: \"String\",\n },\n },\n select: {\n serializedName: \"select\",\n type: {\n name: \"String\",\n },\n },\n suggesterName: {\n serializedName: \"suggesterName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n top: {\n serializedName: \"top\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const IndexBatch: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"IndexBatch\",\n modelProperties: {\n actions: {\n serializedName: \"value\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"IndexAction\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const IndexAction: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"IndexAction\",\n additionalProperties: { type: { name: \"Object\" } },\n modelProperties: {\n __actionType: {\n serializedName: \"@search\\\\.action\",\n required: true,\n type: {\n name: \"Enum\",\n allowedValues: [\"upload\", \"merge\", \"mergeOrUpload\", \"delete\"],\n },\n },\n },\n },\n};\n\nexport const IndexDocumentsResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"IndexDocumentsResult\",\n modelProperties: {\n results: {\n serializedName: \"value\",\n required: true,\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"IndexingResult\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const IndexingResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"IndexingResult\",\n modelProperties: {\n key: {\n serializedName: \"key\",\n required: true,\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n errorMessage: {\n serializedName: \"errorMessage\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n succeeded: {\n serializedName: \"status\",\n required: true,\n readOnly: true,\n type: {\n name: \"Boolean\",\n },\n },\n statusCode: {\n serializedName: \"statusCode\",\n required: true,\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const AutocompleteResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AutocompleteResult\",\n modelProperties: {\n coverage: {\n serializedName: \"@search\\\\.coverage\",\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n results: {\n serializedName: \"value\",\n required: true,\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"AutocompleteItem\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const AutocompleteItem: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AutocompleteItem\",\n modelProperties: {\n text: {\n serializedName: \"text\",\n required: true,\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n queryPlusText: {\n serializedName: \"queryPlusText\",\n required: true,\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const AutocompleteRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AutocompleteRequest\",\n modelProperties: {\n searchText: {\n serializedName: \"search\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n autocompleteMode: {\n serializedName: \"autocompleteMode\",\n type: {\n name: \"Enum\",\n allowedValues: [\"oneTerm\", \"twoTerms\", \"oneTermWithContext\"],\n },\n },\n filter: {\n serializedName: \"filter\",\n type: {\n name: \"String\",\n },\n },\n useFuzzyMatching: {\n serializedName: \"fuzzy\",\n type: {\n name: \"Boolean\",\n },\n },\n highlightPostTag: {\n serializedName: \"highlightPostTag\",\n type: {\n name: \"String\",\n },\n },\n highlightPreTag: {\n serializedName: \"highlightPreTag\",\n type: {\n name: \"String\",\n },\n },\n minimumCoverage: {\n serializedName: \"minimumCoverage\",\n type: {\n name: \"Number\",\n },\n },\n searchFields: {\n serializedName: \"searchFields\",\n type: {\n name: \"String\",\n },\n },\n suggesterName: {\n serializedName: \"suggesterName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n top: {\n serializedName: \"top\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const VectorizedQuery: coreClient.CompositeMapper = {\n serializedName: \"vector\",\n type: {\n name: \"Composite\",\n className: \"VectorizedQuery\",\n uberParent: \"VectorQuery\",\n polymorphicDiscriminator: VectorQuery.type.polymorphicDiscriminator,\n modelProperties: {\n ...VectorQuery.type.modelProperties,\n vector: {\n serializedName: \"vector\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Number\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const VectorizableTextQuery: coreClient.CompositeMapper = {\n serializedName: \"text\",\n type: {\n name: \"Composite\",\n className: \"VectorizableTextQuery\",\n uberParent: \"VectorQuery\",\n polymorphicDiscriminator: VectorQuery.type.polymorphicDiscriminator,\n modelProperties: {\n ...VectorQuery.type.modelProperties,\n text: {\n serializedName: \"text\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const VectorizableImageUrlQuery: coreClient.CompositeMapper = {\n serializedName: \"imageUrl\",\n type: {\n name: \"Composite\",\n className: \"VectorizableImageUrlQuery\",\n uberParent: \"VectorQuery\",\n polymorphicDiscriminator: VectorQuery.type.polymorphicDiscriminator,\n modelProperties: {\n ...VectorQuery.type.modelProperties,\n url: {\n serializedName: \"url\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const VectorizableImageBinaryQuery: coreClient.CompositeMapper = {\n serializedName: \"imageBinary\",\n type: {\n name: \"Composite\",\n className: \"VectorizableImageBinaryQuery\",\n uberParent: \"VectorQuery\",\n polymorphicDiscriminator: VectorQuery.type.polymorphicDiscriminator,\n modelProperties: {\n ...VectorQuery.type.modelProperties,\n base64Image: {\n serializedName: \"base64Image\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const VectorSimilarityThreshold: coreClient.CompositeMapper = {\n serializedName: \"vectorSimilarity\",\n type: {\n name: \"Composite\",\n className: \"VectorSimilarityThreshold\",\n uberParent: \"VectorThreshold\",\n polymorphicDiscriminator: VectorThreshold.type.polymorphicDiscriminator,\n modelProperties: {\n ...VectorThreshold.type.modelProperties,\n value: {\n serializedName: \"value\",\n required: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const SearchScoreThreshold: coreClient.CompositeMapper = {\n serializedName: \"searchScore\",\n type: {\n name: \"Composite\",\n className: \"SearchScoreThreshold\",\n uberParent: \"VectorThreshold\",\n polymorphicDiscriminator: VectorThreshold.type.polymorphicDiscriminator,\n modelProperties: {\n ...VectorThreshold.type.modelProperties,\n value: {\n serializedName: \"value\",\n required: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport let discriminators = {\n VectorQuery: VectorQuery,\n VectorThreshold: VectorThreshold,\n \"VectorQuery.vector\": VectorizedQuery,\n \"VectorQuery.text\": VectorizableTextQuery,\n \"VectorQuery.imageUrl\": VectorizableImageUrlQuery,\n \"VectorQuery.imageBinary\": VectorizableImageBinaryQuery,\n \"VectorThreshold.vectorSimilarity\": VectorSimilarityThreshold,\n \"VectorThreshold.searchScore\": SearchScoreThreshold,\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 SearchRequest as SearchRequestMapper,\n SuggestRequest as SuggestRequestMapper,\n IndexBatch as IndexBatchMapper,\n AutocompleteRequest as AutocompleteRequestMapper,\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 indexName: OperationURLParameter = {\n parameterPath: \"indexName\",\n mapper: {\n serializedName: \"indexName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const apiVersion: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n serializedName: \"api-version\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const searchText: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchText\"],\n mapper: {\n serializedName: \"search\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const includeTotalResultCount: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"includeTotalResultCount\"],\n mapper: {\n serializedName: \"$count\",\n type: {\n name: \"Boolean\",\n },\n },\n};\n\nexport const facets: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"facets\"],\n mapper: {\n serializedName: \"facet\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n collectionFormat: \"Multi\",\n};\n\nexport const filter: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"filter\"],\n mapper: {\n serializedName: \"$filter\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const highlightFields: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"highlightFields\"],\n mapper: {\n serializedName: \"highlight\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n collectionFormat: \"CSV\",\n};\n\nexport const highlightPostTag: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"highlightPostTag\"],\n mapper: {\n serializedName: \"highlightPostTag\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const highlightPreTag: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"highlightPreTag\"],\n mapper: {\n serializedName: \"highlightPreTag\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const minimumCoverage: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"minimumCoverage\"],\n mapper: {\n serializedName: \"minimumCoverage\",\n type: {\n name: \"Number\",\n },\n },\n};\n\nexport const orderBy: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"orderBy\"],\n mapper: {\n serializedName: \"$orderby\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n collectionFormat: \"CSV\",\n};\n\nexport const queryType: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"queryType\"],\n mapper: {\n serializedName: \"queryType\",\n type: {\n name: \"Enum\",\n allowedValues: [\"simple\", \"full\", \"semantic\"],\n },\n },\n};\n\nexport const scoringParameters: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"scoringParameters\"],\n mapper: {\n serializedName: \"scoringParameter\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n collectionFormat: \"Multi\",\n};\n\nexport const scoringProfile: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"scoringProfile\"],\n mapper: {\n serializedName: \"scoringProfile\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const searchFields: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"searchFields\"],\n mapper: {\n serializedName: \"searchFields\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n collectionFormat: \"CSV\",\n};\n\nexport const searchMode: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"searchMode\"],\n mapper: {\n serializedName: \"searchMode\",\n type: {\n name: \"Enum\",\n allowedValues: [\"any\", \"all\"],\n },\n },\n};\n\nexport const scoringStatistics: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"scoringStatistics\"],\n mapper: {\n serializedName: \"scoringStatistics\",\n type: {\n name: \"Enum\",\n allowedValues: [\"local\", \"global\"],\n },\n },\n};\n\nexport const sessionId: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"sessionId\"],\n mapper: {\n serializedName: \"sessionId\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const select: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"select\"],\n mapper: {\n serializedName: \"$select\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n collectionFormat: \"CSV\",\n};\n\nexport const skip: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"skip\"],\n mapper: {\n serializedName: \"$skip\",\n type: {\n name: \"Number\",\n },\n },\n};\n\nexport const top: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"top\"],\n mapper: {\n serializedName: \"$top\",\n type: {\n name: \"Number\",\n },\n },\n};\n\nexport const semanticConfiguration: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"semanticConfiguration\"],\n mapper: {\n serializedName: \"semanticConfiguration\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const semanticErrorHandling: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"semanticErrorHandling\"],\n mapper: {\n serializedName: \"semanticErrorHandling\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const semanticMaxWaitInMilliseconds: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"semanticMaxWaitInMilliseconds\"],\n mapper: {\n constraints: {\n InclusiveMinimum: 700,\n },\n serializedName: \"semanticMaxWaitInMilliseconds\",\n type: {\n name: \"Number\",\n },\n },\n};\n\nexport const answers: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"answers\"],\n mapper: {\n serializedName: \"answers\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const captions: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"captions\"],\n mapper: {\n serializedName: \"captions\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const semanticQuery: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"semanticQuery\"],\n mapper: {\n serializedName: \"semanticQuery\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const debug: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"debug\"],\n mapper: {\n serializedName: \"debug\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const queryLanguage: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"queryLanguage\"],\n mapper: {\n serializedName: \"queryLanguage\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const speller: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"speller\"],\n mapper: {\n serializedName: \"speller\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const semanticFields: OperationQueryParameter = {\n parameterPath: [\"options\", \"searchOptions\", \"semanticFields\"],\n mapper: {\n serializedName: \"semanticFields\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n collectionFormat: \"CSV\",\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 searchRequest: OperationParameter = {\n parameterPath: \"searchRequest\",\n mapper: SearchRequestMapper,\n};\n\nexport const key: OperationURLParameter = {\n parameterPath: \"key\",\n mapper: {\n serializedName: \"key\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const selectedFields: OperationQueryParameter = {\n parameterPath: [\"options\", \"selectedFields\"],\n mapper: {\n serializedName: \"$select\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n collectionFormat: \"CSV\",\n};\n\nexport const searchText1: OperationQueryParameter = {\n parameterPath: \"searchText\",\n mapper: {\n serializedName: \"search\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const suggesterName: OperationQueryParameter = {\n parameterPath: \"suggesterName\",\n mapper: {\n serializedName: \"suggesterName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const filter1: OperationQueryParameter = {\n parameterPath: [\"options\", \"suggestOptions\", \"filter\"],\n mapper: {\n serializedName: \"$filter\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const useFuzzyMatching: OperationQueryParameter = {\n parameterPath: [\"options\", \"suggestOptions\", \"useFuzzyMatching\"],\n mapper: {\n serializedName: \"fuzzy\",\n type: {\n name: \"Boolean\",\n },\n },\n};\n\nexport const highlightPostTag1: OperationQueryParameter = {\n parameterPath: [\"options\", \"suggestOptions\", \"highlightPostTag\"],\n mapper: {\n serializedName: \"highlightPostTag\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const highlightPreTag1: OperationQueryParameter = {\n parameterPath: [\"options\", \"suggestOptions\", \"highlightPreTag\"],\n mapper: {\n serializedName: \"highlightPreTag\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const minimumCoverage1: OperationQueryParameter = {\n parameterPath: [\"options\", \"suggestOptions\", \"minimumCoverage\"],\n mapper: {\n serializedName: \"minimumCoverage\",\n type: {\n name: \"Number\",\n },\n },\n};\n\nexport const orderBy1: OperationQueryParameter = {\n parameterPath: [\"options\", \"suggestOptions\", \"orderBy\"],\n mapper: {\n serializedName: \"$orderby\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n collectionFormat: \"CSV\",\n};\n\nexport const searchFields1: OperationQueryParameter = {\n parameterPath: [\"options\", \"suggestOptions\", \"searchFields\"],\n mapper: {\n serializedName: \"searchFields\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n collectionFormat: \"CSV\",\n};\n\nexport const select1: OperationQueryParameter = {\n parameterPath: [\"options\", \"suggestOptions\", \"select\"],\n mapper: {\n serializedName: \"$select\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n collectionFormat: \"CSV\",\n};\n\nexport const top1: OperationQueryParameter = {\n parameterPath: [\"options\", \"suggestOptions\", \"top\"],\n mapper: {\n serializedName: \"$top\",\n type: {\n name: \"Number\",\n },\n },\n};\n\nexport const suggestRequest: OperationParameter = {\n parameterPath: \"suggestRequest\",\n mapper: SuggestRequestMapper,\n};\n\nexport const batch: OperationParameter = {\n parameterPath: \"batch\",\n mapper: IndexBatchMapper,\n};\n\nexport const autocompleteMode: OperationQueryParameter = {\n parameterPath: [\"options\", \"autocompleteOptions\", \"autocompleteMode\"],\n mapper: {\n serializedName: \"autocompleteMode\",\n type: {\n name: \"Enum\",\n allowedValues: [\"oneTerm\", \"twoTerms\", \"oneTermWithContext\"],\n },\n },\n};\n\nexport const filter2: OperationQueryParameter = {\n parameterPath: [\"options\", \"autocompleteOptions\", \"filter\"],\n mapper: {\n serializedName: \"$filter\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const useFuzzyMatching1: OperationQueryParameter = {\n parameterPath: [\"options\", \"autocompleteOptions\", \"useFuzzyMatching\"],\n mapper: {\n serializedName: \"fuzzy\",\n type: {\n name: \"Boolean\",\n },\n },\n};\n\nexport const highlightPostTag2: OperationQueryParameter = {\n parameterPath: [\"options\", \"autocompleteOptions\", \"highlightPostTag\"],\n mapper: {\n serializedName: \"highlightPostTag\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const highlightPreTag2: OperationQueryParameter = {\n parameterPath: [\"options\", \"autocompleteOptions\", \"highlightPreTag\"],\n mapper: {\n serializedName: \"highlightPreTag\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const minimumCoverage2: OperationQueryParameter = {\n parameterPath: [\"options\", \"autocompleteOptions\", \"minimumCoverage\"],\n mapper: {\n serializedName: \"minimumCoverage\",\n type: {\n name: \"Number\",\n },\n },\n};\n\nexport const searchFields2: OperationQueryParameter = {\n parameterPath: [\"options\", \"autocompleteOptions\", \"searchFields\"],\n mapper: {\n serializedName: \"searchFields\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n collectionFormat: \"CSV\",\n};\n\nexport const top2: OperationQueryParameter = {\n parameterPath: [\"options\", \"autocompleteOptions\", \"top\"],\n mapper: {\n serializedName: \"$top\",\n type: {\n name: \"Number\",\n },\n },\n};\n\nexport const autocompleteRequest: OperationParameter = {\n parameterPath: \"autocompleteRequest\",\n mapper: AutocompleteRequestMapper,\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 { Documents } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { SearchClient } from \"../searchClient\";\nimport {\n DocumentsCountOptionalParams,\n DocumentsCountResponse,\n DocumentsSearchGetOptionalParams,\n DocumentsSearchGetResponse,\n SearchRequest,\n DocumentsSearchPostOptionalParams,\n DocumentsSearchPostResponse,\n DocumentsGetOptionalParams,\n DocumentsGetResponse,\n DocumentsSuggestGetOptionalParams,\n DocumentsSuggestGetResponse,\n SuggestRequest,\n DocumentsSuggestPostOptionalParams,\n DocumentsSuggestPostResponse,\n IndexBatch,\n DocumentsIndexOptionalParams,\n DocumentsIndexResponse,\n DocumentsAutocompleteGetOptionalParams,\n DocumentsAutocompleteGetResponse,\n AutocompleteRequest,\n DocumentsAutocompletePostOptionalParams,\n DocumentsAutocompletePostResponse,\n} from \"../models\";\n\n/** Class containing Documents operations. */\nexport class DocumentsImpl implements Documents {\n private readonly client: SearchClient;\n\n /**\n * Initialize a new instance of the class Documents class.\n * @param client Reference to the service client\n */\n constructor(client: SearchClient) {\n this.client = client;\n }\n\n /**\n * Queries the number of documents in the index.\n * @param options The options parameters.\n */\n count(\n options?: DocumentsCountOptionalParams,\n ): Promise<DocumentsCountResponse> {\n return this.client.sendOperationRequest({ options }, countOperationSpec);\n }\n\n /**\n * Searches for documents in the index.\n * @param options The options parameters.\n */\n searchGet(\n options?: DocumentsSearchGetOptionalParams,\n ): Promise<DocumentsSearchGetResponse> {\n return this.client.sendOperationRequest(\n { options },\n searchGetOperationSpec,\n );\n }\n\n /**\n * Searches for documents in the index.\n * @param searchRequest The definition of the Search request.\n * @param options The options parameters.\n */\n searchPost(\n searchRequest: SearchRequest,\n options?: DocumentsSearchPostOptionalParams,\n ): Promise<DocumentsSearchPostResponse> {\n return this.client.sendOperationRequest(\n { searchRequest, options },\n searchPostOperationSpec,\n );\n }\n\n /**\n * Retrieves a document from the index.\n * @param key The key of the document to retrieve.\n * @param options The options parameters.\n */\n get(\n key: string,\n options?: DocumentsGetOptionalParams,\n ): Promise<DocumentsGetResponse> {\n return this.client.sendOperationRequest({ key, options }, getOperationSpec);\n }\n\n /**\n * Suggests documents in the index that match the given partial query text.\n * @param searchText The search text to use to suggest documents. Must be at least 1 character, and no\n * more than 100 characters.\n * @param suggesterName The name of the suggester as specified in the suggesters collection that's part\n * of the index definition.\n * @param options The options parameters.\n */\n suggestGet(\n searchText: string,\n suggesterName: string,\n options?: DocumentsSuggestGetOptionalParams,\n ): Promise<DocumentsSuggestGetResponse> {\n return this.client.sendOperationRequest(\n { searchText, suggesterName, options },\n suggestGetOperationSpec,\n );\n }\n\n /**\n * Suggests documents in the index that match the given partial query text.\n * @param suggestRequest The Suggest request.\n * @param options The options parameters.\n */\n suggestPost(\n suggestRequest: SuggestRequest,\n options?: DocumentsSuggestPostOptionalParams,\n ): Promise<DocumentsSuggestPostResponse> {\n return this.client.sendOperationRequest(\n { suggestRequest, options },\n suggestPostOperationSpec,\n );\n }\n\n /**\n * Sends a batch of document write actions to the index.\n * @param batch The batch of index actions.\n * @param options The options parameters.\n */\n index(\n batch: IndexBatch,\n options?: DocumentsIndexOptionalParams,\n ): Promise<DocumentsIndexResponse> {\n return this.client.sendOperationRequest(\n { batch, options },\n indexOperationSpec,\n );\n }\n\n /**\n * Autocompletes incomplete query terms based on input text and matching terms in the index.\n * @param searchText The incomplete term which should be auto-completed.\n * @param suggesterName The name of the suggester as specified in the suggesters collection that's part\n * of the index definition.\n * @param options The options parameters.\n */\n autocompleteGet(\n searchText: string,\n suggesterName: string,\n options?: DocumentsAutocompleteGetOptionalParams,\n ): Promise<DocumentsAutocompleteGetResponse> {\n return this.client.sendOperationRequest(\n { searchText, suggesterName, options },\n autocompleteGetOperationSpec,\n );\n }\n\n /**\n * Autocompletes incomplete query terms based on input text and matching terms in the index.\n * @param autocompleteRequest The definition of the Autocomplete request.\n * @param options The options parameters.\n */\n autocompletePost(\n autocompleteRequest: AutocompleteRequest,\n options?: DocumentsAutocompletePostOptionalParams,\n ): Promise<DocumentsAutocompletePostResponse> {\n return this.client.sendOperationRequest(\n { autocompleteRequest, options },\n autocompletePostOperationSpec,\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst countOperationSpec: coreClient.OperationSpec = {\n path: \"/docs/$count\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: { type: { name: \"Number\" } },\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.indexName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst searchGetOperationSpec: coreClient.OperationSpec = {\n path: \"/docs\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SearchDocumentsResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.searchText,\n Parameters.includeTotalResultCount,\n Parameters.facets,\n Parameters.filter,\n Parameters.highlightFields,\n Parameters.highlightPostTag,\n Parameters.highlightPreTag,\n Parameters.minimumCoverage,\n Parameters.orderBy,\n Parameters.queryType,\n Parameters.scoringParameters,\n Parameters.scoringProfile,\n Parameters.searchFields,\n Parameters.searchMode,\n Parameters.scoringStatistics,\n Parameters.sessionId,\n Parameters.select,\n Parameters.skip,\n Parameters.top,\n Parameters.semanticConfiguration,\n Parameters.semanticErrorHandling,\n Parameters.semanticMaxWaitInMilliseconds,\n Parameters.answers,\n Parameters.captions,\n Parameters.semanticQuery,\n Parameters.debug,\n Parameters.queryLanguage,\n Parameters.speller,\n Parameters.semanticFields,\n ],\n urlParameters: [Parameters.endpoint, Parameters.indexName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst searchPostOperationSpec: coreClient.OperationSpec = {\n path: \"/docs/search.post.search\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.SearchDocumentsResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.searchRequest,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.indexName],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path: \"/docs('{key}')\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: {\n type: { name: \"Dictionary\", value: { type: { name: \"any\" } } },\n },\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion, Parameters.selectedFields],\n urlParameters: [Parameters.endpoint, Parameters.indexName, Parameters.key],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst suggestGetOperationSpec: coreClient.OperationSpec = {\n path: \"/docs/search.suggest\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SuggestDocumentsResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.searchText1,\n Parameters.suggesterName,\n Parameters.filter1,\n Parameters.useFuzzyMatching,\n Parameters.highlightPostTag1,\n Parameters.highlightPreTag1,\n Parameters.minimumCoverage1,\n Parameters.orderBy1,\n Parameters.searchFields1,\n Parameters.select1,\n Parameters.top1,\n ],\n urlParameters: [Parameters.endpoint, Parameters.indexName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst suggestPostOperationSpec: coreClient.OperationSpec = {\n path: \"/docs/search.post.suggest\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.SuggestDocumentsResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.suggestRequest,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.indexName],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst indexOperationSpec: coreClient.OperationSpec = {\n path: \"/docs/search.index\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.IndexDocumentsResult,\n },\n 207: {\n bodyMapper: Mappers.IndexDocumentsResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.batch,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.indexName],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst autocompleteGetOperationSpec: coreClient.OperationSpec = {\n path: \"/docs/search.autocomplete\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.AutocompleteResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [\n Parameters.apiVersion,\n Parameters.searchText1,\n Parameters.suggesterName,\n Parameters.autocompleteMode,\n Parameters.filter2,\n Parameters.useFuzzyMatching1,\n Parameters.highlightPostTag2,\n Parameters.highlightPreTag2,\n Parameters.minimumCoverage2,\n Parameters.searchFields2,\n Parameters.top2,\n ],\n urlParameters: [Parameters.endpoint, Parameters.indexName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst autocompletePostOperationSpec: coreClient.OperationSpec = {\n path: \"/docs/search.post.autocomplete\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.AutocompleteResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.autocompleteRequest,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.indexName],\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 coreHttpCompat from \"@azure/core-http-compat\";\nimport {\n PipelineRequest,\n PipelineResponse,\n SendRequest,\n} from \"@azure/core-rest-pipeline\";\nimport { DocumentsImpl } from \"./operations\";\nimport { Documents } from \"./operationsInterfaces\";\nimport {\n ApiVersion20240901Preview,\n SearchClientOptionalParams,\n} from \"./models\";\n\n/** @internal */\nexport class SearchClient extends coreHttpCompat.ExtendedServiceClient {\n endpoint: string;\n indexName: string;\n apiVersion: ApiVersion20240901Preview;\n\n /**\n * Initializes a new instance of the SearchClient class.\n * @param endpoint The endpoint URL of the search service.\n * @param indexName The name of the index.\n * @param apiVersion Api Version\n * @param options The parameter options\n */\n constructor(\n endpoint: string,\n indexName: string,\n apiVersion: ApiVersion20240901Preview,\n options?: SearchClientOptionalParams,\n ) {\n if (endpoint === undefined) {\n throw new Error(\"'endpoint' cannot be null\");\n }\n if (indexName === undefined) {\n throw new Error(\"'indexName' cannot be null\");\n }\n if (apiVersion === undefined) {\n throw new Error(\"'apiVersion' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: SearchClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\",\n };\n\n const packageDetails = `azsdk-js-search-documents/12.2.0-beta.1`;\n const userAgentPrefix =\n options.userAgentOptions && options.userAgentOptions.userAgentPrefix\n ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`\n : `${packageDetails}`;\n\n const optionsWithDefaults = {\n ...defaults,\n ...options,\n userAgentOptions: {\n userAgentPrefix,\n },\n endpoint:\n options.endpoint ??\n options.baseUri ??\n \"{endpoint}/indexes('{indexName}')\",\n };\n super(optionsWithDefaults);\n // Parameter assignments\n this.endpoint = endpoint;\n this.indexName = indexName;\n this.apiVersion = apiVersion;\n this.documents = new DocumentsImpl(this);\n this.addCustomApiVersionPolicy(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 documents: Documents;\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(\"search\");\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n PipelinePolicy,\n PipelineRequest,\n PipelineResponse,\n SendRequest,\n} from \"@azure/core-rest-pipeline\";\n\nconst AcceptHeaderName = \"Accept\";\n\ntype MetadataLevel = \"none\" | \"minimal\";\nconst odataMetadataPolicy = \"OdataMetadataPolicy\";\n\n/**\n * A policy factory for setting the Accept header to ignore odata metadata\n * @internal\n */\nexport function createOdataMetadataPolicy(metadataLevel: MetadataLevel): PipelinePolicy {\n return {\n name: odataMetadataPolicy,\n async sendRequest(request: PipelineRequest, next: SendRequest): Promise<PipelineResponse> {\n request.headers.set(AcceptHeaderName, `application/json;odata.metadata=${metadataLevel}`);\n return next(request);\n },\n };\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { KeyCredential } from \"@azure/core-auth\";\nimport {\n PipelinePolicy,\n PipelineRequest,\n PipelineResponse,\n SendRequest,\n} from \"@azure/core-rest-pipeline\";\n\nconst API_KEY_HEADER_NAME = \"api-key\";\nconst searchApiKeyCredentialPolicy = \"SearchApiKeyCredentialPolicy\";\n\n/**\n * Create an HTTP pipeline policy to authenticate a request\n * using an `AzureKeyCredential` for Azure Cognitive Search\n */\nexport function createSearchApiKeyCredentialPolicy(credential: KeyCredential): PipelinePolicy {\n return {\n name: searchApiKeyCredentialPolicy,\n async sendRequest(request: PipelineRequest, next: SendRequest): Promise<PipelineResponse> {\n if (!request.headers.has(API_KEY_HEADER_NAME)) {\n request.headers.set(API_KEY_HEADER_NAME, credential.key);\n }\n return next(request);\n },\n };\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { isDefined } from \"@azure/core-util\";\n\nexport function walk(v: unknown, fn: <T>(val: T) => unknown): unknown {\n const seen = new Set();\n const mutated = new Map();\n deepLazyApply(v);\n for (const value of mutated.values()) {\n replaceChildren(value);\n }\n return mutated.get(v) ?? v;\n\n function deepLazyApply(value: unknown): void {\n if (seen.has(value)) {\n return;\n }\n seen.add(value);\n\n const children = getChildren(cachedApply(value) ?? value);\n children?.forEach(deepLazyApply);\n if (children?.some((node) => mutated.has(node))) {\n mutated.set(value, mutated.get(value) ?? shallowCopy(value));\n }\n }\n\n function cachedApply(value: unknown): unknown | undefined {\n const cached = mutated.get(value);\n if (isDefined(cached)) {\n return cached;\n }\n const applied = fn(value);\n if (value !== applied) {\n mutated.set(value, applied);\n }\n return mutated.get(value);\n }\n\n function replaceChildren(applied: unknown): void {\n if (!isComplex(applied)) {\n return;\n } else if (Array.isArray(applied)) {\n applied.forEach((e, i) => {\n applied[i] = mutated.get(e) ?? e;\n });\n } else if (typeof applied === \"object\" && applied !== null) {\n Object.keys(applied).forEach((key) => {\n (applied as any)[key] = mutated.get((applied as any)[key]) ?? (applied as any)[key];\n });\n }\n }\n}\n\n/**\n * Array inputs SHOULD not have both complex and non-complex elements. This function determines\n * whether an array is complex based solely on the first element.\n */\nfunction isComplex(v: unknown): v is object {\n return Array.isArray(v) ? isComplex(v[0]) : typeof v === \"object\" && v !== null;\n}\n\nfunction getChildren(v: unknown): unknown[] | undefined {\n if (!isComplex(v)) {\n return;\n }\n\n if (Array.isArray(v)) {\n return v;\n }\n\n return Object.values(v);\n}\n\nfunction shallowCopy(value: unknown): unknown {\n const maybeCopy = Array.isArray(value)\n ? value.map((v) => v)\n : typeof value === \"object\" && value !== null\n ? { ...value }\n : value;\n\n return value === maybeCopy\n ? value\n : Object.setPrototypeOf(maybeCopy, Object.getPrototypeOf(value));\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport GeographyPoint from \"./geographyPoint\";\nimport { walk } from \"./walk\";\n\nconst ISO8601DateRegex = /^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d{1,3})?Z$/i;\nconst GeoJSONPointTypeName = \"Point\";\nconst WorldGeodeticSystem1984 = \"EPSG:4326\"; // See https://epsg.io/4326\n\nconst [serializeValue, deserializeValue] = [\n [serializeSpecialNumbers, serializeDates, serializeGeoPoint],\n [deserializeSpecialNumbers, deserializeDates, deserializeGeoPoint],\n].map(\n (fns) =>\n (value: unknown): unknown =>\n fns.reduceRight((acc, fn) => fn(acc), value),\n);\n\nexport function serialize<OutputT>(obj: unknown): OutputT {\n return walk(obj, serializeValue) as OutputT;\n}\n\nexport function deserialize<OutputT>(obj: unknown): OutputT {\n return walk(obj, deserializeValue) as OutputT;\n}\n\nfunction serializeSpecialNumbers(input: unknown): unknown {\n if (typeof input === \"number\" && isNaN(input)) {\n return \"NaN\";\n } else if (input === Infinity) {\n return \"INF\";\n } else if (input === -Infinity) {\n return \"-INF\";\n } else {\n return input;\n }\n}\n\nfunction serializeDates(input: unknown): string | unknown {\n return input instanceof Date ? input.toISOString() : input;\n}\n\nfunction serializeGeoPoint(input: unknown): object | unknown {\n return input instanceof GeographyPoint ? input.toJSON() : input;\n}\n\nfunction deserializeSpecialNumbers(input: unknown): unknown {\n switch (input) {\n case \"NaN\":\n return NaN;\n case \"-INF\":\n return -Infinity;\n case \"INF\":\n return Infinity;\n default:\n return input;\n }\n}\n\nfunction deserializeDates(input: unknown): Date | unknown {\n return typeof input === \"string\" && ISO8601DateRegex.test(input) ? new Date(input) : input;\n}\n\nfunction deserializeGeoPoint(input: unknown): GeographyPoint | unknown {\n if (isGeoJSONPoint(input)) {\n const [longitude, latitude] = input.coordinates;\n return new GeographyPoint({ longitude, latitude });\n }\n return input;\n}\n\ninterface GeoJSONPoint {\n type: \"Point\";\n coordinates: [number, number];\n crs: {\n type: \"name\";\n properties: {\n name: \"EPSG:4326\";\n };\n };\n}\n\nfunction isGeoJSONPoint(obj: any): obj is GeoJSONPoint {\n const requiredKeys = [\"type\", \"coordinates\"];\n return isValidObject(obj, {\n requiredKeys,\n propertyValidator: (key) => {\n switch (key) {\n case \"type\":\n return obj.type === GeoJSONPointTypeName;\n break;\n case \"coordinates\":\n return isCoordinateArray(obj.coordinates);\n break;\n case \"crs\":\n return isCrs(obj.crs);\n break;\n default:\n return false;\n }\n },\n });\n}\n\nfunction isCoordinateArray(maybeCoordinates: any): boolean {\n if (!Array.isArray(maybeCoordinates)) {\n return false;\n }\n if (maybeCoordinates.length !== 2) {\n return false;\n }\n if (typeof maybeCoordinates[0] !== \"number\" || typeof maybeCoordinates[1] !== \"number\") {\n return false;\n }\n return true;\n}\n\nfunction isCrs(maybeCrs: any): boolean {\n return isValidObject(maybeCrs, {\n requiredKeys: [\"type\", \"properties\"],\n propertyValidator: (key) => {\n switch (key) {\n case \"type\":\n return maybeCrs.type === \"name\";\n break;\n case \"properties\":\n return isCrsProperties(maybeCrs.properties);\n break;\n default:\n return false;\n }\n },\n });\n}\n\nfunction isCrsProperties(maybeProperties: any): boolean {\n return isValidObject(maybeProperties, {\n requiredKeys: [\"name\"],\n propertyValidator: (key) => {\n if (key === \"name\") {\n return maybeProperties.name === WorldGeodeticSystem1984;\n } else {\n return false;\n }\n },\n });\n}\n\nfunction isValidObject(\n obj: any,\n options: {\n requiredKeys?: string[];\n propertyValidator?: (keyName: string) => boolean;\n } = {},\n): boolean {\n if (typeof obj !== \"object\" || obj === null) {\n return false;\n }\n\n const keys = Object.keys(obj);\n\n if (options.requiredKeys) {\n for (const requiredKey of options.requiredKeys) {\n if (!keys.includes(requiredKey)) {\n return false;\n }\n }\n }\n\n if (options.propertyValidator) {\n for (const key of keys) {\n if (!options.propertyValidator(key)) {\n return false;\n }\n }\n }\n\n return true;\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { OperationOptions } from \"@azure/core-client\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport {\n AIStudioModelCatalogName,\n AsciiFoldingTokenFilter,\n AzureMachineLearningSkill,\n AzureOpenAIModelName,\n AzureOpenAITokenizerParameters,\n BinaryQuantizationCompression,\n BM25Similarity,\n CharFilterName,\n CjkBigramTokenFilter,\n ClassicSimilarity,\n ClassicTokenizer,\n CognitiveServicesAccountKey,\n CommonGramTokenFilter,\n ConditionalSkill,\n CorsOptions,\n CustomEntity,\n CustomNormalizer,\n DefaultCognitiveServicesAccount,\n DictionaryDecompounderTokenFilter,\n DistanceScoringFunction,\n DocumentExtractionSkill,\n EdgeNGramTokenFilterSide,\n EdgeNGramTokenizer,\n ElisionTokenFilter,\n EntityLinkingSkill,\n EntityRecognitionSkillV3,\n FieldMapping,\n FreshnessScoringFunction,\n HighWaterMarkChangeDetectionPolicy,\n IndexingSchedule,\n IndexProjectionMode,\n KeepTokenFilter,\n KeywordMarkerTokenFilter,\n KnownBlobIndexerDataToExtract,\n KnownBlobIndexerImageAction,\n KnownBlobIndexerParsingMode,\n KnownBlobIndexerPDFTextRotationAlgorithm,\n KnownCharFilterName,\n KnownCustomEntityLookupSkillLanguage,\n KnownEntityCategory,\n KnownEntityRecognitionSkillLanguage,\n KnownImageAnalysisSkillLanguage,\n KnownImageDetail,\n KnownIndexerExecutionEnvironment,\n KnownKeyPhraseExtractionSkillLanguage,\n KnownLexicalAnalyzerName,\n KnownLexicalTokenizerName,\n KnownOcrSkillLanguage,\n KnownPIIDetectionSkillMaskingMode,\n KnownRegexFlags,\n KnownSearchFieldDataType,\n KnownSearchIndexerDataSourceType,\n KnownSentimentSkillLanguage,\n KnownSplitSkillLanguage,\n KnownTextSplitMode,\n KnownTextTranslationSkillLanguage,\n KnownTokenFilterName,\n KnownVectorSearchAlgorithmKind,\n KnownVectorSearchAlgorithmMetric,\n KnownVisualFeature,\n LanguageDetectionSkill,\n LengthTokenFilter,\n LexicalAnalyzerName,\n LexicalNormalizerName,\n LexicalTokenizerName,\n LimitTokenFilter,\n LuceneStandardAnalyzer,\n MagnitudeScoringFunction,\n MappingCharFilter,\n MergeSkill,\n MicrosoftLanguageStemmingTokenizer,\n MicrosoftLanguageTokenizer,\n NativeBlobSoftDeleteDeletionDetectionPolicy,\n NGramTokenizer,\n OcrLineEnding,\n PathHierarchyTokenizerV2 as PathHierarchyTokenizer,\n PatternCaptureTokenFilter,\n PatternReplaceCharFilter,\n PatternReplaceTokenFilter,\n PhoneticTokenFilter,\n ScalarQuantizationCompression,\n ScoringFunctionAggregation,\n SearchAlias,\n SearchIndexerDataContainer,\n SearchIndexerDataNoneIdentity,\n SearchIndexerDataUserAssignedIdentity,\n SearchIndexerIndexProjectionSelector,\n SearchIndexerKnowledgeStoreProjection,\n SearchIndexerSkill as BaseSearchIndexerSkill,\n SemanticSearch,\n SentimentSkillV3,\n ServiceCounters,\n ServiceLimits,\n ShaperSkill,\n ShingleTokenFilter,\n SnowballTokenFilter,\n SoftDeleteColumnDeletionDetectionPolicy,\n SplitSkillUnit,\n SqlIntegratedChangeTrackingPolicy,\n StemmerOverrideTokenFilter,\n StemmerTokenFilter,\n StopAnalyzer,\n StopwordsTokenFilter,\n Suggester as SearchSuggester,\n SynonymTokenFilter,\n TagScoringFunction,\n TextWeights,\n TokenFilterName,\n TruncateTokenFilter,\n UaxUrlEmailTokenizer,\n UniqueTokenFilter,\n VectorEncodingFormat,\n VectorSearchProfile,\n VectorSearchVectorizerKind,\n WordDelimiterTokenFilter,\n} from \"./generated/service/models\";\n\n/**\n * Options for a list skillsets operation.\n */\nexport type ListSkillsetsOptions = OperationOptions;\n\n/**\n * Options for a list synonymMaps operation.\n */\nexport type ListSynonymMapsOptions = OperationOptions;\n\n/**\n * Options for a list indexes operation.\n */\nexport type ListIndexesOptions = OperationOptions;\n\n/**\n * Options for a list indexers operation.\n */\nexport type ListIndexersOptions = OperationOptions;\n\n/**\n * Options for a list data sources operation.\n */\nexport type ListDataSourceConnectionsOptions = OperationOptions;\n\n/**\n * Options for get index operation.\n */\nexport type GetIndexOptions = OperationOptions;\n\n/**\n * Options for get skillset operation.\n */\nexport type GetSkillSetOptions = OperationOptions;\n\n/**\n * Options for get synonymmaps operation.\n */\nexport type GetSynonymMapsOptions = OperationOptions;\n\n/**\n * Options for get indexer operation.\n */\nexport type GetIndexerOptions = OperationOptions;\n\n/**\n * Options for get datasource operation.\n */\nexport type GetDataSourceConnectionOptions = OperationOptions;\n\n/**\n * Options for get index statistics operation.\n */\nexport type GetIndexStatisticsOptions = OperationOptions;\n\n/**\n * Statistics for a given index. Statistics are collected periodically and are not guaranteed to\n * always be up-to-date.\n */\nexport interface SearchIndexStatistics {\n /**\n * The number of documents in the index.\n * **NOTE: This property will not be serialized. It can only be populated by the server.**\n */\n readonly documentCount: number;\n /**\n * The amount of storage in bytes consumed by the index.\n * **NOTE: This property will not be serialized. It can only be populated by the server.**\n */\n readonly storageSize: number;\n /**\n * The amount of memory in bytes consumed by vectors in the index.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly vectorIndexSize: number;\n}\n\n/**\n * Response from a get service statistics request. If successful, it includes service level\n * counters and limits.\n */\nexport interface SearchServiceStatistics {\n /**\n * Service level resource counters.\n */\n counters: ServiceCounters;\n /**\n * Service level general limits.\n */\n limits: ServiceLimits;\n}\n\n/**\n * Options for get service statistics operation.\n */\nexport type GetServiceStatisticsOptions = OperationOptions;\n\n/**\n * Options for get indexer status operation.\n */\nexport type GetIndexerStatusOptions = OperationOptions;\n\n/**\n * Options for reset indexer operation.\n */\nexport type ResetIndexerOptions = OperationOptions;\n\n/**\n * Options for run indexer operation.\n */\nexport type RunIndexerOptions = OperationOptions;\n\n/**\n * Options for create index operation.\n */\nexport type CreateIndexOptions = OperationOptions;\n\n/**\n * Options for create skillset operation.\n */\nexport type CreateSkillsetOptions = OperationOptions;\n\n/**\n * Options for create alias operation.\n */\nexport type CreateAliasOptions = OperationOptions;\n\n/**\n * Options for create or update alias operation.\n */\nexport interface CreateOrUpdateAliasOptions extends OperationOptions {\n /**\n * If set to true, Resource will be deleted only if the etag matches.\n */\n onlyIfUnchanged?: boolean;\n}\n\n/**\n * Options for delete alias operation.\n */\nexport interface DeleteAliasOptions extends OperationOptions {\n /**\n * If set to true, Resource will be deleted only if the etag matches.\n */\n onlyIfUnchanged?: boolean;\n}\n\n/**\n * Options for get alias operation.\n */\nexport type GetAliasOptions = OperationOptions;\n\n/**\n * Options for list aliases operation.\n */\nexport type ListAliasesOptions = OperationOptions;\n\n/**\n * Search Alias object.\n */\nexport type SearchIndexAlias = SearchAlias;\n\n/**\n * Options for create synonymmap operation.\n */\nexport type CreateSynonymMapOptions = OperationOptions;\n\n/**\n * Options for create indexer operation.\n */\nexport type CreateIndexerOptions = OperationOptions;\n\n/**\n * Options for create datasource operation.\n */\nexport type CreateDataSourceConnectionOptions = OperationOptions;\n\n/**\n * Options for create/update index operation.\n */\nexport interface CreateOrUpdateIndexOptions extends OperationOptions {\n /**\n * Allows new analyzers, tokenizers, token filters, or char filters to be added to an index by\n * taking the index offline for at least a few seconds. This temporarily causes indexing and\n * query requests to fail. Performance and write availability of the index can be impaired for\n * several minutes after the index is updated, or longer for very large indexes.\n */\n allowIndexDowntime?: boolean;\n /**\n * If set to true, Resource will be deleted only if the etag matches.\n */\n onlyIfUnchanged?: boolean;\n}\n\n/**\n * Options for reset docs operation.\n */\nexport interface ResetDocumentsOptions extends OperationOptions {\n /** document keys to be reset */\n documentKeys?: string[];\n /** datasource document identifiers to be reset */\n datasourceDocumentIds?: string[];\n /** If false, keys or ids will be appended to existing ones. If true, only the keys or ids in this payload will be queued to be re-ingested. */\n overwrite?: boolean;\n}\n\n/**\n * Options for reset skills operation.\n */\nexport interface ResetSkillsOptions extends OperationOptions {\n /** the names of skills to be reset. */\n skillNames?: string[];\n}\n\n/**\n * Options for create/update skillset operation.\n */\nexport interface CreateOrUpdateSkillsetOptions extends OperationOptions {\n /**\n * If set to true, Resource will be updated only if the etag matches.\n */\n onlyIfUnchanged?: boolean;\n /**\n * Ignores cache reset requirements.\n */\n skipIndexerResetRequirementForCache?: boolean;\n /**\n * Disables cache reprocessing change detection.\n */\n disableCacheReprocessingChangeDetection?: boolean;\n}\n\n/**\n * Options for create/update synonymmap operation.\n */\nexport interface CreateOrUpdateSynonymMapOptions extends OperationOptions {\n /**\n * If set to true, Resource will be updated only if the etag matches.\n */\n onlyIfUnchanged?: boolean;\n}\n\n/**\n * Options for create/update indexer operation.\n */\nexport interface CreateorUpdateIndexerOptions extends OperationOptions {\n /**\n * If set to true, Resource will be updated only if the etag matches.\n */\n onlyIfUnchanged?: boolean;\n /** Ignores cache reset requirements. */\n skipIndexerResetRequirementForCache?: boolean;\n /** Disables cache reprocessing change detection. */\n disableCacheReprocessingChangeDetection?: boolean;\n}\n\n/**\n * Options for create/update datasource operation.\n */\nexport interface CreateorUpdateDataSourceConnectionOptions extends OperationOptions {\n /**\n * If set to true, Resource will be updated only if the etag matches.\n */\n onlyIfUnchanged?: boolean;\n /**\n * Ignores cache reset requirements.\n */\n skipIndexerResetRequirementForCache?: boolean;\n}\n\n/**\n * Options for delete index operation.\n */\nexport interface DeleteIndexOptions extends OperationOptions {\n /**\n * If set to true, Resource will be deleted only if the etag matches.\n */\n onlyIfUnchanged?: boolean;\n}\n\n/**\n * Options for delete skillset operaion.\n */\nexport interface DeleteSkillsetOptions extends OperationOptions {\n /**\n * If set to true, Resource will be deleted only if the etag matches.\n */\n onlyIfUnchanged?: boolean;\n}\n\n/**\n * Options for delete synonymmap operation.\n */\nexport interface DeleteSynonymMapOptions extends OperationOptions {\n /**\n * If set to true, Resource will be deleted only if the etag matches.\n */\n onlyIfUnchanged?: boolean;\n}\n\n/**\n * Options for delete indexer operation.\n */\nexport interface DeleteIndexerOptions extends OperationOptions {\n /**\n * If set to true, Resource will be deleted only if the etag matches.\n */\n onlyIfUnchanged?: boolean;\n}\n\n/**\n * Options for delete datasource operation.\n */\nexport interface DeleteDataSourceConnectionOptions extends OperationOptions {\n /**\n * If set to true, Resource will be deleted only if the etag matches.\n */\n onlyIfUnchanged?: boolean;\n}\n\n/**\n * Specifies some text and analysis components used to break that text into tokens.\n */\nexport interface AnalyzeRequest {\n /**\n * The text to break into tokens.\n */\n text: string;\n /**\n * The name of the analyzer to use to break the given text. If this parameter is not specified,\n * you must specify a tokenizer instead. The tokenizer and analyzer parameters are mutually\n * exclusive. {@link KnownAnalyzerNames} is an enum containing built-in analyzer names.\n * NOTE: Either analyzerName or tokenizerName is required in an AnalyzeRequest.\n */\n analyzerName?: LexicalAnalyzerName;\n /**\n * The name of the tokenizer to use to break the given text. If this parameter is not specified,\n * you must specify an analyzer instead. The tokenizer and analyzer parameters are mutually\n * exclusive. {@link KnownTokenizerNames} is an enum containing built-in tokenizer names.\n * NOTE: Either analyzerName or tokenizerName is required in an AnalyzeRequest.\n */\n tokenizerName?: LexicalTokenizerName;\n /**\n * The name of the normalizer to use to normalize the given text. {@link KnownNormalizerNames} is\n * an enum containing built-in analyzer names.\n */\n normalizerName?: LexicalNormalizerName;\n /**\n * An optional list of token filters to use when breaking the given text. This parameter can only\n * be set when using the tokenizer parameter.\n */\n tokenFilters?: TokenFilterName[];\n /**\n * An optional list of character filters to use when breaking the given text. This parameter can\n * only be set when using the tokenizer parameter.\n */\n charFilters?: CharFilterName[];\n}\n\n/**\n * Options for analyze text operation.\n */\nexport type AnalyzeTextOptions = OperationOptions & AnalyzeRequest;\n\n// BEGIN manually modified generated interfaces\n//\n// This section is for places where we have to manually fix issues\n// with interfaces from the generated code.\n// One issue is that unions of discriminated types generated with\n// their abstract base class as a member.\n\n/**\n * Flexibly separates text into terms via a regular expression pattern. This analyzer is\n * implemented using Apache Lucene.\n */\nexport interface PatternAnalyzer {\n /**\n * Polymorphic Discriminator\n */\n odatatype: \"#Microsoft.Azure.Search.PatternAnalyzer\";\n /**\n * The name of the analyzer. It must only contain letters, digits, spaces, dashes or underscores,\n * can only start and end with alphanumeric characters, and is limited to 128 characters.\n */\n name: string;\n /**\n * A value indicating whether terms should be lower-cased. Default is true. Default value: true.\n */\n lowerCaseTerms?: boolean;\n /**\n * A regular expression pattern to match token separators. Default is an expression that matches\n * one or more whitespace characters. Default value: `\\W+`.\n */\n pattern?: string;\n /**\n * Regular expression flags. Possible values include: 'CANON_EQ', 'CASE_INSENSITIVE', 'COMMENTS',\n * 'DOTALL', 'LITERAL', 'MULTILINE', 'UNICODE_CASE', 'UNIX_LINES'\n */\n flags?: RegexFlags[];\n /**\n * A list of stopwords.\n */\n stopwords?: string[];\n}\n\n/**\n * Allows you to take control over the process of converting text into indexable/searchable tokens.\n * It's a user-defined configuration consisting of a single predefined tokenizer and one or more\n * filters. The tokenizer is responsible for breaking text into tokens, and the filters for\n * modifying tokens emitted by the tokenizer.\n */\nexport interface CustomAnalyzer {\n /**\n * Polymorphic Discriminator\n */\n odatatype: \"#Microsoft.Azure.Search.CustomAnalyzer\";\n /**\n * The name of the analyzer. It must only contain letters, digits, spaces, dashes or underscores,\n * can only start and end with alphanumeric characters, and is limited to 128 characters.\n */\n name: string;\n /**\n * The name of the tokenizer to use to divide continuous text into a sequence of tokens, such as\n * breaking a sentence into words. {@link KnownTokenizerNames} is an enum containing built-in tokenizer names.\n */\n tokenizerName: LexicalTokenizerName;\n /**\n * A list of token filters used to filter out or modify the tokens generated by a tokenizer. For\n * example, you can specify a lowercase filter that converts all characters to lowercase. The\n * filters are run in the order in which they are listed.\n */\n tokenFilters?: TokenFilterName[];\n /**\n * A list of character filters used to prepare input text before it is processed by the\n * tokenizer. For instance, they can replace certain characters or symbols. The filters are run\n * in the order in which they are listed.\n */\n charFilters?: CharFilterName[];\n}\n\n/**\n * Contains the possible cases for Analyzer.\n */\nexport type LexicalAnalyzer =\n | CustomAnalyzer\n | PatternAnalyzer\n | LuceneStandardAnalyzer\n | StopAnalyzer;\n\n/**\n * A skill that can call a Web API endpoint, allowing you to extend a skillset by having it call\n * your custom code.\n */\nexport interface WebApiSkill extends BaseSearchIndexerSkill {\n /**\n * Polymorphic discriminator, which specifies the different types this object can be\n */\n odatatype: \"#Microsoft.Skills.Custom.WebApiSkill\";\n /**\n * The url for the Web API.\n */\n uri: string;\n /**\n * The headers required to make the http request.\n */\n httpHeaders?: { [propertyName: string]: string };\n /**\n * The method for the http request.\n */\n httpMethod?: string;\n /**\n * The desired timeout for the request. Default is 30 seconds.\n */\n timeout?: string;\n /**\n * The desired batch size which indicates number of documents.\n */\n batchSize?: number;\n /**\n * If set, the number of parallel calls that can be made to the Web API.\n */\n degreeOfParallelism?: number;\n /**\n * Applies to custom skills that connect to external code in an Azure function or some other\n * application that provides the transformations. This value should be the application ID\n * created for the function or app when it was registered with Azure Active Directory. When\n * specified, the custom skill connects to the function or app using a managed ID (either system\n * or user-assigned) of the search service and the access token of the function or app, using\n * this value as the resource id for creating the scope of the access token.\n */\n authResourceId?: string;\n /**\n * The user-assigned managed identity used for outbound connections. If an authResourceId is\n * provided and it's not specified, the system-assigned managed identity is used. On updates to\n * the indexer, if the identity is unspecified, the value remains unchanged. If undefined, the\n * value of this property is cleared.\n */\n authIdentity?: SearchIndexerDataIdentity;\n}\n\n/** Allows you to generate a vector embedding for a given image or text input using the Azure AI Services Vision Vectorize API. */\nexport interface VisionVectorizeSkill extends BaseSearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Vision.VectorizeSkill\";\n /** The version of the model to use when calling the AI Services Vision service. It will default to the latest available when not specified. */\n modelVersion?: string;\n}\n\n/**\n * Contains the possible cases for Skill.\n */\nexport type SearchIndexerSkill =\n | AzureMachineLearningSkill\n | AzureOpenAIEmbeddingSkill\n | ConditionalSkill\n | CustomEntityLookupSkill\n | DocumentExtractionSkill\n | EntityLinkingSkill\n | EntityRecognitionSkill\n | EntityRecognitionSkillV3\n | ImageAnalysisSkill\n | KeyPhraseExtractionSkill\n | LanguageDetectionSkill\n | MergeSkill\n | OcrSkill\n | PIIDetectionSkill\n | SentimentSkill\n | SentimentSkillV3\n | ShaperSkill\n | SplitSkill\n | TextTranslationSkill\n | VisionVectorizeSkill\n | WebApiSkill;\n\n/**\n * Contains the possible cases for CognitiveServicesAccount.\n */\nexport type CognitiveServicesAccount =\n | DefaultCognitiveServicesAccount\n | CognitiveServicesAccountKey;\n/**\n * Tokenizer that uses regex pattern matching to construct distinct tokens. This tokenizer is\n * implemented using Apache Lucene.\n */\nexport interface PatternTokenizer {\n /**\n * Polymorphic Discriminator\n */\n odatatype: \"#Microsoft.Azure.Search.PatternTokenizer\";\n /**\n * The name of the tokenizer. It must only contain letters, digits, spaces, dashes or\n * underscores, can only start and end with alphanumeric characters, and is limited to 128\n * characters.\n */\n name: string;\n /**\n * A regular expression pattern to match token separators. Default is an expression that matches\n * one or more whitespace characters. Default value: `\\W+`.\n */\n pattern?: string;\n /**\n * Regular expression flags. Possible values include: 'CANON_EQ', 'CASE_INSENSITIVE', 'COMMENTS',\n * 'DOTALL', 'LITERAL', 'MULTILINE', 'UNICODE_CASE', 'UNIX_LINES'\n */\n flags?: RegexFlags[];\n /**\n * The zero-based ordinal of the matching group in the regular expression pattern to extract into\n * tokens. Use -1 if you want to use the entire pattern to split the input into tokens,\n * irrespective of matching groups. Default is -1. Default value: -1.\n */\n group?: number;\n}\n/**\n * Breaks text following the Unicode Text Segmentation rules. This tokenizer is implemented using\n * Apache Lucene.\n */\nexport interface LuceneStandardTokenizer {\n /**\n * Polymorphic Discriminator\n */\n odatatype:\n | \"#Microsoft.Azure.Search.StandardTokenizerV2\"\n | \"#Microsoft.Azure.Search.StandardTokenizer\";\n /**\n * The name of the tokenizer. It must only contain letters, digits, spaces, dashes or\n * underscores, can only start and end with alphanumeric characters, and is limited to 128\n * characters.\n */\n name: string;\n /**\n * The maximum token length. Default is 255. Tokens longer than the maximum length are split. The\n * maximum token length that can be used is 300 characters. Default value: 255.\n */\n maxTokenLength?: number;\n}\n\n/**\n * Generates n-grams of the given size(s) starting from the front or the back of an input token.\n * This token filter is implemented using Apache Lucene.\n */\nexport interface EdgeNGramTokenFilter {\n /**\n * Polymorphic Discriminator\n */\n odatatype:\n | \"#Microsoft.Azure.Search.EdgeNGramTokenFilterV2\"\n | \"#Microsoft.Azure.Search.EdgeNGramTokenFilter\";\n /**\n * The name of the token filter. It must only contain letters, digits, spaces, dashes or\n * underscores, can only start and end with alphanumeric characters, and is limited to 128\n * characters.\n */\n name: string;\n /**\n * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of\n * maxGram. Default value: 1.\n */\n minGram?: number;\n /**\n * The maximum n-gram length. Default is 2. Maximum is 300. Default value: 2.\n */\n maxGram?: number;\n /**\n * Specifies which side of the input the n-gram should be generated from. Default is \"front\".\n * Possible values include: 'Front', 'Back'\n */\n side?: EdgeNGramTokenFilterSide;\n}\n\n/**\n * Emits the entire input as a single token. This tokenizer is implemented using Apache Lucene.\n */\nexport interface KeywordTokenizer {\n /**\n * Polymorphic Discriminator\n */\n odatatype:\n | \"#Microsoft.Azure.Search.KeywordTokenizerV2\"\n | \"#Microsoft.Azure.Search.KeywordTokenizer\";\n /**\n * The name of the tokenizer. It must only contain letters, digits, spaces, dashes or\n * underscores, can only start and end with alphanumeric characters, and is limited to 128\n * characters.\n */\n name: string;\n /**\n * The maximum token length. Default is 256. Tokens longer than the maximum length are split. The\n * maximum token length that can be used is 300 characters. Default value: 256.\n */\n maxTokenLength?: number;\n}\n\n/**\n * Contains the possible cases for Tokenizer.\n */\nexport type LexicalTokenizer =\n | ClassicTokenizer\n | EdgeNGramTokenizer\n | KeywordTokenizer\n | MicrosoftLanguageTokenizer\n | MicrosoftLanguageStemmingTokenizer\n | NGramTokenizer\n | PathHierarchyTokenizer\n | PatternTokenizer\n | LuceneStandardTokenizer\n | UaxUrlEmailTokenizer;\n\n/**\n * Definition of additional projections to azure blob, table, or files, of enriched data.\n */\nexport interface SearchIndexerKnowledgeStore {\n /**\n * The connection string to the storage account projections will be stored in.\n */\n storageConnectionString: string;\n /**\n * A list of additional projections to perform during indexing.\n */\n projections: SearchIndexerKnowledgeStoreProjection[];\n /**\n * The user-assigned managed identity used for connections to Azure Storage when writing\n * knowledge store projections. If the connection string indicates an identity (ResourceId) and\n * it's not specified, the system-assigned managed identity is used. On updates to the indexer,\n * if the identity is unspecified, the value remains unchanged. If set to \"none\", the value of\n * this property is cleared.\n */\n identity?: SearchIndexerDataIdentity;\n}\n\n/**\n * Contains the possible cases for Similarity.\n */\nexport type SimilarityAlgorithm = ClassicSimilarity | BM25Similarity;\n\n/**\n * Generates n-grams of the given size(s). This token filter is implemented using Apache Lucene.\n */\nexport interface NGramTokenFilter {\n /**\n * Polymorphic Discriminator\n */\n odatatype:\n | \"#Microsoft.Azure.Search.NGramTokenFilterV2\"\n | \"#Microsoft.Azure.Search.NGramTokenFilter\";\n /**\n * The name of the token filter. It must only contain letters, digits, spaces, dashes or\n * underscores, can only start and end with alphanumeric characters, and is limited to 128\n * characters.\n */\n name: string;\n /**\n * The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of\n * maxGram. Default value: 1.\n */\n minGram?: number;\n /**\n * The maximum n-gram length. Default is 2. Maximum is 300. Default value: 2.\n */\n maxGram?: number;\n}\n\n/**\n * Contains the possible cases for TokenFilter.\n */\nexport type TokenFilter =\n | AsciiFoldingTokenFilter\n | CjkBigramTokenFilter\n | CommonGramTokenFilter\n | DictionaryDecompounderTokenFilter\n | EdgeNGramTokenFilter\n | ElisionTokenFilter\n | KeepTokenFilter\n | KeywordMarkerTokenFilter\n | LengthTokenFilter\n | LimitTokenFilter\n | NGramTokenFilter\n | PatternCaptureTokenFilter\n | PatternReplaceTokenFilter\n | PhoneticTokenFilter\n | ShingleTokenFilter\n | SnowballTokenFilter\n | StemmerTokenFilter\n | StemmerOverrideTokenFilter\n | StopwordsTokenFilter\n | SynonymTokenFilter\n | TruncateTokenFilter\n | UniqueTokenFilter\n | WordDelimiterTokenFilter;\n\n/**\n * Contains the possible cases for CharFilter.\n */\nexport type CharFilter = MappingCharFilter | PatternReplaceCharFilter;\n\n/**\n * Contains the possible cases for LexicalNormalizer.\n */\nexport type LexicalNormalizer = CustomNormalizer;\n\n/**\n * Contains the possible cases for ScoringFunction.\n */\nexport type ScoringFunction =\n | DistanceScoringFunction\n | FreshnessScoringFunction\n | MagnitudeScoringFunction\n | TagScoringFunction;\n\n/**\n * Defines values for ComplexDataType.\n * Possible values include: 'Edm.ComplexType', 'Collection(Edm.ComplexType)'\n * @readonly\n */\nexport type ComplexDataType = \"Edm.ComplexType\" | \"Collection(Edm.ComplexType)\";\n\n/**\n * Represents a field in an index definition, which describes the name, data type, and search\n * behavior of a field.\n */\nexport type SearchField = SimpleField | ComplexField;\n\n/**\n * Represents a field in an index definition, which describes the name, data type, and search\n * behavior of a field.\n */\nexport interface SimpleField {\n /**\n * The name of the field, which must be unique within the fields collection of the index or\n * parent field.\n */\n name: string;\n /**\n * The data type of the field.\n */\n type: SearchFieldDataType;\n /**\n * A value indicating whether the field uniquely identifies documents in the index. Exactly one\n * top-level field in each index must be chosen as the key field and it must be of type\n * Edm.String. Key fields can be used to look up documents directly and update or delete specific\n * documents. Default is false.\n */\n key?: boolean;\n /**\n * A value indicating whether the field can be returned in a search result. You can disable this\n * option if you want to use a field (for example, margin) as a filter, sorting, or scoring\n * mechanism but do not want the field to be visible to the end user. This property must be false\n * for key fields. This property can be changed on existing fields. Enabling this property does\n * not cause any increase in index storage requirements. Default is true for vector fields, false\n * otherwise.\n */\n hidden?: boolean;\n /**\n * An immutable value indicating whether the field will be persisted separately on disk to be\n * returned in a search result. You can disable this option if you don't plan to return the field\n * contents in a search response to save on storage overhead. This can only be set during index\n * creation and only for vector fields. This property cannot be changed for existing fields or set\n * as false for new fields. If this property is set to `false`, the property `hidden` must be set to\n * `true`. This property must be true or unset for key fields, for new fields, and for non-vector\n * fields, and it must be null for complex fields. Disabling this property will reduce index\n * storage requirements. The default is true for vector fields.\n */\n stored?: boolean;\n /**\n * A value indicating whether the field is full-text searchable. This means it will undergo\n * analysis such as word-breaking during indexing. If you set a searchable field to a value like\n * \"sunny day\", internally it will be split into the individual tokens \"sunny\" and \"day\". This\n * enables full-text searches for these terms. Fields of type Edm.String or Collection(Edm.String)\n * are searchable by default. This property must be false for simple\n * fields of other non-string data types.\n * Note: searchable fields consume extra space in your index to accommodate additional tokenized versions of the field value for full-text\n * searches. If you want to save space in your index and you don't need a field to be included in\n * searches, set searchable to false. Default is false.\n */\n searchable?: boolean;\n /**\n * A value indicating whether to enable the field to be referenced in $filter queries. `filterable`\n * differs from `searchable` in how strings are handled. Fields of type Edm.String or\n * Collection(Edm.String) that are filterable do not undergo word-breaking, so comparisons are\n * for exact matches only. For example, if you set such a field f to \"sunny day\", $filter=f eq\n * 'sunny' will find no matches, but $filter=f eq 'sunny day' will.\n * Default is false.\n */\n filterable?: boolean;\n /**\n * A value indicating whether to enable the field to be referenced in $orderby expressions. By\n * default, the service sorts results by score, but in many experiences users will want\n * to sort by fields in the documents. A simple field can be sortable only if it is single-valued\n * (it has a single value in the scope of the parent document). Simple collection fields cannot\n * be sortable, since they are multi-valued. Simple sub-fields of complex collections are also\n * multi-valued, and therefore cannot be sortable. This is true whether it's an immediate parent\n * field, or an ancestor field, that's the complex collection. The default is false.\n */\n sortable?: boolean;\n /**\n * A value indicating whether to enable the field to be referenced in facet queries. Typically\n * used in a presentation of search results that includes hit count by category (for example,\n * search for digital cameras and see hits by brand, by megapixels, by price, and so on).\n * Fields of type Edm.GeographyPoint or Collection(Edm.GeographyPoint) cannot be facetable.\n * Default is false for all other simple fields.\n */\n facetable?: boolean;\n /**\n * The name of the analyzer to use for the field. This option can be used only with\n * searchable fields and it can't be set together with either searchAnalyzer or indexAnalyzer.\n * Once the analyzer is chosen, it cannot be changed for the field.\n */\n analyzerName?: LexicalAnalyzerName;\n /**\n * The name of the analyzer used at search time for the field. This option can be used only with\n * searchable fields. It must be set together with `indexAnalyzerName` and it cannot be set together\n * with the `analyzerName` option. This property cannot be set to the name of a language\n * analyzer; use the `analyzerName` property instead if you need a language analyzer. This\n * analyzer can be updated on an existing field.\n */\n searchAnalyzerName?: LexicalAnalyzerName;\n /**\n * The name of the analyzer used at indexing time for the field. This option can be used only\n * with searchable fields. It must be set together with searchAnalyzer and it cannot be set\n * together with the `analyzerName` option. Once the analyzer is chosen, it cannot be changed for the\n * field. KnownAnalyzerNames is an enum containing known values.\n */\n indexAnalyzerName?: LexicalAnalyzerName;\n /**\n * A list of the names of synonym maps to associate with this field. This option can be used only\n * with searchable fields. Currently only one synonym map per field is supported. Assigning a\n * synonym map to a field ensures that query terms targeting that field are expanded at\n * query-time using the rules in the synonym map. This attribute can be changed on existing\n * fields.\n */\n synonymMapNames?: string[];\n /**\n * The name of the normalizer used at indexing time for the field.\n */\n normalizerName?: LexicalNormalizerName;\n /**\n * The dimensionality of the vector field.\n */\n vectorSearchDimensions?: number;\n /**\n * The name of the vector search profile that specifies the algorithm and vectorizer to use when\n * searching the vector field.\n */\n vectorSearchProfileName?: string;\n /**\n * The encoding format to interpret the field contents.\n */\n vectorEncodingFormat?: VectorEncodingFormat;\n}\n\nexport function isComplexField(field: SearchField): field is ComplexField {\n return field.type === \"Edm.ComplexType\" || field.type === \"Collection(Edm.ComplexType)\";\n}\n\n/**\n * Represents a field in an index definition, which describes the name, data type, and search\n * behavior of a field.\n */\nexport interface ComplexField {\n /**\n * The name of the field, which must be unique within the fields collection of the index or\n * parent field.\n */\n name: string;\n /**\n * The data type of the field.\n * Possible values include: 'Edm.ComplexType','Collection(Edm.ComplexType)'\n */\n type: ComplexDataType;\n /**\n * A list of sub-fields.\n */\n fields?: SearchField[];\n}\n\n/**\n * Represents a synonym map definition.\n */\nexport interface SynonymMap {\n /**\n * The name of the synonym map.\n */\n name: string;\n /**\n * An array of synonym rules in the specified synonym map format.\n */\n synonyms: string[];\n /**\n * A description of an encryption key that you create in Azure Key Vault. This key is used to\n * provide an additional level of encryption-at-rest for your data when you want full assurance\n * that no one, not even Microsoft, can decrypt your data in Azure Cognitive Search. Once you\n * have encrypted your data, it will always remain encrypted. Azure Cognitive Search will ignore\n * attempts to set this property to null. You can change this property as needed if you want to\n * rotate your encryption key; Your data will be unaffected. Encryption with customer-managed\n * keys is not available for free search services, and is only available for paid services\n * created on or after January 1, 2019.\n */\n encryptionKey?: SearchResourceEncryptionKey;\n /**\n * The ETag of the synonym map.\n */\n etag?: string;\n}\n\n/**\n * An iterator for listing the indexes that exist in the Search service. Will make requests\n * as needed during iteration. Use .byPage() to make one request to the server\n * per iteration.\n */\nexport type IndexIterator = PagedAsyncIterableIterator<SearchIndex, SearchIndex[], {}>;\n\n/**\n * An iterator for listing the aliases that exist in the Search service. This will make requests\n * as needed during iteration. Use .byPage() to make one request to the server\n * per iteration.\n */\nexport type AliasIterator = PagedAsyncIterableIterator<SearchIndexAlias, SearchIndexAlias[], {}>;\n\n/**\n * An iterator for listing the indexes that exist in the Search service. Will make requests\n * as needed during iteration. Use .byPage() to make one request to the server\n * per iteration.\n */\nexport type IndexNameIterator = PagedAsyncIterableIterator<string, string[], {}>;\n\n/**\n * Represents a search index definition, which describes the fields and search behavior of an\n * index.\n */\nexport interface SearchIndex {\n /**\n * The name of the index.\n */\n name: string;\n /**\n * The fields of the index.\n */\n fields: SearchField[];\n /**\n * The scoring profiles for the index.\n */\n scoringProfiles?: ScoringProfile[];\n /**\n * The name of the scoring profile to use if none is specified in the query. If this property is\n * not set and no scoring profile is specified in the query, then default scoring (tf-idf) will\n * be used.\n */\n defaultScoringProfile?: string;\n /**\n * Options to control Cross-Origin Resource Sharing (CORS) for the index.\n */\n corsOptions?: CorsOptions;\n /**\n * The suggesters for the index.\n */\n suggesters?: SearchSuggester[];\n /**\n * The analyzers for the index.\n */\n analyzers?: LexicalAnalyzer[];\n /**\n * The tokenizers for the index.\n */\n tokenizers?: LexicalTokenizer[];\n /**\n * The token filters for the index.\n */\n tokenFilters?: TokenFilter[];\n /**\n * The character filters for the index.\n */\n charFilters?: CharFilter[];\n /**\n * The normalizers for the index.\n */\n normalizers?: LexicalNormalizer[];\n /**\n * A description of an encryption key that you create in Azure Key Vault. This key is used to\n * provide an additional level of encryption-at-rest for your data when you want full assurance\n * that no one, not even Microsoft, can decrypt your data in Azure Cognitive Search. Once you\n * have encrypted your data, it will always remain encrypted. Azure Cognitive Search will ignore\n * attempts to set this property to null. You can change this property as needed if you want to\n * rotate your encryption key; Your data will be unaffected. Encryption with customer-managed\n * keys is not available for free search services, and is only available for paid services\n * created on or after January 1, 2019.\n */\n encryptionKey?: SearchResourceEncryptionKey;\n /**\n * The type of similarity algorithm to be used when scoring and ranking the documents matching a\n * search query. The similarity algorithm can only be defined at index creation time and cannot\n * be modified on existing indexes. If null, the ClassicSimilarity algorithm is used.\n */\n similarity?: SimilarityAlgorithm;\n /**\n * Defines parameters for a search index that influence semantic capabilities.\n */\n semanticSearch?: SemanticSearch;\n /**\n * Contains configuration options related to vector search.\n */\n vectorSearch?: VectorSearch;\n /**\n * The ETag of the index.\n */\n etag?: string;\n}\n\nexport interface SearchIndexerCache {\n /**\n * The connection string to the storage account where the cache data will be persisted.\n */\n storageConnectionString?: string;\n /**\n * Specifies whether incremental reprocessing is enabled.\n */\n enableReprocessing?: boolean;\n /** The user-assigned managed identity used for connections to the enrichment cache. If the\n * connection string indicates an identity (ResourceId) and it's not specified, the\n * system-assigned managed identity is used. On updates to the indexer, if the identity is\n * unspecified, the value remains unchanged. If set to \"none\", the value of this property is\n * cleared.\n */\n identity?: SearchIndexerDataIdentity;\n}\n\n/**\n * Represents an indexer.\n */\nexport interface SearchIndexer {\n /**\n * The name of the indexer.\n */\n name: string;\n /**\n * The description of the indexer.\n */\n description?: string;\n /**\n * The name of the datasource from which this indexer reads data.\n */\n dataSourceName: string;\n /**\n * The name of the skillset executing with this indexer.\n */\n skillsetName?: string;\n /**\n * The name of the index to which this indexer writes data.\n */\n targetIndexName: string;\n /**\n * The schedule for this indexer.\n */\n schedule?: IndexingSchedule;\n /**\n * Parameters for indexer execution.\n */\n parameters?: IndexingParameters;\n /**\n * Defines mappings between fields in the data source and corresponding target fields in the\n * index.\n */\n fieldMappings?: FieldMapping[];\n /**\n * Output field mappings are applied after enrichment and immediately before indexing.\n */\n outputFieldMappings?: FieldMapping[];\n /**\n * A value indicating whether the indexer is disabled. Default is false. Default value: false.\n */\n isDisabled?: boolean;\n /**\n * The ETag of the indexer.\n */\n etag?: string;\n /**\n * A description of an encryption key that you create in Azure Key Vault. This key is used to\n * provide an additional level of encryption-at-rest for your indexer definition (as well as\n * indexer execution status) when you want full assurance that no one, not even Microsoft, can\n * decrypt them in Azure Cognitive Search. Once you have encrypted your indexer definition, it\n * will always remain encrypted. Azure Cognitive Search will ignore attempts to set this property\n * to null. You can change this property as needed if you want to rotate your encryption key;\n * Your indexer definition (and indexer execution status) will be unaffected. Encryption with\n * customer-managed keys is not available for free search services, and is only available for\n * paid services created on or after January 1, 2019.\n */\n encryptionKey?: SearchResourceEncryptionKey;\n /**\n * Adds caching to an enrichment pipeline to allow for incremental modification steps without\n * having to rebuild the index every time.\n */\n cache?: SearchIndexerCache;\n}\n\n/**\n * A customer-managed encryption key in Azure Key Vault. Keys that you create and manage can be\n * used to encrypt or decrypt data-at-rest in Azure Cognitive Search, such as indexes and synonym\n * maps.\n */\nexport interface SearchResourceEncryptionKey {\n /**\n * The name of your Azure Key Vault key to be used to encrypt your data at rest.\n */\n keyName: string;\n /**\n * The version of your Azure Key Vault key to be used to encrypt your data at rest.\n */\n keyVersion: string;\n /**\n * The URI of your Azure Key Vault, also referred to as DNS name, that contains the key to be\n * used to encrypt your data at rest. An example URI might be\n * https://my-keyvault-name.vault.azure.net.\n */\n vaultUrl: string;\n /**\n * An AAD Application ID that was granted the required access permissions to the Azure Key Vault\n * that is to be used when encrypting your data at rest. The Application ID should not be\n * confused with the Object ID for your AAD Application.\n */\n applicationId?: string;\n /**\n * The authentication key of the specified AAD application.\n */\n applicationSecret?: string;\n /**\n * An explicit managed identity to use for this encryption key. If not specified and the access\n * credentials property is null, the system-assigned managed identity is used. On update to the\n * resource, if the explicit identity is unspecified, it remains unchanged. If \"none\" is specified,\n * the value of this property is cleared.\n */\n identity?: SearchIndexerDataIdentity;\n}\n\n/**\n * A list of skills.\n */\nexport interface SearchIndexerSkillset {\n /**\n * The name of the skillset.\n */\n name: string;\n /**\n * The description of the skillset.\n */\n description?: string;\n /**\n * A list of skills in the skillset.\n */\n skills: SearchIndexerSkill[];\n /**\n * Details about cognitive services to be used when running skills.\n */\n cognitiveServicesAccount?: CognitiveServicesAccount;\n /**\n * Definition of additional projections to azure blob, table, or files, of enriched data.\n */\n knowledgeStore?: SearchIndexerKnowledgeStore;\n /**\n * Definition of additional projections to secondary search index(es).\n */\n indexProjection?: SearchIndexerIndexProjection;\n /**\n * The ETag of the skillset.\n */\n etag?: string;\n /**\n * A description of an encryption key that you create in Azure Key Vault. This key is used to\n * provide an additional level of encryption-at-rest for your skillset definition when you want\n * full assurance that no one, not even Microsoft, can decrypt your skillset definition in Azure\n * Cognitive Search. Once you have encrypted your skillset definition, it will always remain\n * encrypted. Azure Cognitive Search will ignore attempts to set this property to null. You can\n * change this property as needed if you want to rotate your encryption key; Your skillset\n * definition will be unaffected. Encryption with customer-managed keys is not available for free\n * search services, and is only available for paid services created on or after January 1, 2019.\n */\n encryptionKey?: SearchResourceEncryptionKey;\n}\n\n/**\n * Defines parameters for a search index that influence scoring in search queries.\n */\nexport interface ScoringProfile {\n /**\n * The name of the scoring profile.\n */\n name: string;\n /**\n * Parameters that boost scoring based on text matches in certain index fields.\n */\n textWeights?: TextWeights;\n /**\n * The collection of functions that influence the scoring of documents.\n */\n functions?: ScoringFunction[];\n /**\n * A value indicating how the results of individual scoring functions should be combined.\n * Defaults to \"Sum\". Ignored if there are no scoring functions. Possible values include: 'sum',\n * 'average', 'minimum', 'maximum', 'firstMatching'\n */\n functionAggregation?: ScoringFunctionAggregation;\n}\n\n/**\n * Defines values for TokenizerName.\n * @readonly\n */\nexport enum KnownTokenizerNames {\n /**\n * Grammar-based tokenizer that is suitable for processing most European-language documents. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html\n */\n Classic = \"classic\",\n /**\n * Tokenizes the input from an edge into n-grams of the given size(s). See\n * https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html\n */\n EdgeNGram = \"edgeNGram\",\n /**\n * Emits the entire input as a single token. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html\n */\n Keyword = \"keyword_v2\",\n /**\n * Divides text at non-letters. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html\n */\n Letter = \"letter\",\n /**\n * Divides text at non-letters and converts them to lower case. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html\n */\n Lowercase = \"lowercase\",\n /**\n * Divides text using language-specific rules.\n */\n // eslint-disable-next-line @typescript-eslint/no-shadow\n MicrosoftLanguageTokenizer = \"microsoft_language_tokenizer\",\n /**\n * Divides text using language-specific rules and reduces words to their base forms.\n */\n // eslint-disable-next-line @typescript-eslint/no-shadow\n MicrosoftLanguageStemmingTokenizer = \"microsoft_language_stemming_tokenizer\",\n /**\n * Tokenizes the input into n-grams of the given size(s). See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html\n */\n NGram = \"nGram\",\n /**\n * Tokenizer for path-like hierarchies. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html\n */\n PathHierarchy = \"path_hierarchy_v2\",\n /**\n * Tokenizer that uses regex pattern matching to construct distinct tokens. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html\n */\n Pattern = \"pattern\",\n /**\n * Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter and stop\n * filter. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html\n */\n Standard = \"standard_v2\",\n /**\n * Tokenizes urls and emails as one token. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html\n */\n UaxUrlEmail = \"uax_url_email\",\n /**\n * Divides text at whitespace. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html\n */\n Whitespace = \"whitespace\",\n}\n\n/**\n * Defines values for TokenFilterName.\n * @readonly\n */\nexport enum KnownTokenFilterNames {\n /**\n * A token filter that applies the Arabic normalizer to normalize the orthography. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html\n */\n ArabicNormalization = \"arabic_normalization\",\n /**\n * Strips all characters after an apostrophe (including the apostrophe itself). See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html\n */\n Apostrophe = \"apostrophe\",\n /**\n * Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127\n * ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such\n * equivalents exist. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html\n */\n AsciiFolding = \"asciifolding\",\n /**\n * Forms bigrams of CJK terms that are generated from StandardTokenizer. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html\n */\n CjkBigram = \"cjk_bigram\",\n /**\n * Normalizes CJK width differences. Folds fullwidth ASCII variants into the equivalent basic\n * Latin, and half-width Katakana variants into the equivalent Kana. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html\n */\n CjkWidth = \"cjk_width\",\n /**\n * Removes English possessives, and dots from acronyms. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html\n */\n Classic = \"classic\",\n /**\n * Construct bigrams for frequently occurring terms while indexing. Single terms are still\n * indexed too, with bigrams overlaid. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html\n */\n CommonGram = \"common_grams\",\n /**\n * Generates n-grams of the given size(s) starting from the front or the back of an input token.\n * See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html\n */\n EdgeNGram = \"edgeNGram_v2\",\n /**\n * Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html\n */\n Elision = \"elision\",\n /**\n * Normalizes German characters according to the heuristics of the German2 snowball algorithm.\n * See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html\n */\n GermanNormalization = \"german_normalization\",\n /**\n * Normalizes text in Hindi to remove some differences in spelling variations. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html\n */\n HindiNormalization = \"hindi_normalization\",\n /**\n * Normalizes the Unicode representation of text in Indian languages. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html\n */\n IndicNormalization = \"indic_normalization\",\n /**\n * Emits each incoming token twice, once as keyword and once as non-keyword. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html\n */\n KeywordRepeat = \"keyword_repeat\",\n /**\n * A high-performance kstem filter for English. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html\n */\n KStem = \"kstem\",\n /**\n * Removes words that are too long or too short. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html\n */\n Length = \"length\",\n /**\n * Limits the number of tokens while indexing. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html\n */\n Limit = \"limit\",\n /**\n * Normalizes token text to lower case. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.htm\n */\n Lowercase = \"lowercase\",\n /**\n * Generates n-grams of the given size(s). See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html\n */\n NGram = \"nGram_v2\",\n /**\n * Applies normalization for Persian. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html\n */\n PersianNormalization = \"persian_normalization\",\n /**\n * Create tokens for phonetic matches. See\n * https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html\n */\n Phonetic = \"phonetic\",\n /**\n * Uses the Porter stemming algorithm to transform the token stream. See\n * http://tartarus.org/~martin/PorterStemmer\n */\n PorterStem = \"porter_stem\",\n /**\n * Reverses the token string. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html\n */\n Reverse = \"reverse\",\n /**\n * Normalizes use of the interchangeable Scandinavian characters. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html\n */\n ScandinavianNormalization = \"scandinavian_normalization\",\n /**\n * Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also discriminates against use\n * of double vowels aa, ae, ao, oe and oo, leaving just the first one. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html\n */\n ScandinavianFoldingNormalization = \"scandinavian_folding\",\n /**\n * Creates combinations of tokens as a single token. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html\n */\n Shingle = \"shingle\",\n /**\n * A filter that stems words using a Snowball-generated stemmer. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html\n */\n Snowball = \"snowball\",\n /**\n * Normalizes the Unicode representation of Sorani text. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html\n */\n SoraniNormalization = \"sorani_normalization\",\n /**\n * Language specific stemming filter. See\n * https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters\n */\n Stemmer = \"stemmer\",\n /**\n * Removes stop words from a token stream. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html\n */\n Stopwords = \"stopwords\",\n /**\n * Trims leading and trailing whitespace from tokens. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html\n */\n Trim = \"trim\",\n /**\n * Truncates the terms to a specific length. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html\n */\n Truncate = \"truncate\",\n /**\n * Filters out tokens with same text as the previous token. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html\n */\n Unique = \"unique\",\n /**\n * Normalizes token text to upper case. See\n * http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html\n */\n Uppercase = \"uppercase\",\n /**\n * Splits words into subwords and performs optional transformations on subword groups.\n */\n WordDelimiter = \"word_delimiter\",\n}\n\n/**\n * Defines values for CharFilterName.\n * @readonly\n */\nexport enum KnownCharFilterNames {\n /**\n * A character filter that attempts to strip out HTML constructs. See\n * https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html\n */\n HtmlStrip = \"html_strip\",\n}\n\n/**\n * Defines values for AnalyzerName.\n * See https://docs.microsoft.com/rest/api/searchservice/Language-support\n * @readonly\n */\nexport enum KnownAnalyzerNames {\n /**\n * Arabic\n */\n ArMicrosoft = \"ar.microsoft\",\n /**\n * Arabic\n */\n ArLucene = \"ar.lucene\",\n /**\n * Armenian\n */\n HyLucene = \"hy.lucene\",\n /**\n * Bangla\n */\n BnMicrosoft = \"bn.microsoft\",\n /**\n * Basque\n */\n EuLucene = \"eu.lucene\",\n /**\n * Bulgarian\n */\n BgMicrosoft = \"bg.microsoft\",\n /**\n * Bulgarian\n */\n BgLucene = \"bg.lucene\",\n /**\n * Catalan\n */\n CaMicrosoft = \"ca.microsoft\",\n /**\n * Catalan\n */\n CaLucene = \"ca.lucene\",\n /**\n * Chinese Simplified\n */\n ZhHansMicrosoft = \"zh-Hans.microsoft\",\n /**\n * Chinese Simplified\n */\n ZhHansLucene = \"zh-Hans.lucene\",\n /**\n * Chinese Traditional\n */\n ZhHantMicrosoft = \"zh-Hant.microsoft\",\n /**\n * Chinese Traditional\n */\n ZhHantLucene = \"zh-Hant.lucene\",\n /**\n * Croatian\n */\n HrMicrosoft = \"hr.microsoft\",\n /**\n * Czech\n */\n CsMicrosoft = \"cs.microsoft\",\n /**\n * Czech\n */\n CsLucene = \"cs.lucene\",\n /**\n * Danish\n */\n DaMicrosoft = \"da.microsoft\",\n /**\n * Danish\n */\n DaLucene = \"da.lucene\",\n /**\n * Dutch\n */\n NlMicrosoft = \"nl.microsoft\",\n /**\n * Dutch\n */\n NlLucene = \"nl.lucene\",\n /**\n * English\n */\n EnMicrosoft = \"en.microsoft\",\n /**\n * English\n */\n EnLucene = \"en.lucene\",\n /**\n * Estonian\n */\n EtMicrosoft = \"et.microsoft\",\n /**\n * Finnish\n */\n FiMicrosoft = \"fi.microsoft\",\n /**\n * Finnish\n */\n FiLucene = \"fi.lucene\",\n /**\n * French\n */\n FrMicrosoft = \"fr.microsoft\",\n /**\n * French\n */\n FrLucene = \"fr.lucene\",\n /**\n * Galician\n */\n GlLucene = \"gl.lucene\",\n /**\n * German\n */\n DeMicrosoft = \"de.microsoft\",\n /**\n * German\n */\n DeLucene = \"de.lucene\",\n /**\n * Greek\n */\n ElMicrosoft = \"el.microsoft\",\n /**\n * Greek\n */\n ElLucene = \"el.lucene\",\n /**\n * Gujarati\n */\n GuMicrosoft = \"gu.microsoft\",\n /**\n * Hebrew\n */\n HeMicrosoft = \"he.microsoft\",\n /**\n * Hindi\n */\n HiMicrosoft = \"hi.microsoft\",\n /**\n * Hindi\n */\n HiLucene = \"hi.lucene\",\n /**\n * Hungarian\n */\n HuMicrosoft = \"hu.microsoft\",\n /**\n * Hungarian\n */\n HuLucene = \"hu.lucene\",\n /**\n * Icelandic\n */\n IsMicrosoft = \"is.microsoft\",\n /**\n * Indonesian (Bahasa)\n */\n IdMicrosoft = \"id.microsoft\",\n /**\n * Indonesian (Bahasa)\n */\n IdLucene = \"id.lucene\",\n /**\n * Irish\n */\n GaLucene = \"ga.lucene\",\n /**\n * Italian\n */\n ItMicrosoft = \"it.microsoft\",\n /**\n * Italian\n */\n ItLucene = \"it.lucene\",\n /**\n * Japanese\n */\n JaMicrosoft = \"ja.microsoft\",\n /**\n * Japanese\n */\n JaLucene = \"ja.lucene\",\n /**\n * Kannada\n */\n KnMicrosoft = \"kn.microsoft\",\n /**\n * Korean\n */\n KoMicrosoft = \"ko.microsoft\",\n /**\n * Korean\n */\n KoLucene = \"ko.lucene\",\n /**\n * Latvian\n */\n LvMicrosoft = \"lv.microsoft\",\n /**\n * Latvian\n */\n LvLucene = \"lv.lucene\",\n /**\n * Lithuanian\n */\n LtMicrosoft = \"lt.microsoft\",\n /**\n * Malayalam\n */\n MlMicrosoft = \"ml.microsoft\",\n /**\n * Malay (Latin)\n */\n MsMicrosoft = \"ms.microsoft\",\n /**\n * Marathi\n */\n MrMicrosoft = \"mr.microsoft\",\n /**\n * Norwegian\n */\n NbMicrosoft = \"nb.microsoft\",\n /**\n * Norwegian\n */\n NoLucene = \"no.lucene\",\n /**\n * Persian\n */\n FaLucene = \"fa.lucene\",\n /**\n * Polish\n */\n PlMicrosoft = \"pl.microsoft\",\n /**\n * Polish\n */\n PlLucene = \"pl.lucene\",\n /**\n * Portuguese (Brazil)\n */\n PtBRMicrosoft = \"pt-BR.microsoft\",\n /**\n * Portuguese (Brazil)\n */\n PtBRLucene = \"pt-BR.lucene\",\n /**\n * Portuguese (Portugal)\n */\n PtPTMicrosoft = \"pt-PT.microsoft\",\n /**\n * Portuguese (Portugal)\n */\n PtPTLucene = \"pt-PT.lucene\",\n /**\n * Punjabi\n */ PaMicrosoft = \"pa.microsoft\",\n /**\n * Romanian\n */\n RoMicrosoft = \"ro.microsoft\",\n /**\n * Romanian\n */\n RoLucene = \"ro.lucene\",\n /**\n * Russian\n */\n RuMicrosoft = \"ru.microsoft\",\n /**\n * Russian\n */\n RuLucene = \"ru.lucene\",\n /**\n * Serbian (Cyrillic)\n */\n SrCyrillicMicrosoft = \"sr-cyrillic.microsoft\",\n /**\n * Serbian (Latin)\n */\n SrLatinMicrosoft = \"sr-latin.microsoft\",\n /**\n * Slovak\n */\n SkMicrosoft = \"sk.microsoft\",\n /**\n * Slovenian\n */\n SlMicrosoft = \"sl.microsoft\",\n /**\n * Spanish\n */\n EsMicrosoft = \"es.microsoft\",\n /**\n * Spanish\n */\n EsLucene = \"es.lucene\",\n /**\n * Swedish\n */\n SvMicrosoft = \"sv.microsoft\",\n /**\n * Swedish\n */\n SvLucene = \"sv.lucene\",\n /**\n * Tamil\n */\n TaMicrosoft = \"ta.microsoft\",\n /**\n * Telugu\n */\n TeMicrosoft = \"te.microsoft\",\n /**\n * Thai\n */\n ThMicrosoft = \"th.microsoft\",\n /**\n * Thai\n */\n ThLucene = \"th.lucene\",\n /**\n * Turkish\n */\n TrMicrosoft = \"tr.microsoft\",\n /**\n * Turkish\n */\n TrLucene = \"tr.lucene\",\n /**\n * Ukrainian\n */\n UkMicrosoft = \"uk.microsoft\",\n /**\n * Urdu\n */\n UrMicrosoft = \"ur.microsoft\",\n /**\n * Vietnamese\n */\n ViMicrosoft = \"vi.microsoft\",\n /**\n * See: https://lucene.apache.org/core/6_6_1/core/org/apache/lucene/analysis/standard/StandardAnalyzer.html\n */\n StandardLucene = \"standard.lucene\",\n /**\n * See https://lucene.apache.org/core/6_6_1/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html\n */\n StandardAsciiFoldingLucene = \"standardasciifolding.lucene\",\n /**\n * Treats the entire content of a field as a single token. This is useful for data like zip codes, ids, and some product names.\n */\n Keyword = \"keyword\",\n /**\n * Flexibly separates text into terms via a regular expression pattern.\n */\n Pattern = \"pattern\",\n /**\n * Divides text at non-letters and converts them to lower case.\n */\n Simple = \"simple\",\n /**\n * Divides text at non-letters; Applies the lowercase and stopword token filters.\n */\n Stop = \"stop\",\n /**\n * An analyzer that uses the whitespace tokenizer.\n */\n Whitespace = \"whitespace\",\n}\n\n/**\n * Contains the possible cases for DataChangeDetectionPolicy.\n */\nexport type DataChangeDetectionPolicy =\n | HighWaterMarkChangeDetectionPolicy\n | SqlIntegratedChangeTrackingPolicy;\n\n/**\n * Contains the possible cases for SearchIndexerDataIdentity.\n */\nexport type SearchIndexerDataIdentity =\n | SearchIndexerDataNoneIdentity\n | SearchIndexerDataUserAssignedIdentity;\n\n/**\n * Contains the possible cases for DataDeletionDetectionPolicy.\n */\nexport type DataDeletionDetectionPolicy =\n | SoftDeleteColumnDeletionDetectionPolicy\n | NativeBlobSoftDeleteDeletionDetectionPolicy;\n\n/**\n * Represents a datasource definition, which can be used to configure an indexer.\n */\nexport interface SearchIndexerDataSourceConnection {\n /**\n * The name of the datasource.\n */\n name: string;\n /**\n * The description of the datasource.\n */\n description?: string;\n /**\n * The type of the datasource. Possible values include: 'AzureSql', 'CosmosDb', 'AzureBlob',\n * 'AzureTable', 'MySql', 'AdlsGen2'\n */\n type: SearchIndexerDataSourceType;\n /**\n * The connection string for the datasource.\n */\n connectionString?: string;\n /**\n * The data container for the datasource.\n */\n container: SearchIndexerDataContainer;\n /**\n * An explicit managed identity to use for this datasource. If not specified and the connection\n * string is a managed identity, the system-assigned managed identity is used. If not specified,\n * the value remains unchanged. If \"none\" is specified, the value of this property is cleared.\n */\n identity?: SearchIndexerDataIdentity;\n /**\n * The data change detection policy for the datasource.\n */\n dataChangeDetectionPolicy?: DataChangeDetectionPolicy;\n /**\n * The data deletion detection policy for the datasource.\n */\n dataDeletionDetectionPolicy?: DataDeletionDetectionPolicy;\n /**\n * The ETag of the DataSource.\n */\n etag?: string;\n /**\n * A description of an encryption key that you create in Azure Key Vault. This key is used to\n * provide an additional level of encryption-at-rest for your datasource definition when you want\n * full assurance that no one, not even Microsoft, can decrypt your data source definition in\n * Azure Cognitive Search. Once you have encrypted your data source definition, it will always\n * remain encrypted. Azure Cognitive Search will ignore attempts to set this property to null.\n * You can change this property as needed if you want to rotate your encryption key; Your\n * datasource definition will be unaffected. Encryption with customer-managed keys is not\n * available for free search services, and is only available for paid services created on or\n * after January 1, 2019.\n */\n encryptionKey?: SearchResourceEncryptionKey;\n}\n\n/** Contains configuration options related to vector search. */\nexport interface VectorSearch {\n /** Defines combinations of configurations to use with vector search. */\n profiles?: VectorSearchProfile[];\n /** Contains configuration options specific to the algorithm used during indexing and/or querying. */\n algorithms?: VectorSearchAlgorithmConfiguration[];\n /** Contains configuration options on how to vectorize text vector queries. */\n vectorizers?: VectorSearchVectorizer[];\n /**\n * Contains configuration options specific to the compression method used during indexing or\n * querying.\n */\n compressions?: VectorSearchCompression[];\n}\n\n/** Contains configuration options specific to the algorithm used during indexing and/or querying. */\nexport type VectorSearchAlgorithmConfiguration =\n | HnswAlgorithmConfiguration\n | ExhaustiveKnnAlgorithmConfiguration;\n\n/** Contains configuration options specific to the algorithm used during indexing and/or querying. */\nexport interface BaseVectorSearchAlgorithmConfiguration {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: VectorSearchAlgorithmKind;\n /** The name to associate with this particular configuration. */\n name: string;\n}\n\n/**\n * Contains configuration options specific to the hnsw approximate nearest neighbors algorithm\n * used during indexing time.\n */\nexport type HnswAlgorithmConfiguration = BaseVectorSearchAlgorithmConfiguration & {\n /**\n * Polymorphic discriminator, which specifies the different types this object can be\n */\n kind: \"hnsw\";\n /**\n * Contains the parameters specific to hnsw algorithm.\n *\n */\n parameters?: HnswParameters;\n};\n\n/**\n * Contains the parameters specific to hnsw algorithm.\n */\nexport interface HnswParameters {\n /**\n * The number of bi-directional links created for every new element during construction.\n * Increasing this parameter value may improve recall and reduce retrieval times for datasets\n * with high intrinsic dimensionality at the expense of increased memory consumption and longer\n * indexing time.\n */\n m?: number;\n /**\n * The size of the dynamic list containing the nearest neighbors, which is used during index\n * time. Increasing this parameter may improve index quality, at the expense of increased\n * indexing time. At a certain point, increasing this parameter leads to diminishing returns.\n */\n efConstruction?: number;\n /**\n * The size of the dynamic list containing the nearest neighbors, which is used during search\n * time. Increasing this parameter may improve search results, at the expense of slower search.\n * Increasing this parameter leads to diminishing returns.\n */\n efSearch?: number;\n /**\n * The similarity metric to use for vector comparisons.\n */\n metric?: VectorSearchAlgorithmMetric;\n}\n\n/** Contains configuration options specific to the exhaustive KNN algorithm used during querying, which will perform brute-force search across the entire vector index. */\nexport type ExhaustiveKnnAlgorithmConfiguration = BaseVectorSearchAlgorithmConfiguration & {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"exhaustiveKnn\";\n /** Contains the parameters specific to exhaustive KNN algorithm. */\n parameters?: ExhaustiveKnnParameters;\n};\n\n/** Contains the parameters specific to exhaustive KNN algorithm. */\nexport interface ExhaustiveKnnParameters {\n /** The similarity metric to use for vector comparisons. */\n metric?: VectorSearchAlgorithmMetric;\n}\n\n/** A dictionary of index projection-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type. */\nexport interface SearchIndexerIndexProjectionParameters {\n /** Describes unknown properties.*/\n [property: string]: unknown;\n /** Defines behavior of the index projections in relation to the rest of the indexer. */\n projectionMode?: IndexProjectionMode;\n}\n\n/** Definition of additional projections to secondary search indexes. */\nexport interface SearchIndexerIndexProjection {\n /** A list of projections to be performed to secondary search indexes. */\n selectors: SearchIndexerIndexProjectionSelector[];\n /** A dictionary of index projection-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type. */\n parameters?: SearchIndexerIndexProjectionParameters;\n}\n\n/** Contains specific details for a vectorization method to be used during query time. */\nexport interface BaseVectorSearchVectorizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: VectorSearchVectorizerKind;\n /** The name to associate with this particular vectorization method. */\n vectorizerName: string;\n}\n\n/** Contains the parameters specific to using an Azure Open AI service for vectorization at query time. */\nexport interface AzureOpenAIVectorizer extends BaseVectorSearchVectorizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"azureOpenAI\";\n /** Contains the parameters specific to Azure Open AI embedding vectorization. */\n parameters?: AzureOpenAIParameters;\n}\n\n/** Specifies a user-defined vectorizer for generating the vector embedding of a query string. Integration of an external vectorizer is achieved using the custom Web API interface of a skillset. */\nexport interface WebApiVectorizer extends BaseVectorSearchVectorizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"customWebApi\";\n /** Specifies the properties of the user-defined vectorizer. */\n parameters?: WebApiParameters;\n}\n\n/** Specifies the properties for connecting to a user-defined vectorizer. */\nexport interface WebApiParameters {\n /** The URI of the Web API providing the vectorizer. */\n uri?: string;\n /** The headers required to make the HTTP request. */\n httpHeaders?: { [propertyName: string]: string };\n /** The method for the HTTP request. */\n httpMethod?: string;\n /** The desired timeout for the request. Default is 30 seconds. */\n timeout?: string;\n /** Applies to custom endpoints that connect to external code in an Azure function or some other application that provides the transformations. This value should be the application ID created for the function or app when it was registered with Azure Active Directory. When specified, the vectorization connects to the function or app using a managed ID (either system or user-assigned) of the search service and the access token of the function or app, using this value as the resource id for creating the scope of the access token. */\n authResourceId?: string;\n /** The user-assigned managed identity used for outbound connections. If an authResourceId is provided and it's not specified, the system-assigned managed identity is used. On updates to the indexer, if the identity is unspecified, the value remains unchanged. If set to \"none\", the value of this property is cleared. */\n authIdentity?: SearchIndexerDataIdentity;\n}\n\n/** Contains configuration options on how to vectorize text vector queries. */\nexport type VectorSearchVectorizer =\n | AIServicesVisionVectorizer\n | AzureMachineLearningVectorizer\n | AzureOpenAIVectorizer\n | WebApiVectorizer;\n\n/** Specifies the AI Services Vision parameters for vectorizing a query image or text. */\nexport interface AIServicesVisionVectorizer extends BaseVectorSearchVectorizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"aiServicesVision\";\n /** Contains the parameters specific to AI Services Vision embedding vectorization. */\n parameters?: AIServicesVisionParameters;\n}\n\n/** Specifies the AI Services Vision parameters for vectorizing a query image or text. */\nexport interface AIServicesVisionParameters {\n /** The version of the model to use when calling the AI Services Vision service. It will default to the latest available when not specified. */\n modelVersion?: string;\n /** The resource URI of the AI Services resource. */\n resourceUri: string;\n /** API key of the designated AI Services resource. */\n apiKey?: string;\n /** The user-assigned managed identity used for outbound connections. If an authResourceId is provided and it's not specified, the system-assigned managed identity is used. On updates to the index, if the identity is unspecified, the value remains unchanged. If set to \"none\", the value of this property is cleared. */\n authIdentity?: SearchIndexerDataIdentity;\n}\n\n/** Specifies an Azure Machine Learning endpoint deployed via the Azure AI Studio Model Catalog for generating the vector embedding of a query string. */\nexport interface AzureMachineLearningVectorizer extends BaseVectorSearchVectorizer {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n kind: \"aml\";\n /** Specifies the properties of the AML vectorizer. */\n amlParameters?: AzureMachineLearningVectorizerParameters;\n}\n\n/** Specifies the properties for connecting to an AML vectorizer. */\nexport type AzureMachineLearningVectorizerParameters =\n | NoAuthAzureMachineLearningVectorizerParameters\n | KeyAuthAzureMachineLearningVectorizerParameters\n | TokenAuthAzureMachineLearningVectorizerParameters;\n\n/** Specifies the properties common between all AML vectorizer auth types. */\nexport interface BaseAzureMachineLearningVectorizerParameters {\n /** When specified, indicates the timeout for the http client making the API call. */\n timeout?: string;\n /** The name of the embedding model from the Azure AI Studio Catalog that is deployed at the provided endpoint. */\n modelName?: AIStudioModelCatalogName;\n}\n\n/**\n * Specifies the properties for connecting to an AML vectorizer with no authentication.\n */\nexport interface NoAuthAzureMachineLearningVectorizerParameters\n extends BaseAzureMachineLearningVectorizerParameters {\n /** Indicates how the service should attempt to identify itself to the AML instance */\n authKind: \"none\";\n /** The scoring URI of the AML service to which the JSON payload will be sent. Only the https URI scheme is allowed. */\n scoringUri: string;\n}\n\n/**\n * Specifies the properties for connecting to an AML vectorizer with an authentication key.\n */\nexport interface KeyAuthAzureMachineLearningVectorizerParameters\n extends BaseAzureMachineLearningVectorizerParameters {\n /** Indicates how the service should attempt to identify itself to the AML instance */\n authKind: \"key\";\n /** The scoring URI of the AML service to which the JSON payload will be sent. Only the https URI scheme is allowed. */\n scoringUri: string;\n /** The key for the AML service. */\n authenticationKey: string;\n}\n\n/**\n * Specifies the properties for connecting to an AML vectorizer with a managed identity.\n */\nexport interface TokenAuthAzureMachineLearningVectorizerParameters\n extends BaseAzureMachineLearningVectorizerParameters {\n /** Indicates how the service should attempt to identify itself to the AML instance */\n authKind: \"token\";\n /** The Azure Resource Manager resource ID of the AML service. It should be in the format subscriptions/\\{guid\\}/resourceGroups/\\{resource-group-name\\}/Microsoft.MachineLearningServices/workspaces/\\{workspace-name\\}/services/\\{service_name\\}. */\n resourceId: string;\n /** The region the AML service is deployed in. */\n region?: string;\n}\n\n/** Specifies the parameters for connecting to the Azure OpenAI resource. */\nexport interface AzureOpenAIParameters {\n /** The resource URI of the Azure OpenAI resource. */\n resourceUrl?: string;\n /** ID of the Azure OpenAI model deployment on the designated resource. */\n deploymentId?: string;\n /** API key of the designated Azure OpenAI resource. */\n apiKey?: string;\n /** The user-assigned managed identity used for outbound connections. */\n authIdentity?: SearchIndexerDataIdentity;\n /** The name of the embedding model that is deployed at the provided deploymentId path. */\n modelName?: AzureOpenAIModelName;\n}\n\n/** Allows you to generate a vector embedding for a given text input using the Azure OpenAI resource. */\nexport interface AzureOpenAIEmbeddingSkill extends BaseSearchIndexerSkill, AzureOpenAIParameters {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill\";\n /** The number of dimensions the resulting output embeddings should have. Only supported in text-embedding-3 and later models. */\n dimensions?: number;\n}\n\n/** A dictionary of knowledge store-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type. */\nexport interface SearchIndexerKnowledgeStoreParameters {\n /** Describes unknown properties. The value of an unknown property can be of \"any\" type. */\n [property: string]: unknown;\n /** Whether or not projections should synthesize a generated key name if one isn't already present. */\n synthesizeGeneratedKeyName?: boolean;\n}\n\n/** A dictionary of indexer-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type. */\nexport interface IndexingParametersConfiguration {\n /** Describes unknown properties. The value of an unknown property can be of \"any\" type. */\n [property: string]: any;\n /** Represents the parsing mode for indexing from an Azure blob data source. */\n parsingMode?: BlobIndexerParsingMode;\n /** Comma-delimited list of filename extensions to ignore when processing from Azure blob storage. For example, you could exclude \".png, .mp4\" to skip over those files during indexing. */\n excludedFileNameExtensions?: string;\n /** Comma-delimited list of filename extensions to select when processing from Azure blob storage. For example, you could focus indexing on specific application files \".docx, .pptx, .msg\" to specifically include those file types. */\n indexedFileNameExtensions?: string;\n /** For Azure blobs, set to false if you want to continue indexing when an unsupported content type is encountered, and you don't know all the content types (file extensions) in advance. */\n failOnUnsupportedContentType?: boolean;\n /** For Azure blobs, set to false if you want to continue indexing if a document fails indexing. */\n failOnUnprocessableDocument?: boolean;\n /** For Azure blobs, set this property to true to still index storage metadata for blob content that is too large to process. Oversized blobs are treated as errors by default. For limits on blob size, see https://docs.microsoft.com/azure/search/search-limits-quotas-capacity. */\n indexStorageMetadataOnlyForOversizedDocuments?: boolean;\n /** For CSV blobs, specifies a comma-delimited list of column headers, useful for mapping source fields to destination fields in an index. */\n delimitedTextHeaders?: string;\n /** For CSV blobs, specifies the end-of-line single-character delimiter for CSV files where each line starts a new document (for example, \"|\"). */\n delimitedTextDelimiter?: string;\n /** For CSV blobs, indicates that the first (non-blank) line of each blob contains headers. */\n firstLineContainsHeaders?: boolean;\n /** For JSON arrays, given a structured or semi-structured document, you can specify a path to the array using this property. */\n documentRoot?: string;\n /** Specifies the data to extract from Azure blob storage and tells the indexer which data to extract from image content when \"imageAction\" is set to a value other than \"none\". This applies to embedded image content in a .PDF or other application, or image files such as .jpg and .png, in Azure blobs. */\n dataToExtract?: BlobIndexerDataToExtract;\n /** Determines how to process embedded images and image files in Azure blob storage. Setting the \"imageAction\" configuration to any value other than \"none\" requires that a skillset also be attached to that indexer. */\n imageAction?: BlobIndexerImageAction;\n /** If true, will create a path //document//file_data that is an object representing the original file data downloaded from your blob data source. This allows you to pass the original file data to a custom skill for processing within the enrichment pipeline, or to the Document Extraction skill. */\n allowSkillsetToReadFileData?: boolean;\n /** Determines algorithm for text extraction from PDF files in Azure blob storage. */\n pdfTextRotationAlgorithm?: BlobIndexerPDFTextRotationAlgorithm;\n /** Specifies the environment in which the indexer should execute. */\n executionEnvironment?: IndexerExecutionEnvironment;\n /** Increases the timeout beyond the 5-minute default for Azure SQL database data sources, specified in the format \"hh:mm:ss\". */\n queryTimeout?: string;\n}\n\n/** Represents parameters for indexer execution. */\nexport interface IndexingParameters {\n /** The number of items that are read from the data source and indexed as a single batch in order to improve performance. The default depends on the data source type. */\n batchSize?: number;\n /** The maximum number of items that can fail indexing for indexer execution to still be considered successful. -1 means no limit. Default is 0. */\n maxFailedItems?: number;\n /** The maximum number of items in a single batch that can fail indexing for the batch to still be considered successful. -1 means no limit. Default is 0. */\n maxFailedItemsPerBatch?: number;\n /** A dictionary of indexer-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type. */\n configuration?: IndexingParametersConfiguration;\n}\n\n/** A skill looks for text from a custom, user-defined list of words and phrases. */\nexport interface CustomEntityLookupSkill extends BaseSearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.CustomEntityLookupSkill\";\n /** A value indicating which language code to use. Default is en. */\n defaultLanguageCode?: CustomEntityLookupSkillLanguage;\n /** Path to a JSON or CSV file containing all the target text to match against. This entity definition is read at the beginning of an indexer run. Any updates to this file during an indexer run will not take effect until subsequent runs. This config must be accessible over HTTPS. */\n entitiesDefinitionUri?: string;\n /** The inline CustomEntity definition. */\n inlineEntitiesDefinition?: CustomEntity[];\n /** A global flag for CaseSensitive. If CaseSensitive is not set in CustomEntity, this value will be the default value. */\n globalDefaultCaseSensitive?: boolean;\n /** A global flag for AccentSensitive. If AccentSensitive is not set in CustomEntity, this value will be the default value. */\n globalDefaultAccentSensitive?: boolean;\n /** A global flag for FuzzyEditDistance. If FuzzyEditDistance is not set in CustomEntity, this value will be the default value. */\n globalDefaultFuzzyEditDistance?: number;\n}\n\n/**\n * Text analytics entity recognition.\n *\n * @deprecated This skill has been deprecated.\n */\nexport interface EntityRecognitionSkill extends BaseSearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.EntityRecognitionSkill\";\n /** A list of entity categories that should be extracted. */\n categories?: EntityCategory[];\n /** A value indicating which language code to use. Default is en. */\n defaultLanguageCode?: EntityRecognitionSkillLanguage;\n /** Determines whether or not to include entities which are well known but don't conform to a pre-defined type. If this configuration is not set (default), set to null or set to false, entities which don't conform to one of the pre-defined types will not be surfaced. */\n includeTypelessEntities?: boolean;\n /** A value between 0 and 1 that be used to only include entities whose confidence score is greater than the value specified. If not set (default), or if explicitly set to null, all entities will be included. */\n minimumPrecision?: number;\n}\n\n/** A skill that analyzes image files. It extracts a rich set of visual features based on the image content. */\nexport interface ImageAnalysisSkill extends BaseSearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Vision.ImageAnalysisSkill\";\n /** A value indicating which language code to use. Default is en. */\n defaultLanguageCode?: ImageAnalysisSkillLanguage;\n /** A list of visual features. */\n visualFeatures?: VisualFeature[];\n /** A string indicating which domain-specific details to return. */\n details?: ImageDetail[];\n}\n\n/** A skill that uses text analytics for key phrase extraction. */\nexport interface KeyPhraseExtractionSkill extends BaseSearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.KeyPhraseExtractionSkill\";\n /** A value indicating which language code to use. Default is en. */\n defaultLanguageCode?: KeyPhraseExtractionSkillLanguage;\n /** A number indicating how many key phrases to return. If absent, all identified key phrases will be returned. */\n maxKeyPhraseCount?: number;\n /** The version of the model to use when calling the Text Analytics service. It will default to the latest available when not specified. We recommend you do not specify this value unless absolutely necessary. */\n modelVersion?: string;\n}\n\n/** A skill that extracts text from image files. */\nexport interface OcrSkill extends BaseSearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Vision.OcrSkill\";\n /** A value indicating which language code to use. Default is `en`. */\n defaultLanguageCode?: OcrSkillLanguage;\n /** A value indicating to turn orientation detection on or not. Default is false. */\n shouldDetectOrientation?: boolean;\n /** Defines the sequence of characters to use between the lines of text recognized by the OCR skill. The default value is \"space\". */\n lineEnding?: OcrLineEnding;\n}\n\n/** Using the Text Analytics API, extracts personal information from an input text and gives you the option of masking it. */\nexport interface PIIDetectionSkill extends BaseSearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.PIIDetectionSkill\";\n /** A value indicating which language code to use. Default is en. */\n defaultLanguageCode?: string;\n /** A value between 0 and 1 that be used to only include entities whose confidence score is greater than the value specified. If not set (default), or if explicitly set to null, all entities will be included. */\n minimumPrecision?: number;\n /** A parameter that provides various ways to mask the personal information detected in the input text. Default is 'none'. */\n maskingMode?: PIIDetectionSkillMaskingMode;\n /** The character used to mask the text if the maskingMode parameter is set to replace. Default is '*'. */\n maskingCharacter?: string;\n /** The version of the model to use when calling the Text Analytics service. It will default to the latest available when not specified. We recommend you do not specify this value unless absolutely necessary. */\n modelVersion?: string;\n /** A list of PII entity categories that should be extracted and masked. */\n categories?: string[];\n /** If specified, will set the PII domain to include only a subset of the entity categories. Possible values include: 'phi', 'none'. Default is 'none'. */\n domain?: string;\n}\n\n/**\n * Text analytics positive-negative sentiment analysis, scored as a floating point value in a range of zero to 1.\n *\n * @deprecated This skill has been deprecated.\n */\nexport interface SentimentSkill extends BaseSearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.SentimentSkill\";\n /** A value indicating which language code to use. Default is en. */\n defaultLanguageCode?: SentimentSkillLanguage;\n}\n\n/** A skill to split a string into chunks of text. */\nexport interface SplitSkill extends BaseSearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.SplitSkill\";\n /** A value indicating which language code to use. Default is `en`. */\n defaultLanguageCode?: SplitSkillLanguage;\n /** A value indicating which split mode to perform. */\n textSplitMode?: TextSplitMode;\n /** The desired maximum page length. Default is 10000. */\n maxPageLength?: number;\n /** Only applicable when textSplitMode is set to 'pages'. If specified, n+1th chunk will start with this number of characters/tokens from the end of the nth chunk. */\n pageOverlapLength?: number;\n /** Only applicable when textSplitMode is set to 'pages'. If specified, the SplitSkill will discontinue splitting after processing the first 'maximumPagesToTake' pages, in order to improve performance when only a few initial pages are needed from each document. */\n maximumPagesToTake?: number;\n /** Only applies if textSplitMode is set to pages. There are two possible values. The choice of the values will decide the length (maximumPageLength and pageOverlapLength) measurement. The default is 'characters', which means the length will be measured by character. */\n unit?: SplitSkillUnit;\n /** Only applies if the unit is set to azureOpenAITokens. If specified, the splitSkill will use these parameters when performing the tokenization. The parameters are a valid 'encoderModelName' and an optional 'allowedSpecialTokens' property. */\n azureOpenAITokenizerParameters?: AzureOpenAITokenizerParameters;\n}\n\n/** A skill to translate text from one language to another. */\nexport interface TextTranslationSkill extends BaseSearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Text.TranslationSkill\";\n /** The language code to translate documents into for documents that don't specify the to language explicitly. */\n defaultToLanguageCode: TextTranslationSkillLanguage;\n /** The language code to translate documents from for documents that don't specify the from language explicitly. */\n defaultFromLanguageCode?: TextTranslationSkillLanguage;\n /** The language code to translate documents from when neither the fromLanguageCode input nor the defaultFromLanguageCode parameter are provided, and the automatic language detection is unsuccessful. Default is en. */\n suggestedFrom?: TextTranslationSkillLanguage;\n}\n\n/** A skill that analyzes image files. It extracts a rich set of visual features based on the image content. */\nexport interface ImageAnalysisSkill extends BaseSearchIndexerSkill {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odatatype: \"#Microsoft.Skills.Vision.ImageAnalysisSkill\";\n /** A value indicating which language code to use. Default is en. */\n defaultLanguageCode?: ImageAnalysisSkillLanguage;\n /** A list of visual features. */\n visualFeatures?: VisualFeature[];\n /** A string indicating which domain-specific details to return. */\n details?: ImageDetail[];\n}\n\n/** Contains configuration options specific to the compression method used during indexing or querying. */\nexport type VectorSearchCompression = BinaryQuantizationCompression | ScalarQuantizationCompression;\n\n/**\n * Defines values for LexicalAnalyzerName.\n * {@link KnownLexicalAnalyzerName} can be used interchangeably with LexicalAnalyzerName,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ar.microsoft**: Microsoft analyzer for Arabic.\n * **ar.lucene**: Lucene analyzer for Arabic.\n * **hy.lucene**: Lucene analyzer for Armenian.\n * **bn.microsoft**: Microsoft analyzer for Bangla.\n * **eu.lucene**: Lucene analyzer for Basque.\n * **bg.microsoft**: Microsoft analyzer for Bulgarian.\n * **bg.lucene**: Lucene analyzer for Bulgarian.\n * **ca.microsoft**: Microsoft analyzer for Catalan.\n * **ca.lucene**: Lucene analyzer for Catalan.\n * **zh-Hans.microsoft**: Microsoft analyzer for Chinese (Simplified).\n * **zh-Hans.lucene**: Lucene analyzer for Chinese (Simplified).\n * **zh-Hant.microsoft**: Microsoft analyzer for Chinese (Traditional).\n * **zh-Hant.lucene**: Lucene analyzer for Chinese (Traditional).\n * **hr.microsoft**: Microsoft analyzer for Croatian.\n * **cs.microsoft**: Microsoft analyzer for Czech.\n * **cs.lucene**: Lucene analyzer for Czech.\n * **da.microsoft**: Microsoft analyzer for Danish.\n * **da.lucene**: Lucene analyzer for Danish.\n * **nl.microsoft**: Microsoft analyzer for Dutch.\n * **nl.lucene**: Lucene analyzer for Dutch.\n * **en.microsoft**: Microsoft analyzer for English.\n * **en.lucene**: Lucene analyzer for English.\n * **et.microsoft**: Microsoft analyzer for Estonian.\n * **fi.microsoft**: Microsoft analyzer for Finnish.\n * **fi.lucene**: Lucene analyzer for Finnish.\n * **fr.microsoft**: Microsoft analyzer for French.\n * **fr.lucene**: Lucene analyzer for French.\n * **gl.lucene**: Lucene analyzer for Galician.\n * **de.microsoft**: Microsoft analyzer for German.\n * **de.lucene**: Lucene analyzer for German.\n * **el.microsoft**: Microsoft analyzer for Greek.\n * **el.lucene**: Lucene analyzer for Greek.\n * **gu.microsoft**: Microsoft analyzer for Gujarati.\n * **he.microsoft**: Microsoft analyzer for Hebrew.\n * **hi.microsoft**: Microsoft analyzer for Hindi.\n * **hi.lucene**: Lucene analyzer for Hindi.\n * **hu.microsoft**: Microsoft analyzer for Hungarian.\n * **hu.lucene**: Lucene analyzer for Hungarian.\n * **is.microsoft**: Microsoft analyzer for Icelandic.\n * **id.microsoft**: Microsoft analyzer for Indonesian (Bahasa).\n * **id.lucene**: Lucene analyzer for Indonesian.\n * **ga.lucene**: Lucene analyzer for Irish.\n * **it.microsoft**: Microsoft analyzer for Italian.\n * **it.lucene**: Lucene analyzer for Italian.\n * **ja.microsoft**: Microsoft analyzer for Japanese.\n * **ja.lucene**: Lucene analyzer for Japanese.\n * **kn.microsoft**: Microsoft analyzer for Kannada.\n * **ko.microsoft**: Microsoft analyzer for Korean.\n * **ko.lucene**: Lucene analyzer for Korean.\n * **lv.microsoft**: Microsoft analyzer for Latvian.\n * **lv.lucene**: Lucene analyzer for Latvian.\n * **lt.microsoft**: Microsoft analyzer for Lithuanian.\n * **ml.microsoft**: Microsoft analyzer for Malayalam.\n * **ms.microsoft**: Microsoft analyzer for Malay (Latin).\n * **mr.microsoft**: Microsoft analyzer for Marathi.\n * **nb.microsoft**: Microsoft analyzer for Norwegian (Bokmål).\n * **no.lucene**: Lucene analyzer for Norwegian.\n * **fa.lucene**: Lucene analyzer for Persian.\n * **pl.microsoft**: Microsoft analyzer for Polish.\n * **pl.lucene**: Lucene analyzer for Polish.\n * **pt-BR.microsoft**: Microsoft analyzer for Portuguese (Brazil).\n * **pt-BR.lucene**: Lucene analyzer for Portuguese (Brazil).\n * **pt-PT.microsoft**: Microsoft analyzer for Portuguese (Portugal).\n * **pt-PT.lucene**: Lucene analyzer for Portuguese (Portugal).\n * **pa.microsoft**: Microsoft analyzer for Punjabi.\n * **ro.microsoft**: Microsoft analyzer for Romanian.\n * **ro.lucene**: Lucene analyzer for Romanian.\n * **ru.microsoft**: Microsoft analyzer for Russian.\n * **ru.lucene**: Lucene analyzer for Russian.\n * **sr-cyrillic.microsoft**: Microsoft analyzer for Serbian (Cyrillic).\n * **sr-latin.microsoft**: Microsoft analyzer for Serbian (Latin).\n * **sk.microsoft**: Microsoft analyzer for Slovak.\n * **sl.microsoft**: Microsoft analyzer for Slovenian.\n * **es.microsoft**: Microsoft analyzer for Spanish.\n * **es.lucene**: Lucene analyzer for Spanish.\n * **sv.microsoft**: Microsoft analyzer for Swedish.\n * **sv.lucene**: Lucene analyzer for Swedish.\n * **ta.microsoft**: Microsoft analyzer for Tamil.\n * **te.microsoft**: Microsoft analyzer for Telugu.\n * **th.microsoft**: Microsoft analyzer for Thai.\n * **th.lucene**: Lucene analyzer for Thai.\n * **tr.microsoft**: Microsoft analyzer for Turkish.\n * **tr.lucene**: Lucene analyzer for Turkish.\n * **uk.microsoft**: Microsoft analyzer for Ukrainian.\n * **ur.microsoft**: Microsoft analyzer for Urdu.\n * **vi.microsoft**: Microsoft analyzer for Vietnamese.\n * **standard.lucene**: Standard Lucene analyzer.\n * **standardasciifolding.lucene**: Standard ASCII Folding Lucene analyzer. See https:\\/\\/learn.microsoft.com\\/rest\\/api\\/searchservice\\/Custom-analyzers-in-Azure-Search#Analyzers\n * **keyword**: Treats the entire content of a field as a single token. This is useful for data like zip codes, ids, and some product names. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/KeywordAnalyzer.html\n * **pattern**: Flexibly separates text into terms via a regular expression pattern. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/miscellaneous\\/PatternAnalyzer.html\n * **simple**: Divides text at non-letters and converts them to lower case. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/SimpleAnalyzer.html\n * **stop**: Divides text at non-letters; Applies the lowercase and stopword token filters. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/StopAnalyzer.html\n * **whitespace**: An analyzer that uses the whitespace tokenizer. See http:\\/\\/lucene.apache.org\\/core\\/4_10_3\\/analyzers-common\\/org\\/apache\\/lucene\\/analysis\\/core\\/WhitespaceAnalyzer.html\n */\nexport type AnalyzerNames = `${KnownLexicalAnalyzerName}`;\nexport type BlobIndexerDataToExtract = `${KnownBlobIndexerDataToExtract}`;\nexport type BlobIndexerImageAction = `${KnownBlobIndexerImageAction}`;\nexport type BlobIndexerParsingMode = `${KnownBlobIndexerParsingMode}`;\nexport type BlobIndexerPDFTextRotationAlgorithm = `${KnownBlobIndexerPDFTextRotationAlgorithm}`;\nexport type CharFilterNames = `${KnownCharFilterName}`;\nexport type CustomEntityLookupSkillLanguage = `${KnownCustomEntityLookupSkillLanguage}`;\nexport type EntityCategory = `${KnownEntityCategory}`;\nexport type EntityRecognitionSkillLanguage = `${KnownEntityRecognitionSkillLanguage}`;\nexport type ImageAnalysisSkillLanguage = `${KnownImageAnalysisSkillLanguage}`;\nexport type ImageDetail = `${KnownImageDetail}`;\nexport type IndexerExecutionEnvironment = `${KnownIndexerExecutionEnvironment}`;\nexport type KeyPhraseExtractionSkillLanguage = `${KnownKeyPhraseExtractionSkillLanguage}`;\nexport type OcrSkillLanguage = `${KnownOcrSkillLanguage}`;\nexport type PIIDetectionSkillMaskingMode = `${KnownPIIDetectionSkillMaskingMode}`;\nexport type RegexFlags = `${KnownRegexFlags}`;\n/**\n * Defines values for SearchFieldDataType.\n *\n * ### Known values supported by the service:\n *\n * **Edm.String**: Indicates that a field contains a string.\n *\n * **Edm.Int32**: Indicates that a field contains a 32-bit signed integer.\n *\n * **Edm.Int64**: Indicates that a field contains a 64-bit signed integer.\n *\n * **Edm.Double**: Indicates that a field contains an IEEE double-precision floating point number.\n *\n * **Edm.Boolean**: Indicates that a field contains a Boolean value (true or false).\n *\n * **Edm.DateTimeOffset**: Indicates that a field contains a date/time value, including timezone\n * information.\n *\n * **Edm.GeographyPoint**: Indicates that a field contains a geo-location in terms of longitude and\n * latitude.\n *\n * **Edm.ComplexType**: Indicates that a field contains one or more complex objects that in turn\n * have sub-fields of other types.\n *\n * **Edm.Single**: Indicates that a field contains a single-precision floating point number. This is\n * only valid when used as part of a collection type, i.e. Collection(Edm.Single).\n *\n * **Edm.Half**: Indicates that a field contains a half-precision floating point number. This is\n * only valid when used as part of a collection type, i.e. Collection(Edm.Half).\n *\n * **Edm.Int16**: Indicates that a field contains a 16-bit signed integer. This is only valid when\n * used as part of a collection type, i.e. Collection(Edm.Int16).\n *\n * **Edm.SByte**: Indicates that a field contains a 8-bit signed integer. This is only valid when\n * used as part of a collection type, i.e. Collection(Edm.SByte).\n *\n * **Edm.Byte**: Indicates that a field contains a 8-bit unsigned integer. This is only valid when\n * used as part of a collection type, i.e. Collection(Edm.Byte).\n */\nexport type SearchFieldDataType = Exclude<\n `${KnownSearchFieldDataType}` | `Collection(${KnownSearchFieldDataType})`,\n \"Edm.ComplexType\" | \"Edm.Byte\" | \"Edm.Half\" | \"Edm.Int16\" | \"Edm.SByte\" | \"Edm.Single\"\n>;\nexport type SearchIndexerDataSourceType = `${KnownSearchIndexerDataSourceType}`;\nexport type SentimentSkillLanguage = `${KnownSentimentSkillLanguage}`;\nexport type SplitSkillLanguage = `${KnownSplitSkillLanguage}`;\nexport type TextSplitMode = `${KnownTextSplitMode}`;\nexport type TextTranslationSkillLanguage = `${KnownTextTranslationSkillLanguage}`;\nexport type TokenFilterNames = `${KnownTokenFilterName}`;\nexport type TokenizerNames = `${KnownLexicalTokenizerName}`;\nexport type VectorSearchAlgorithmKind = `${KnownVectorSearchAlgorithmKind}`;\nexport type VectorSearchAlgorithmMetric = `${KnownVectorSearchAlgorithmMetric}`;\nexport type VisualFeature = `${KnownVisualFeature}`;\n\n// END manually modified generated interfaces\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n SearchResult as GeneratedSearchResult,\n SuggestDocumentsResult as GeneratedSuggestDocumentsResult,\n} from \"./generated/data/models\";\nimport {\n AIServicesVisionVectorizer as GeneratedAIServicesVisionVectorizer,\n AMLParameters as GeneratedAMLParameters,\n AMLVectorizer as GeneratedAMLVectorizer,\n AzureOpenAIVectorizer as GeneratedAzureOpenAIVectorizer,\n BM25Similarity,\n ClassicSimilarity,\n CognitiveServicesAccountKey,\n CognitiveServicesAccountUnion,\n CustomAnalyzer as BaseCustomAnalyzer,\n DataChangeDetectionPolicyUnion,\n DataDeletionDetectionPolicyUnion,\n DefaultCognitiveServicesAccount,\n ExhaustiveKnnAlgorithmConfiguration as GeneratedExhaustiveKnnAlgorithmConfiguration,\n HighWaterMarkChangeDetectionPolicy,\n HnswAlgorithmConfiguration as GeneratedHnswAlgorithmConfiguration,\n LexicalAnalyzerUnion,\n LexicalTokenizerUnion,\n LuceneStandardAnalyzer,\n PatternAnalyzer as GeneratedPatternAnalyzer,\n PatternTokenizer,\n SearchField as GeneratedSearchField,\n SearchIndex as GeneratedSearchIndex,\n SearchIndexer as GeneratedSearchIndexer,\n SearchIndexerCache as GeneratedSearchIndexerCache,\n SearchIndexerDataIdentityUnion,\n SearchIndexerDataNoneIdentity,\n SearchIndexerDataSource as GeneratedSearchIndexerDataSourceConnection,\n SearchIndexerDataUserAssignedIdentity,\n SearchIndexerKnowledgeStore as BaseSearchIndexerKnowledgeStore,\n SearchIndexerSkillset as GeneratedSearchIndexerSkillset,\n SearchIndexerSkillUnion,\n SearchResourceEncryptionKey as GeneratedSearchResourceEncryptionKey,\n SimilarityUnion,\n SoftDeleteColumnDeletionDetectionPolicy,\n SqlIntegratedChangeTrackingPolicy,\n StopAnalyzer,\n SynonymMap as GeneratedSynonymMap,\n TokenFilterUnion,\n VectorSearch as GeneratedVectorSearch,\n VectorSearchAlgorithmConfigurationUnion as GeneratedVectorSearchAlgorithmConfiguration,\n VectorSearchVectorizerUnion as GeneratedVectorSearchVectorizer,\n WebApiVectorizer as GeneratedWebApiVectorizer,\n} from \"./generated/service/models\";\nimport { SearchResult, SelectFields, SuggestDocumentsResult, SuggestResult } from \"./indexModels\";\nimport { logger } from \"./logger\";\nimport {\n AIServicesVisionVectorizer,\n AzureMachineLearningVectorizer,\n AzureMachineLearningVectorizerParameters,\n AzureOpenAIVectorizer,\n BlobIndexerDataToExtract,\n BlobIndexerImageAction,\n BlobIndexerParsingMode,\n BlobIndexerPDFTextRotationAlgorithm,\n CharFilter,\n CognitiveServicesAccount,\n ComplexField,\n DataChangeDetectionPolicy,\n DataDeletionDetectionPolicy,\n IndexerExecutionEnvironment,\n IndexingParameters,\n IndexingParametersConfiguration,\n isComplexField,\n KeyAuthAzureMachineLearningVectorizerParameters,\n LexicalAnalyzer,\n LexicalNormalizer,\n LexicalTokenizer,\n NoAuthAzureMachineLearningVectorizerParameters,\n PatternAnalyzer,\n RegexFlags,\n ScoringProfile,\n SearchField,\n SearchFieldDataType,\n SearchIndex,\n SearchIndexer,\n SearchIndexerCache,\n SearchIndexerDataIdentity,\n SearchIndexerDataSourceConnection,\n SearchIndexerDataSourceType,\n SearchIndexerIndexProjection,\n SearchIndexerKnowledgeStore,\n SearchIndexerSkill,\n SearchIndexerSkillset,\n SearchResourceEncryptionKey,\n SimilarityAlgorithm,\n SimpleField,\n SynonymMap,\n TokenAuthAzureMachineLearningVectorizerParameters,\n TokenFilter,\n VectorSearch,\n VectorSearchAlgorithmConfiguration,\n VectorSearchAlgorithmMetric,\n VectorSearchVectorizer,\n WebApiVectorizer,\n} from \"./serviceModels\";\n\nexport const defaultServiceVersion = \"2024-09-01-Preview\";\n\nconst knownSkills: Record<`${SearchIndexerSkillUnion[\"odatatype\"]}`, true> = {\n \"#Microsoft.Skills.Custom.WebApiSkill\": true,\n \"#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill\": true,\n \"#Microsoft.Skills.Text.CustomEntityLookupSkill\": true,\n \"#Microsoft.Skills.Text.EntityRecognitionSkill\": true,\n \"#Microsoft.Skills.Text.KeyPhraseExtractionSkill\": true,\n \"#Microsoft.Skills.Text.LanguageDetectionSkill\": true,\n \"#Microsoft.Skills.Text.MergeSkill\": true,\n \"#Microsoft.Skills.Text.PIIDetectionSkill\": true,\n \"#Microsoft.Skills.Text.SentimentSkill\": true,\n \"#Microsoft.Skills.Text.SplitSkill\": true,\n \"#Microsoft.Skills.Text.TranslationSkill\": true,\n \"#Microsoft.Skills.Text.V3.EntityLinkingSkill\": true,\n \"#Microsoft.Skills.Text.V3.EntityRecognitionSkill\": true,\n \"#Microsoft.Skills.Text.V3.SentimentSkill\": true,\n \"#Microsoft.Skills.Util.ConditionalSkill\": true,\n \"#Microsoft.Skills.Util.DocumentExtractionSkill\": true,\n \"#Microsoft.Skills.Util.ShaperSkill\": true,\n \"#Microsoft.Skills.Vision.ImageAnalysisSkill\": true,\n \"#Microsoft.Skills.Vision.OcrSkill\": true,\n \"#Microsoft.Skills.Custom.AmlSkill\": true,\n \"#Microsoft.Skills.Vision.VectorizeSkill\": true,\n};\n\nexport function convertSkillsToPublic(skills: SearchIndexerSkillUnion[]): SearchIndexerSkill[] {\n if (!skills) {\n return skills;\n }\n\n // This validation has already GAed\n return skills.filter((skill): skill is SearchIndexerSkill => knownSkills[skill.odatatype]);\n}\n\nexport function convertCognitiveServicesAccountToGenerated(\n cognitiveServicesAccount?: CognitiveServicesAccount,\n): CognitiveServicesAccountUnion | undefined {\n if (!cognitiveServicesAccount) {\n return cognitiveServicesAccount;\n }\n\n return cognitiveServicesAccount as CognitiveServicesAccountUnion;\n}\n\nexport function convertCognitiveServicesAccountToPublic(\n cognitiveServicesAccount?: CognitiveServicesAccountUnion,\n): CognitiveServicesAccount | undefined {\n if (!cognitiveServicesAccount) {\n return cognitiveServicesAccount;\n }\n\n if (cognitiveServicesAccount.odatatype === \"#Microsoft.Azure.Search.DefaultCognitiveServices\") {\n return cognitiveServicesAccount as DefaultCognitiveServicesAccount;\n } else {\n return cognitiveServicesAccount as CognitiveServicesAccountKey;\n }\n}\n\nexport function convertTokenFiltersToGenerated(\n tokenFilters?: TokenFilter[],\n): TokenFilterUnion[] | undefined {\n if (!tokenFilters) {\n return tokenFilters;\n }\n\n const result: TokenFilterUnion[] = [];\n for (const filter of tokenFilters) {\n result.push(filter);\n }\n\n return result;\n}\n\nfunction convertAnalyzersToGenerated(\n analyzers?: LexicalAnalyzer[],\n): LexicalAnalyzerUnion[] | undefined {\n if (!analyzers) {\n return analyzers;\n }\n\n const result: LexicalAnalyzerUnion[] = [];\n for (const analyzer of analyzers) {\n switch (analyzer.odatatype) {\n case \"#Microsoft.Azure.Search.StandardAnalyzer\":\n case \"#Microsoft.Azure.Search.StopAnalyzer\":\n result.push(analyzer);\n break;\n case \"#Microsoft.Azure.Search.PatternAnalyzer\":\n result.push({\n ...analyzer,\n flags: analyzer.flags ? analyzer.flags.join(\"|\") : undefined,\n });\n break;\n case \"#Microsoft.Azure.Search.CustomAnalyzer\":\n result.push({\n ...analyzer,\n tokenizerName: analyzer.tokenizerName,\n });\n break;\n }\n }\n return result;\n}\n\nfunction convertAnalyzersToPublic(\n analyzers?: LexicalAnalyzerUnion[],\n): LexicalAnalyzer[] | undefined {\n if (!analyzers) {\n return analyzers;\n }\n\n const result: LexicalAnalyzer[] = [];\n for (const analyzer of analyzers) {\n switch (analyzer.odatatype) {\n case \"#Microsoft.Azure.Search.StandardAnalyzer\":\n result.push(analyzer as LuceneStandardAnalyzer);\n break;\n case \"#Microsoft.Azure.Search.StopAnalyzer\":\n result.push(analyzer as StopAnalyzer);\n break;\n case \"#Microsoft.Azure.Search.PatternAnalyzer\":\n result.push({\n ...analyzer,\n flags: (analyzer as GeneratedPatternAnalyzer).flags\n ? ((analyzer as GeneratedPatternAnalyzer).flags!.split(\"|\") as RegexFlags[])\n : undefined,\n } as PatternAnalyzer);\n break;\n case \"#Microsoft.Azure.Search.CustomAnalyzer\":\n result.push(analyzer as BaseCustomAnalyzer);\n break;\n }\n }\n return result;\n}\n\nexport function convertFieldsToPublic(fields: GeneratedSearchField[]): SearchField[] {\n if (!fields) {\n return fields;\n }\n\n return fields.map<SearchField>((field): SearchField => {\n if (field.type === \"Collection(Edm.ComplexType)\" || field.type === \"Edm.ComplexType\") {\n const result: ComplexField = {\n name: field.name,\n type: field.type,\n fields: convertFieldsToPublic(field.fields!),\n };\n return result;\n } else {\n const type: SearchFieldDataType = field.type as SearchFieldDataType;\n const synonymMapNames: string[] | undefined = field.synonymMaps;\n\n const { retrievable, analyzer, searchAnalyzer, indexAnalyzer, normalizer, ...restField } =\n field;\n const hidden = typeof retrievable === \"boolean\" ? !retrievable : retrievable;\n\n const result: SimpleField = {\n ...restField,\n type,\n hidden,\n analyzerName: analyzer,\n searchAnalyzerName: searchAnalyzer,\n indexAnalyzerName: indexAnalyzer,\n normalizerName: normalizer,\n synonymMapNames,\n };\n return result;\n }\n });\n}\n\nexport function convertFieldsToGenerated(\n fields: SearchField[] | undefined,\n): GeneratedSearchField[] | undefined {\n return fields?.map<GeneratedSearchField>((field) => {\n if (isComplexField(field)) {\n return {\n name: field.name,\n type: field.type,\n fields: convertFieldsToGenerated(field.fields),\n };\n } else {\n const { hidden, ...restField } = field;\n const retrievable = typeof hidden === \"boolean\" ? !hidden : hidden;\n return {\n ...restField,\n retrievable,\n // modify API defaults to use less storage for simple types\n searchable: field.searchable ?? false,\n filterable: field.filterable ?? false,\n facetable: field.facetable ?? false,\n sortable: field.sortable ?? false,\n analyzer: field.analyzerName,\n searchAnalyzer: field.searchAnalyzerName,\n indexAnalyzer: field.indexAnalyzerName,\n synonymMaps: field.synonymMapNames,\n normalizer: field.normalizerName,\n };\n }\n });\n}\n\nfunction convertTokenizersToGenerated(\n tokenizers?: LexicalTokenizer[],\n): LexicalTokenizerUnion[] | undefined {\n if (!tokenizers) {\n return tokenizers;\n }\n\n const result: LexicalTokenizerUnion[] = [];\n for (const tokenizer of tokenizers) {\n if (tokenizer.odatatype === \"#Microsoft.Azure.Search.PatternTokenizer\") {\n result.push({\n ...tokenizer,\n flags: tokenizer.flags ? tokenizer.flags.join(\"|\") : undefined,\n });\n } else {\n result.push(tokenizer);\n }\n }\n return result;\n}\n\nfunction convertTokenizersToPublic(\n tokenizers?: LexicalTokenizerUnion[],\n): LexicalTokenizer[] | undefined {\n if (!tokenizers) {\n return tokenizers;\n }\n\n const result: LexicalTokenizer[] = [];\n for (const tokenizer of tokenizers) {\n if (tokenizer.odatatype === \"#Microsoft.Azure.Search.PatternTokenizer\") {\n const patternTokenizer = tokenizer as PatternTokenizer;\n const flags = patternTokenizer.flags?.split(\"|\") as RegexFlags[] | undefined;\n result.push({\n ...tokenizer,\n flags,\n });\n } else {\n result.push(tokenizer);\n }\n }\n return result;\n}\n\nexport function convertSimilarityToGenerated(\n similarity?: SimilarityAlgorithm,\n): SimilarityUnion | undefined {\n if (!similarity) {\n return similarity;\n }\n\n return similarity as SimilarityUnion;\n}\n\nexport function convertSimilarityToPublic(\n similarity?: SimilarityUnion,\n): SimilarityAlgorithm | undefined {\n if (!similarity) {\n return similarity;\n }\n\n if (similarity.odatatype === \"#Microsoft.Azure.Search.ClassicSimilarity\") {\n return similarity as ClassicSimilarity;\n } else {\n return similarity as BM25Similarity;\n }\n}\n\nfunction convertEncryptionKeyToPublic(\n encryptionKey?: GeneratedSearchResourceEncryptionKey,\n): SearchResourceEncryptionKey | undefined {\n if (!encryptionKey) {\n return encryptionKey;\n }\n\n const result: SearchResourceEncryptionKey = {\n keyName: encryptionKey.keyName,\n keyVersion: encryptionKey.keyVersion,\n vaultUrl: encryptionKey.vaultUri,\n identity: convertSearchIndexerDataIdentityToPublic(encryptionKey.identity),\n };\n\n if (encryptionKey.accessCredentials) {\n result.applicationId = encryptionKey.accessCredentials.applicationId;\n result.applicationSecret = encryptionKey.accessCredentials.applicationSecret;\n }\n\n return result;\n}\n\nfunction convertEncryptionKeyToGenerated(\n encryptionKey?: SearchResourceEncryptionKey,\n): GeneratedSearchResourceEncryptionKey | undefined {\n if (!encryptionKey) {\n return encryptionKey;\n }\n\n const result: GeneratedSearchResourceEncryptionKey = {\n keyName: encryptionKey.keyName,\n keyVersion: encryptionKey.keyVersion,\n vaultUri: encryptionKey.vaultUrl,\n identity: encryptionKey.identity,\n };\n\n if (encryptionKey.applicationId) {\n result.accessCredentials = {\n applicationId: encryptionKey.applicationId,\n applicationSecret: encryptionKey.applicationSecret,\n };\n }\n\n return result;\n}\n\nexport function generatedIndexToPublicIndex(generatedIndex: GeneratedSearchIndex): SearchIndex {\n return {\n name: generatedIndex.name,\n defaultScoringProfile: generatedIndex.defaultScoringProfile,\n corsOptions: generatedIndex.corsOptions,\n suggesters: generatedIndex.suggesters,\n encryptionKey: convertEncryptionKeyToPublic(generatedIndex.encryptionKey),\n etag: generatedIndex.etag,\n analyzers: convertAnalyzersToPublic(generatedIndex.analyzers),\n tokenizers: convertTokenizersToPublic(generatedIndex.tokenizers),\n tokenFilters: generatedIndex.tokenFilters as TokenFilter[],\n charFilters: generatedIndex.charFilters as CharFilter[],\n normalizers: generatedIndex.normalizers as LexicalNormalizer[],\n scoringProfiles: generatedIndex.scoringProfiles as ScoringProfile[],\n fields: convertFieldsToPublic(generatedIndex.fields),\n similarity: convertSimilarityToPublic(generatedIndex.similarity),\n semanticSearch: generatedIndex.semanticSearch,\n vectorSearch: generatedVectorSearchToPublicVectorSearch(generatedIndex.vectorSearch),\n };\n}\n\nexport function generatedVectorSearchVectorizerToPublicVectorizer(): undefined;\nexport function generatedVectorSearchVectorizerToPublicVectorizer(\n generatedVectorizer: GeneratedVectorSearchVectorizer,\n): VectorSearchVectorizer;\nexport function generatedVectorSearchVectorizerToPublicVectorizer(\n generatedVectorizer?: GeneratedVectorSearchVectorizer,\n): VectorSearchVectorizer | undefined {\n if (!generatedVectorizer) {\n return generatedVectorizer;\n }\n\n const knownVectorizerDeserializers: Record<\n VectorSearchVectorizer[\"kind\"],\n () => VectorSearchVectorizer\n > = {\n azureOpenAI: () => {\n const { parameters } = generatedVectorizer as GeneratedAzureOpenAIVectorizer;\n const authIdentity = convertSearchIndexerDataIdentityToPublic(parameters?.authIdentity);\n const vectorizer: AzureOpenAIVectorizer = {\n ...(generatedVectorizer as GeneratedAzureOpenAIVectorizer),\n parameters: { ...parameters, authIdentity },\n };\n return vectorizer;\n },\n\n customWebApi: () => {\n const { parameters } = generatedVectorizer as GeneratedWebApiVectorizer;\n const authIdentity = convertSearchIndexerDataIdentityToPublic(parameters?.authIdentity);\n const vectorizer: WebApiVectorizer = {\n ...(generatedVectorizer as GeneratedWebApiVectorizer),\n parameters: { ...parameters, authIdentity },\n };\n return vectorizer;\n },\n\n aiServicesVision: () => {\n const generatedVisionVectorizer = generatedVectorizer as GeneratedAIServicesVisionVectorizer;\n const { aIServicesVisionParameters: generatedParameters } = generatedVisionVectorizer;\n const parameters = generatedParameters\n ? {\n ...generatedParameters,\n modelVersion: generatedParameters.modelVersion ?? undefined,\n resourceUri: generatedParameters.resourceUri,\n authIdentity: convertSearchIndexerDataIdentityToPublic(\n generatedParameters.authIdentity,\n ),\n }\n : undefined;\n const vectorizer: AIServicesVisionVectorizer = {\n ...generatedVisionVectorizer,\n parameters,\n };\n return vectorizer;\n },\n aml: () => {\n const generatedAMLVectorizer = generatedVectorizer as GeneratedAMLVectorizer;\n\n const vectorizer: AzureMachineLearningVectorizer = {\n ...generatedAMLVectorizer,\n amlParameters:\n generatedAzureMachineLearningVectorizerParametersToPublicAzureMachineLearningVectorizerParameters(\n generatedAMLVectorizer.aMLParameters,\n ),\n };\n\n return vectorizer;\n },\n };\n const defaultDeserializer = () => {\n logger.warning(`Unsupported vectorizer kind: ${(generatedVectorizer as any).kind}`);\n return generatedVectorizer as any;\n };\n\n return (knownVectorizerDeserializers[generatedVectorizer.kind] ?? defaultDeserializer)();\n}\n\nfunction generatedAzureMachineLearningVectorizerParametersToPublicAzureMachineLearningVectorizerParameters(\n aMLParameters?: GeneratedAMLParameters,\n): AzureMachineLearningVectorizerParameters | undefined {\n if (!aMLParameters) {\n return aMLParameters;\n }\n\n const { resourceId, authenticationKey, scoringUri } = aMLParameters;\n // Sensitive to case order\n switch (true) {\n case resourceId !== undefined && resourceId !== null: {\n return {\n ...aMLParameters,\n authKind: \"token\",\n } as TokenAuthAzureMachineLearningVectorizerParameters;\n }\n case authenticationKey !== undefined && authenticationKey !== null: {\n return {\n ...aMLParameters,\n authKind: \"key\",\n } as KeyAuthAzureMachineLearningVectorizerParameters;\n }\n case scoringUri !== undefined && scoringUri !== null: {\n return {\n ...aMLParameters,\n authKind: \"none\",\n } as NoAuthAzureMachineLearningVectorizerParameters;\n }\n }\n logger.warning(\"Unknown AML parameter kind\");\n return aMLParameters as any;\n}\n\nexport function generatedVectorSearchAlgorithmConfigurationToPublicVectorSearchAlgorithmConfiguration(): undefined;\nexport function generatedVectorSearchAlgorithmConfigurationToPublicVectorSearchAlgorithmConfiguration(\n generatedAlgorithmConfiguration: GeneratedVectorSearchAlgorithmConfiguration,\n): VectorSearchAlgorithmConfiguration;\nexport function generatedVectorSearchAlgorithmConfigurationToPublicVectorSearchAlgorithmConfiguration(\n generatedAlgorithmConfiguration?: GeneratedVectorSearchAlgorithmConfiguration,\n): VectorSearchAlgorithmConfiguration | undefined {\n if (!generatedAlgorithmConfiguration) {\n return generatedAlgorithmConfiguration;\n }\n\n if ([\"hnsw\", \"exhaustiveKnn\"].includes(generatedAlgorithmConfiguration.kind)) {\n const algorithmConfiguration = generatedAlgorithmConfiguration as\n | GeneratedHnswAlgorithmConfiguration\n | GeneratedExhaustiveKnnAlgorithmConfiguration;\n const metric = algorithmConfiguration.parameters?.metric as VectorSearchAlgorithmMetric;\n return {\n ...algorithmConfiguration,\n parameters: { ...algorithmConfiguration.parameters, metric },\n };\n }\n\n throw Error(\"Unsupported algorithm configuration\");\n}\n\nexport function generatedVectorSearchToPublicVectorSearch(\n vectorSearch?: GeneratedVectorSearch,\n): VectorSearch | undefined {\n if (!vectorSearch) {\n return vectorSearch;\n }\n\n return {\n ...vectorSearch,\n algorithms: vectorSearch.algorithms?.map(\n generatedVectorSearchAlgorithmConfigurationToPublicVectorSearchAlgorithmConfiguration,\n ),\n vectorizers: vectorSearch.vectorizers?.map(generatedVectorSearchVectorizerToPublicVectorizer),\n };\n}\n\nexport function generatedSearchResultToPublicSearchResult<\n TModel extends object,\n TFields extends SelectFields<TModel>,\n>(results: GeneratedSearchResult[]): SearchResult<TModel, TFields>[] {\n const returnValues: SearchResult<TModel, TFields>[] = results.map<SearchResult<TModel, TFields>>(\n (result) => {\n const {\n _score: score,\n _highlights: highlights,\n _rerankerScore: rerankerScore,\n _captions: captions,\n documentDebugInfo: documentDebugInfo,\n ...restProps\n } = result;\n const obj = {\n score,\n highlights,\n rerankerScore,\n captions,\n documentDebugInfo,\n document: restProps,\n };\n return obj as SearchResult<TModel, TFields>;\n },\n );\n return returnValues;\n}\n\nexport function generatedSuggestDocumentsResultToPublicSuggestDocumentsResult<\n TModel extends object,\n TFields extends SelectFields<TModel>,\n>(searchDocumentsResult: GeneratedSuggestDocumentsResult): SuggestDocumentsResult<TModel, TFields> {\n const results = searchDocumentsResult.results.map<SuggestResult<TModel, TFields>>((element) => {\n const { _text, ...restProps } = element;\n\n const obj = {\n text: _text,\n document: restProps,\n };\n\n return obj as SuggestResult<TModel, TFields>;\n });\n\n const result: SuggestDocumentsResult<TModel, TFields> = {\n results: results,\n coverage: searchDocumentsResult.coverage,\n };\n\n return result;\n}\n\nexport function publicIndexToGeneratedIndex(index: SearchIndex): GeneratedSearchIndex {\n const { encryptionKey, tokenFilters, analyzers, tokenizers, fields, similarity } = index;\n\n return {\n ...index,\n encryptionKey: convertEncryptionKeyToGenerated(encryptionKey),\n tokenFilters: convertTokenFiltersToGenerated(tokenFilters),\n analyzers: convertAnalyzersToGenerated(analyzers),\n tokenizers: convertTokenizersToGenerated(tokenizers),\n fields: convertFieldsToGenerated(fields) ?? [],\n similarity: convertSimilarityToGenerated(similarity),\n };\n}\n\nexport function generatedSkillsetToPublicSkillset(\n generatedSkillset: GeneratedSearchIndexerSkillset,\n): SearchIndexerSkillset {\n const {\n skills,\n cognitiveServicesAccount,\n knowledgeStore,\n encryptionKey,\n indexProjection,\n ...props\n } = generatedSkillset;\n return {\n ...props,\n skills: convertSkillsToPublic(skills),\n cognitiveServicesAccount: convertCognitiveServicesAccountToPublic(cognitiveServicesAccount),\n knowledgeStore: convertKnowledgeStoreToPublic(knowledgeStore),\n encryptionKey: convertEncryptionKeyToPublic(encryptionKey),\n indexProjection: indexProjection as SearchIndexerIndexProjection,\n };\n}\n\nexport function publicSkillsetToGeneratedSkillset(\n skillset: SearchIndexerSkillset,\n): GeneratedSearchIndexerSkillset {\n const { cognitiveServicesAccount, encryptionKey } = skillset;\n\n return {\n ...skillset,\n cognitiveServicesAccount: convertCognitiveServicesAccountToGenerated(cognitiveServicesAccount),\n encryptionKey: convertEncryptionKeyToGenerated(encryptionKey),\n };\n}\n\nexport function generatedSynonymMapToPublicSynonymMap(synonymMap: GeneratedSynonymMap): SynonymMap {\n const result: SynonymMap = {\n name: synonymMap.name,\n encryptionKey: convertEncryptionKeyToPublic(synonymMap.encryptionKey),\n etag: synonymMap.etag,\n synonyms: [],\n };\n\n if (synonymMap.synonyms) {\n result.synonyms = synonymMap.synonyms.split(\"\\n\");\n }\n\n return result;\n}\n\nexport function publicSynonymMapToGeneratedSynonymMap(synonymMap: SynonymMap): GeneratedSynonymMap {\n const result: GeneratedSynonymMap = {\n name: synonymMap.name,\n format: \"solr\",\n encryptionKey: convertEncryptionKeyToGenerated(synonymMap.encryptionKey),\n etag: synonymMap.etag,\n synonyms: synonymMap.synonyms.join(\"\\n\"),\n };\n\n result.encryptionKey = convertEncryptionKeyToGenerated(synonymMap.encryptionKey);\n\n return result;\n}\n\nexport function publicSearchIndexerToGeneratedSearchIndexer(\n indexer: SearchIndexer,\n): GeneratedSearchIndexer {\n return {\n ...indexer,\n encryptionKey: convertEncryptionKeyToGenerated(indexer.encryptionKey),\n };\n}\n\nexport function generatedSearchIndexerToPublicSearchIndexer(\n indexer: GeneratedSearchIndexer,\n): SearchIndexer {\n const {\n parsingMode,\n dataToExtract,\n imageAction,\n pdfTextRotationAlgorithm,\n executionEnvironment,\n } = indexer.parameters?.configuration ?? {};\n\n const configuration: IndexingParametersConfiguration | undefined = indexer.parameters\n ?.configuration && {\n ...indexer.parameters?.configuration,\n parsingMode: parsingMode as BlobIndexerParsingMode | undefined,\n dataToExtract: dataToExtract as BlobIndexerDataToExtract | undefined,\n imageAction: imageAction as BlobIndexerImageAction | undefined,\n pdfTextRotationAlgorithm: pdfTextRotationAlgorithm as\n | BlobIndexerPDFTextRotationAlgorithm\n | undefined,\n executionEnvironment: executionEnvironment as IndexerExecutionEnvironment | undefined,\n };\n const parameters: IndexingParameters = {\n ...indexer.parameters,\n configuration,\n };\n\n return {\n ...indexer,\n parameters,\n encryptionKey: convertEncryptionKeyToPublic(indexer.encryptionKey),\n cache: convertSearchIndexerCacheToPublic(indexer.cache),\n };\n}\n\nexport function publicDataSourceToGeneratedDataSource(\n dataSource: SearchIndexerDataSourceConnection,\n): GeneratedSearchIndexerDataSourceConnection {\n return {\n name: dataSource.name,\n description: dataSource.description,\n type: dataSource.type,\n credentials: {\n connectionString: dataSource.connectionString,\n },\n container: dataSource.container,\n identity: dataSource.identity,\n etag: dataSource.etag,\n dataChangeDetectionPolicy: dataSource.dataChangeDetectionPolicy,\n dataDeletionDetectionPolicy: dataSource.dataDeletionDetectionPolicy,\n encryptionKey: convertEncryptionKeyToGenerated(dataSource.encryptionKey),\n };\n}\n\nexport function generatedDataSourceToPublicDataSource(\n dataSource: GeneratedSearchIndexerDataSourceConnection,\n): SearchIndexerDataSourceConnection {\n return {\n name: dataSource.name,\n description: dataSource.name,\n type: dataSource.type as SearchIndexerDataSourceType,\n connectionString: dataSource.credentials.connectionString,\n container: dataSource.container,\n identity: convertSearchIndexerDataIdentityToPublic(dataSource.identity),\n etag: dataSource.etag,\n dataChangeDetectionPolicy: convertDataChangeDetectionPolicyToPublic(\n dataSource.dataChangeDetectionPolicy,\n ),\n dataDeletionDetectionPolicy: convertDataDeletionDetectionPolicyToPublic(\n dataSource.dataDeletionDetectionPolicy,\n ),\n encryptionKey: convertEncryptionKeyToPublic(dataSource.encryptionKey),\n };\n}\n\nexport function convertSearchIndexerDataIdentityToPublic(\n searchIndexerDataIdentity?: SearchIndexerDataIdentityUnion,\n): SearchIndexerDataIdentity | undefined {\n if (!searchIndexerDataIdentity) {\n return searchIndexerDataIdentity;\n }\n\n if (searchIndexerDataIdentity.odatatype === \"#Microsoft.Azure.Search.DataNoneIdentity\") {\n return searchIndexerDataIdentity as SearchIndexerDataNoneIdentity;\n } else {\n return searchIndexerDataIdentity as SearchIndexerDataUserAssignedIdentity;\n }\n}\n\nexport function convertDataChangeDetectionPolicyToPublic(\n dataChangeDetectionPolicy?: DataChangeDetectionPolicyUnion,\n): DataChangeDetectionPolicy | undefined {\n if (!dataChangeDetectionPolicy) {\n return dataChangeDetectionPolicy;\n }\n\n if (\n dataChangeDetectionPolicy.odatatype ===\n \"#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy\"\n ) {\n return dataChangeDetectionPolicy as HighWaterMarkChangeDetectionPolicy;\n } else {\n return dataChangeDetectionPolicy as SqlIntegratedChangeTrackingPolicy;\n }\n}\n\nexport function convertDataDeletionDetectionPolicyToPublic(\n dataDeletionDetectionPolicy?: DataDeletionDetectionPolicyUnion,\n): DataDeletionDetectionPolicy | undefined {\n if (!dataDeletionDetectionPolicy) {\n return dataDeletionDetectionPolicy;\n }\n\n return dataDeletionDetectionPolicy as SoftDeleteColumnDeletionDetectionPolicy;\n}\n\nexport function getRandomIntegerInclusive(min: number, max: number): number {\n // Make sure inputs are integers.\n min = Math.ceil(min);\n max = Math.floor(max);\n // Pick a random offset from zero to the size of the range.\n // Since Math.random() can never return 1, we have to make the range one larger\n // in order to be inclusive of the maximum value after we take the floor.\n const offset = Math.floor(Math.random() * (max - min + 1));\n return offset + min;\n}\n\nfunction convertKnowledgeStoreToPublic(\n knowledgeStore: BaseSearchIndexerKnowledgeStore | undefined,\n): SearchIndexerKnowledgeStore | undefined {\n if (!knowledgeStore) {\n return knowledgeStore;\n }\n\n return {\n ...knowledgeStore,\n identity: convertSearchIndexerDataIdentityToPublic(knowledgeStore.identity),\n };\n}\n\nexport function convertSearchIndexerCacheToPublic(\n cache?: GeneratedSearchIndexerCache,\n): SearchIndexerCache | undefined {\n if (!cache) {\n return cache;\n }\n\n return {\n ...cache,\n identity: convertSearchIndexerDataIdentityToPublic(cache.identity),\n };\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createTracingClient } from \"@azure/core-tracing\";\n\n/**\n * Creates a tracing client using the global tracer.\n * @internal\n */\nconst tracingClient = createTracingClient({\n namespace: \"Microsoft.Search\",\n packageName: \"Azure.Search\",\n});\n\nexport const createSpan = tracingClient.startSpan;\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/// <reference lib=\"esnext.asynciterable\" />\n\nimport { isTokenCredential, KeyCredential, TokenCredential } from \"@azure/core-auth\";\nimport { InternalClientPipelineOptions } from \"@azure/core-client\";\nimport { ExtendedCommonClientOptions } from \"@azure/core-http-compat\";\nimport { bearerTokenAuthenticationPolicy, Pipeline } from \"@azure/core-rest-pipeline\";\nimport { decode, encode } from \"./base64\";\nimport {\n AutocompleteRequest,\n AutocompleteResult,\n IndexDocumentsResult,\n QueryAnswerType as BaseAnswers,\n QueryCaptionType as BaseCaptions,\n SearchRequest as GeneratedSearchRequest,\n SuggestRequest,\n VectorQueryUnion as GeneratedVectorQuery,\n} from \"./generated/data/models\";\nimport { SearchClient as GeneratedClient } from \"./generated/data/searchClient\";\nimport { IndexDocumentsBatch } from \"./indexDocumentsBatch\";\nimport {\n AutocompleteOptions,\n CountDocumentsOptions,\n DeleteDocumentsOptions,\n GetDocumentOptions,\n IndexDocumentsOptions,\n ListSearchResultsPageSettings,\n MergeDocumentsOptions,\n MergeOrUploadDocumentsOptions,\n NarrowedModel,\n QueryAnswer,\n QueryCaption,\n SearchDocumentsPageResult,\n SearchDocumentsResult,\n SearchFieldArray,\n SearchIterator,\n SearchOptions,\n SearchResult,\n SelectArray,\n SelectFields,\n SemanticErrorReason,\n SemanticSearchResultsType,\n SuggestDocumentsResult,\n SuggestOptions,\n UploadDocumentsOptions,\n VectorQuery,\n} from \"./indexModels\";\nimport { logger } from \"./logger\";\nimport { createOdataMetadataPolicy } from \"./odataMetadataPolicy\";\nimport { createSearchApiKeyCredentialPolicy } from \"./searchApiKeyCredentialPolicy\";\nimport { KnownSearchAudience } from \"./searchAudience\";\nimport { IndexDocumentsClient } from \"./searchIndexingBufferedSender\";\nimport { deserialize, serialize } from \"./serialization\";\nimport * as utils from \"./serviceUtils\";\nimport { createSpan } from \"./tracing\";\n\n/**\n * Client options used to configure Cognitive Search API requests.\n */\nexport interface SearchClientOptions extends ExtendedCommonClientOptions {\n /**\n * The API version to use when communicating with the service.\n * @deprecated use {@link serviceVersion} instead\n */\n apiVersion?: string;\n\n /**\n * The service version to use when communicating with the service.\n */\n serviceVersion?: string;\n\n /**\n * The Audience to use for authentication with Azure Active Directory (AAD). The\n * audience is not considered when using a shared key.\n * {@link KnownSearchAudience} can be used interchangeably with audience\n */\n audience?: string;\n}\n\n/**\n * Class used to perform operations against a search index,\n * including querying documents in the index as well as\n * adding, updating, and removing them.\n */\nexport class SearchClient<TModel extends object> implements IndexDocumentsClient<TModel> {\n /// Maintenance note: when updating supported API versions,\n /// the ContinuationToken logic will need to be updated below.\n\n /**\n * The service version to use when communicating with the service.\n */\n public readonly serviceVersion: string = utils.defaultServiceVersion;\n\n /**\n * The API version to use when communicating with the service.\n * @deprecated use {@Link serviceVersion} instead\n */\n public readonly apiVersion: string = utils.defaultServiceVersion;\n\n /**\n * The endpoint of the search service\n */\n public readonly endpoint: string;\n\n /**\n * The name of the index\n */\n public readonly indexName: string;\n\n /**\n * @hidden\n * A reference to the auto-generated SearchClient\n */\n private readonly client: GeneratedClient;\n\n /**\n * A reference to the internal HTTP pipeline for use with raw requests\n */\n public readonly pipeline: Pipeline;\n\n /**\n * Creates an instance of SearchClient.\n *\n * Example usage:\n * ```ts\n * const { SearchClient, AzureKeyCredential } = require(\"@azure/search-documents\");\n *\n * const client = new SearchClient(\n * \"<endpoint>\",\n * \"<indexName>\",\n * new AzureKeyCredential(\"<Admin Key>\")\n * );\n * ```\n *\n * Optionally, the type of the model can be used to enable strong typing and type hints:\n * ```ts\n * type TModel = {\n * keyName: string;\n * field1?: string | null;\n * field2?: { anotherField?: string | null } | null;\n * };\n *\n * const client = new SearchClient<TModel>(\n * ...\n * );\n * ```\n *\n * @param endpoint - The endpoint of the search service\n * @param indexName - The name of the index\n * @param credential - Used to authenticate requests to the service.\n * @param options - Used to configure the Search client.\n *\n * @typeParam TModel - An optional type that represents the documents stored in\n * the search index. For the best typing experience, all non-key fields should\n * be marked optional and nullable, and the key property should have the\n * non-nullable type `string`.\n */\n constructor(\n endpoint: string,\n indexName: string,\n credential: KeyCredential | TokenCredential,\n options: SearchClientOptions = {},\n ) {\n this.endpoint = endpoint;\n this.indexName = indexName;\n\n const internalClientPipelineOptions: InternalClientPipelineOptions = {\n ...options,\n ...{\n loggingOptions: {\n logger: logger.info,\n additionalAllowedHeaderNames: [\n \"elapsed-time\",\n \"Location\",\n \"OData-MaxVersion\",\n \"OData-Version\",\n \"Prefer\",\n \"throttle-reason\",\n ],\n },\n },\n };\n\n this.serviceVersion =\n options.serviceVersion ?? options.apiVersion ?? utils.defaultServiceVersion;\n this.apiVersion = this.serviceVersion;\n\n this.client = new GeneratedClient(\n this.endpoint,\n this.indexName,\n this.serviceVersion,\n internalClientPipelineOptions,\n );\n this.pipeline = this.client.pipeline;\n\n if (isTokenCredential(credential)) {\n const scope: string = options.audience\n ? `${options.audience}/.default`\n : `${KnownSearchAudience.AzurePublicCloud}/.default`;\n\n this.client.pipeline.addPolicy(\n bearerTokenAuthenticationPolicy({ credential, scopes: scope }),\n );\n } else {\n this.client.pipeline.addPolicy(createSearchApiKeyCredentialPolicy(credential));\n }\n\n this.client.pipeline.addPolicy(createOdataMetadataPolicy(\"none\"));\n }\n\n /**\n * Retrieves the number of documents in the index.\n * @param options - Options to the count operation.\n */\n public async getDocumentsCount(options: CountDocumentsOptions = {}): Promise<number> {\n const { span, updatedOptions } = createSpan(\"SearchClient-getDocumentsCount\", options);\n try {\n let documentsCount: number = 0;\n await this.client.documents.count({\n ...updatedOptions,\n onResponse: (rawResponse, flatResponse) => {\n documentsCount = Number(rawResponse.bodyAsText);\n if (updatedOptions.onResponse) {\n updatedOptions.onResponse(rawResponse, flatResponse);\n }\n },\n });\n\n return documentsCount;\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Based on a partial searchText from the user, return a list\n * of potential completion strings based on a specified suggester.\n * @param searchText - The search text on which to base autocomplete results.\n * @param suggesterName - The name of the suggester as specified in the suggesters collection that's part of the index definition.\n * @param options - Options to the autocomplete operation.\n * @example\n * ```ts\n * import {\n * AzureKeyCredential,\n * SearchClient,\n * SearchFieldArray,\n * } from \"@azure/search-documents\";\n *\n * type TModel = {\n * key: string;\n * azure?: { sdk: string | null } | null;\n * };\n *\n * const client = new SearchClient<TModel>(\n * \"endpoint.azure\",\n * \"indexName\",\n * new AzureKeyCredential(\"key\")\n * );\n *\n * const searchFields: SearchFieldArray<TModel> = [\"azure/sdk\"];\n *\n * const autocompleteResult = await client.autocomplete(\n * \"searchText\",\n * \"suggesterName\",\n * { searchFields }\n * );\n * ```\n */\n public async autocomplete(\n searchText: string,\n suggesterName: string,\n options: AutocompleteOptions<TModel> = {},\n ): Promise<AutocompleteResult> {\n const { searchFields, ...nonFieldOptions } = options;\n const fullOptions: AutocompleteRequest = {\n searchText: searchText,\n suggesterName: suggesterName,\n searchFields: this.convertSearchFields(searchFields),\n ...nonFieldOptions,\n };\n\n if (!fullOptions.searchText) {\n throw new RangeError(\"searchText must be provided.\");\n }\n\n if (!fullOptions.suggesterName) {\n throw new RangeError(\"suggesterName must be provided.\");\n }\n\n const { span, updatedOptions } = createSpan(\"SearchClient-autocomplete\", options);\n\n try {\n const result = await this.client.documents.autocompletePost(fullOptions, updatedOptions);\n return result;\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n private async searchDocuments<TFields extends SelectFields<TModel>>(\n searchText?: string,\n options: SearchOptions<TModel, TFields> = {},\n nextPageParameters: GeneratedSearchRequest = {},\n ): Promise<SearchDocumentsPageResult<TModel, TFields>> {\n const {\n includeTotalCount,\n orderBy,\n searchFields,\n select,\n vectorSearchOptions,\n semanticSearchOptions,\n hybridSearch,\n ...restOptions\n } = options as typeof options & { queryType: \"semantic\" };\n\n const {\n semanticFields,\n configurationName,\n errorMode,\n answers,\n captions,\n debugMode,\n ...restSemanticOptions\n } = semanticSearchOptions ?? {};\n const { queries, filterMode, ...restVectorOptions } = vectorSearchOptions ?? {};\n\n const fullOptions: GeneratedSearchRequest = {\n ...restSemanticOptions,\n ...restVectorOptions,\n ...restOptions,\n ...nextPageParameters,\n searchFields: this.convertSearchFields(searchFields),\n semanticFields: this.convertSemanticFields(semanticFields),\n select: this.convertSelect<TFields>(select) || \"*\",\n orderBy: this.convertOrderBy(orderBy),\n includeTotalResultCount: includeTotalCount,\n vectorQueries: queries?.map(this.convertVectorQuery.bind(this)),\n answers: this.convertQueryAnswers(answers),\n captions: this.convertQueryCaptions(captions),\n semanticErrorHandling: errorMode,\n semanticConfigurationName: configurationName,\n debug: debugMode,\n vectorFilterMode: filterMode,\n hybridSearch: hybridSearch,\n };\n\n const { span, updatedOptions } = createSpan(\"SearchClient-searchDocuments\", options);\n\n try {\n const result = await this.client.documents.searchPost(\n {\n ...fullOptions,\n searchText: searchText,\n },\n updatedOptions,\n );\n\n const {\n results,\n nextLink,\n nextPageParameters: resultNextPageParameters,\n semanticPartialResponseReason: semanticErrorReason,\n semanticPartialResponseType: semanticSearchResultsType,\n ...restResult\n } = result as typeof result & {\n semanticPartialResponseReason: SemanticErrorReason | undefined;\n semanticPartialResponseType: SemanticSearchResultsType | undefined;\n };\n\n const modifiedResults = utils.generatedSearchResultToPublicSearchResult<TModel, TFields>(\n results,\n );\n\n const converted: SearchDocumentsPageResult<TModel, TFields> = {\n ...restResult,\n results: modifiedResults,\n semanticErrorReason,\n semanticSearchResultsType,\n continuationToken: this.encodeContinuationToken(nextLink, resultNextPageParameters),\n };\n\n return deserialize<SearchDocumentsPageResult<TModel, TFields>>(converted);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n private async *listSearchResultsPage<TFields extends SelectFields<TModel>>(\n searchText?: string,\n options: SearchOptions<TModel, TFields> = {},\n settings: ListSearchResultsPageSettings = {},\n ): AsyncIterableIterator<SearchDocumentsPageResult<TModel, TFields>> {\n let decodedContinuation = this.decodeContinuationToken(settings.continuationToken);\n let result = await this.searchDocuments(\n searchText,\n options,\n decodedContinuation?.nextPageParameters,\n );\n\n yield result;\n\n // Technically, we should also leverage nextLink, but the generated code\n // doesn't support this yet.\n while (result.continuationToken) {\n decodedContinuation = this.decodeContinuationToken(result.continuationToken);\n result = await this.searchDocuments(\n searchText,\n options,\n decodedContinuation?.nextPageParameters,\n );\n yield result;\n }\n }\n\n private async *listSearchResultsAll<TFields extends SelectFields<TModel>>(\n firstPage: SearchDocumentsPageResult<TModel, TFields>,\n searchText?: string,\n options: SearchOptions<TModel, TFields> = {},\n ): AsyncIterableIterator<SearchResult<TModel, TFields>> {\n yield* firstPage.results;\n if (firstPage.continuationToken) {\n for await (const page of this.listSearchResultsPage(searchText, options, {\n continuationToken: firstPage.continuationToken,\n })) {\n yield* page.results;\n }\n }\n }\n\n private listSearchResults<TFields extends SelectFields<TModel>>(\n firstPage: SearchDocumentsPageResult<TModel, TFields>,\n searchText?: string,\n options: SearchOptions<TModel, TFields> = {},\n ): SearchIterator<TModel, TFields> {\n const iter = this.listSearchResultsAll(firstPage, searchText, options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings: ListSearchResultsPageSettings = {}) => {\n return this.listSearchResultsPage(searchText, options, settings);\n },\n };\n }\n\n /**\n * Performs a search on the current index given\n * the specified arguments.\n * @param searchText - Text to search\n * @param options - Options for the search operation.\n * @example\n * ```ts\n * import {\n * AzureKeyCredential,\n * SearchClient,\n * SearchFieldArray,\n * } from \"@azure/search-documents\";\n *\n * type TModel = {\n * key: string;\n * azure?: { sdk: string | null } | null;\n * };\n *\n * const client = new SearchClient<TModel>(\n * \"endpoint.azure\",\n * \"indexName\",\n * new AzureKeyCredential(\"key\")\n * );\n *\n * const select = [\"azure/sdk\"] as const;\n * const searchFields: SearchFieldArray<TModel> = [\"azure/sdk\"];\n *\n * const searchResult = await client.search(\"searchText\", {\n * select,\n * searchFields,\n * });\n * ```\n */\n public async search<TFields extends SelectFields<TModel>>(\n searchText?: string,\n options?: SearchOptions<TModel, TFields>,\n ): Promise<SearchDocumentsResult<TModel, TFields>> {\n const { span, updatedOptions } = createSpan(\"SearchClient-search\", options);\n\n try {\n const pageResult = await this.searchDocuments<TFields>(searchText, updatedOptions);\n\n return {\n ...pageResult,\n results: this.listSearchResults(pageResult, searchText, updatedOptions),\n };\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Returns a short list of suggestions based on the searchText\n * and specified suggester.\n * @param searchText - The search text to use to suggest documents. Must be at least 1 character, and no more than 100 characters.\n * @param suggesterName - The name of the suggester as specified in the suggesters collection that's part of the index definition.\n * @param options - Options for the suggest operation\n * @example\n * ```ts\n * import {\n * AzureKeyCredential,\n * SearchClient,\n * SearchFieldArray,\n * } from \"@azure/search-documents\";\n *\n * type TModel = {\n * key: string;\n * azure?: { sdk: string | null } | null;\n * };\n *\n * const client = new SearchClient<TModel>(\n * \"endpoint.azure\",\n * \"indexName\",\n * new AzureKeyCredential(\"key\")\n * );\n *\n * const select = [\"azure/sdk\"] as const;\n * const searchFields: SearchFieldArray<TModel> = [\"azure/sdk\"];\n *\n * const suggestResult = await client.suggest(\"searchText\", \"suggesterName\", {\n * select,\n * searchFields,\n * });\n * ```\n */\n public async suggest<TFields extends SelectFields<TModel> = never>(\n searchText: string,\n suggesterName: string,\n options: SuggestOptions<TModel, TFields> = {},\n ): Promise<SuggestDocumentsResult<TModel, TFields>> {\n const { select, searchFields, orderBy, ...nonFieldOptions } = options;\n const fullOptions: SuggestRequest = {\n searchText: searchText,\n suggesterName: suggesterName,\n searchFields: this.convertSearchFields(searchFields),\n select: this.convertSelect<TFields>(select),\n orderBy: this.convertOrderBy(orderBy),\n ...nonFieldOptions,\n };\n\n if (!fullOptions.searchText) {\n throw new RangeError(\"searchText must be provided.\");\n }\n\n if (!fullOptions.suggesterName) {\n throw new RangeError(\"suggesterName must be provided.\");\n }\n\n const { span, updatedOptions } = createSpan(\"SearchClient-suggest\", options);\n\n try {\n const result = await this.client.documents.suggestPost(fullOptions, updatedOptions);\n\n const modifiedResult = utils.generatedSuggestDocumentsResultToPublicSuggestDocumentsResult<\n TModel,\n TFields\n >(result);\n\n return deserialize<SuggestDocumentsResult<TModel, TFields>>(modifiedResult);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieve a particular document from the index by key.\n * @param key - The primary key value of the document\n * @param options - Additional options\n */\n public async getDocument<TFields extends SelectFields<TModel>>(\n key: string,\n options: GetDocumentOptions<TModel, TFields> = {},\n ): Promise<NarrowedModel<TModel, TFields>> {\n const { span, updatedOptions } = createSpan(\"SearchClient-getDocument\", options);\n try {\n const result = await this.client.documents.get(key, {\n ...updatedOptions,\n selectedFields: updatedOptions.selectedFields as string[] | undefined,\n });\n return deserialize<NarrowedModel<TModel, TFields>>(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Perform a set of index modifications (upload, merge, mergeOrUpload, delete)\n * for the given set of documents.\n * This operation may partially succeed and not all document operations will\n * be reflected in the index. If you would like to treat this as an exception,\n * set the `throwOnAnyFailure` option to true.\n * For more details about how merging works, see: https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents\n * @param batch - An array of actions to perform on the index.\n * @param options - Additional options.\n */\n public async indexDocuments(\n // eslint-disable-next-line @azure/azure-sdk/ts-use-interface-parameters\n batch: IndexDocumentsBatch<TModel>,\n options: IndexDocumentsOptions = {},\n ): Promise<IndexDocumentsResult> {\n const { span, updatedOptions } = createSpan(\"SearchClient-indexDocuments\", options);\n try {\n let status: number = 0;\n const result = await this.client.documents.index(\n { actions: serialize(batch.actions) },\n {\n ...updatedOptions,\n onResponse: (rawResponse, flatResponse) => {\n status = rawResponse.status;\n if (updatedOptions.onResponse) {\n updatedOptions.onResponse(rawResponse, flatResponse);\n }\n },\n },\n );\n if (options.throwOnAnyFailure && status === 207) {\n throw result;\n }\n return result;\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Upload an array of documents to the index.\n * @param documents - The documents to upload.\n * @param options - Additional options.\n */\n public async uploadDocuments(\n documents: TModel[],\n options: UploadDocumentsOptions = {},\n ): Promise<IndexDocumentsResult> {\n const { span, updatedOptions } = createSpan(\"SearchClient-uploadDocuments\", options);\n\n const batch = new IndexDocumentsBatch<TModel>();\n batch.upload(documents);\n\n try {\n return await this.indexDocuments(batch, updatedOptions);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Update a set of documents in the index.\n * For more details about how merging works, see https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents\n * @param documents - The updated documents.\n * @param options - Additional options.\n */\n public async mergeDocuments(\n documents: TModel[],\n options: MergeDocumentsOptions = {},\n ): Promise<IndexDocumentsResult> {\n const { span, updatedOptions } = createSpan(\"SearchClient-mergeDocuments\", options);\n\n const batch = new IndexDocumentsBatch<TModel>();\n batch.merge(documents);\n\n try {\n return await this.indexDocuments(batch, updatedOptions);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Update a set of documents in the index or upload them if they don't exist.\n * For more details about how merging works, see https://docs.microsoft.com/en-us/rest/api/searchservice/AddUpdate-or-Delete-Documents\n * @param documents - The updated documents.\n * @param options - Additional options.\n */\n public async mergeOrUploadDocuments(\n documents: TModel[],\n options: MergeOrUploadDocumentsOptions = {},\n ): Promise<IndexDocumentsResult> {\n const { span, updatedOptions } = createSpan(\"SearchClient-mergeDocuments\", options);\n\n const batch = new IndexDocumentsBatch<TModel>();\n batch.mergeOrUpload(documents);\n\n try {\n return await this.indexDocuments(batch, updatedOptions);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Delete a set of documents.\n * @param documents - Documents to be deleted.\n * @param options - Additional options.\n */\n public async deleteDocuments(\n documents: TModel[],\n options?: DeleteDocumentsOptions,\n ): Promise<IndexDocumentsResult>;\n\n /**\n * Delete a set of documents.\n * @param keyName - The name of their primary key in the index.\n * @param keyValues - The primary key values of documents to delete.\n * @param options - Additional options.\n */\n public async deleteDocuments(\n keyName: keyof TModel,\n keyValues: string[],\n options?: DeleteDocumentsOptions,\n ): Promise<IndexDocumentsResult>;\n\n public async deleteDocuments(\n keyNameOrDocuments: keyof TModel | TModel[],\n keyValuesOrOptions?: string[] | DeleteDocumentsOptions,\n options: DeleteDocumentsOptions = {},\n ): Promise<IndexDocumentsResult> {\n const { span, updatedOptions } = createSpan(\"SearchClient-deleteDocuments\", options);\n\n const batch = new IndexDocumentsBatch<TModel>();\n if (typeof keyNameOrDocuments === \"string\") {\n batch.delete(keyNameOrDocuments, keyValuesOrOptions as string[]);\n } else {\n batch.delete(keyNameOrDocuments as TModel[]);\n }\n\n try {\n return await this.indexDocuments(batch, updatedOptions);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n private encodeContinuationToken(\n nextLink: string | undefined,\n nextPageParameters: GeneratedSearchRequest | undefined,\n ): string | undefined {\n if (!nextLink || !nextPageParameters) {\n return undefined;\n }\n const payload = JSON.stringify({\n apiVersion: this.apiVersion,\n nextLink,\n nextPageParameters,\n });\n return encode(payload);\n }\n\n private decodeContinuationToken(\n token?: string,\n ): { nextPageParameters: GeneratedSearchRequest; nextLink: string } | undefined {\n if (!token) {\n return undefined;\n }\n\n const decodedToken = decode(token);\n\n try {\n const result: {\n apiVersion: string;\n nextLink: string;\n nextPageParameters: GeneratedSearchRequest;\n } = JSON.parse(decodedToken);\n\n if (result.apiVersion !== this.apiVersion) {\n throw new RangeError(`Continuation token uses unsupported apiVersion \"${this.apiVersion}\"`);\n }\n\n return {\n nextLink: result.nextLink,\n nextPageParameters: result.nextPageParameters,\n };\n } catch (e: any) {\n throw new Error(`Corrupted or invalid continuation token: ${decodedToken}`);\n }\n }\n\n private convertSelect<TFields extends SelectFields<TModel>>(\n select?: SelectArray<TFields>,\n ): string | undefined {\n if (select) {\n return select.join(\",\");\n }\n return select;\n }\n\n private convertVectorQueryFields(fields?: SearchFieldArray<TModel>): string | undefined {\n if (fields) {\n return fields.join(\",\");\n }\n return fields;\n }\n\n private convertSearchFields(searchFields?: SearchFieldArray<TModel>): string | undefined {\n if (searchFields) {\n return searchFields.join(\",\");\n }\n return searchFields;\n }\n\n private convertSemanticFields(semanticFields?: string[]): string | undefined {\n if (semanticFields) {\n return semanticFields.join(\",\");\n }\n return semanticFields;\n }\n\n private convertOrderBy(orderBy?: string[]): string | undefined {\n if (orderBy) {\n return orderBy.join(\",\");\n }\n return orderBy;\n }\n\n private convertQueryAnswers(answers?: QueryAnswer): BaseAnswers | undefined {\n if (!answers) {\n return answers;\n }\n\n const config = [];\n const { answerType: output, count, threshold } = answers;\n\n if (count) {\n config.push(`count-${count}`);\n }\n\n if (threshold) {\n config.push(`threshold-${threshold}`);\n }\n\n if (config.length) {\n return output + `|${config.join(\",\")}`;\n }\n\n return output;\n }\n\n private convertQueryCaptions(captions?: QueryCaption): BaseCaptions | undefined {\n if (!captions) {\n return captions;\n }\n\n const config = [];\n const { captionType: output, highlight } = captions;\n\n if (highlight !== undefined) {\n config.push(`highlight-${highlight}`);\n }\n\n if (config.length) {\n return output + `|${config.join(\",\")}`;\n }\n\n return output;\n }\n\n private convertVectorQuery<T extends VectorQuery<TModel>>(vectorQuery: T): GeneratedVectorQuery {\n return { ...vectorQuery, fields: this.convertVectorQueryFields(vectorQuery?.fields) };\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 SearchIndexerDataSource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerDataSource\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n description: {\n serializedName: \"description\",\n type: {\n name: \"String\",\n },\n },\n type: {\n serializedName: \"type\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n credentials: {\n serializedName: \"credentials\",\n type: {\n name: \"Composite\",\n className: \"DataSourceCredentials\",\n },\n },\n container: {\n serializedName: \"container\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerDataContainer\",\n },\n },\n identity: {\n serializedName: \"identity\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerDataIdentity\",\n },\n },\n dataChangeDetectionPolicy: {\n serializedName: \"dataChangeDetectionPolicy\",\n type: {\n name: \"Composite\",\n className: \"DataChangeDetectionPolicy\",\n },\n },\n dataDeletionDetectionPolicy: {\n serializedName: \"dataDeletionDetectionPolicy\",\n type: {\n name: \"Composite\",\n className: \"DataDeletionDetectionPolicy\",\n },\n },\n etag: {\n serializedName: \"@odata\\\\.etag\",\n type: {\n name: \"String\",\n },\n },\n encryptionKey: {\n serializedName: \"encryptionKey\",\n type: {\n name: \"Composite\",\n className: \"SearchResourceEncryptionKey\",\n },\n },\n },\n },\n};\n\nexport const DataSourceCredentials: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DataSourceCredentials\",\n modelProperties: {\n connectionString: {\n serializedName: \"connectionString\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SearchIndexerDataContainer: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerDataContainer\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n query: {\n serializedName: \"query\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SearchIndexerDataIdentity: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerDataIdentity\",\n uberParent: \"SearchIndexerDataIdentity\",\n polymorphicDiscriminator: {\n serializedName: \"@odata\\\\.type\",\n clientName: \"odatatype\",\n },\n modelProperties: {\n odatatype: {\n serializedName: \"@odata\\\\.type\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const DataChangeDetectionPolicy: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DataChangeDetectionPolicy\",\n uberParent: \"DataChangeDetectionPolicy\",\n polymorphicDiscriminator: {\n serializedName: \"@odata\\\\.type\",\n clientName: \"odatatype\",\n },\n modelProperties: {\n odatatype: {\n serializedName: \"@odata\\\\.type\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const DataDeletionDetectionPolicy: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DataDeletionDetectionPolicy\",\n uberParent: \"DataDeletionDetectionPolicy\",\n polymorphicDiscriminator: {\n serializedName: \"@odata\\\\.type\",\n clientName: \"odatatype\",\n },\n modelProperties: {\n odatatype: {\n serializedName: \"@odata\\\\.type\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SearchResourceEncryptionKey: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchResourceEncryptionKey\",\n modelProperties: {\n keyName: {\n serializedName: \"keyVaultKeyName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n keyVersion: {\n serializedName: \"keyVaultKeyVersion\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n vaultUri: {\n serializedName: \"keyVaultUri\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n accessCredentials: {\n serializedName: \"accessCredentials\",\n type: {\n name: \"Composite\",\n className: \"AzureActiveDirectoryApplicationCredentials\",\n },\n },\n identity: {\n serializedName: \"identity\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerDataIdentity\",\n },\n },\n },\n },\n};\n\nexport const AzureActiveDirectoryApplicationCredentials: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"AzureActiveDirectoryApplicationCredentials\",\n modelProperties: {\n applicationId: {\n serializedName: \"applicationId\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n applicationSecret: {\n serializedName: \"applicationSecret\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n };\n\nexport const ErrorResponse: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\",\n modelProperties: {\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorDetail\",\n },\n },\n },\n },\n};\n\nexport const ErrorDetail: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorDetail\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n message: {\n serializedName: \"message\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n 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: \"ErrorDetail\",\n },\n },\n },\n },\n additionalInfo: {\n serializedName: \"additionalInfo\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ErrorAdditionalInfo\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const ErrorAdditionalInfo: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorAdditionalInfo\",\n modelProperties: {\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n info: {\n serializedName: \"info\",\n readOnly: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } },\n },\n },\n },\n },\n};\n\nexport const ListDataSourcesResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ListDataSourcesResult\",\n modelProperties: {\n dataSources: {\n serializedName: \"value\",\n required: true,\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerDataSource\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const DocumentKeysOrIds: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DocumentKeysOrIds\",\n modelProperties: {\n documentKeys: {\n serializedName: \"documentKeys\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n datasourceDocumentIds: {\n serializedName: \"datasourceDocumentIds\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const SearchIndexer: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchIndexer\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n description: {\n serializedName: \"description\",\n type: {\n name: \"String\",\n },\n },\n dataSourceName: {\n serializedName: \"dataSourceName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n skillsetName: {\n serializedName: \"skillsetName\",\n type: {\n name: \"String\",\n },\n },\n targetIndexName: {\n serializedName: \"targetIndexName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n schedule: {\n serializedName: \"schedule\",\n type: {\n name: \"Composite\",\n className: \"IndexingSchedule\",\n },\n },\n parameters: {\n serializedName: \"parameters\",\n type: {\n name: \"Composite\",\n className: \"IndexingParameters\",\n },\n },\n fieldMappings: {\n serializedName: \"fieldMappings\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"FieldMapping\",\n },\n },\n },\n },\n outputFieldMappings: {\n serializedName: \"outputFieldMappings\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"FieldMapping\",\n },\n },\n },\n },\n isDisabled: {\n defaultValue: false,\n serializedName: \"disabled\",\n nullable: true,\n type: {\n name: \"Boolean\",\n },\n },\n etag: {\n serializedName: \"@odata\\\\.etag\",\n type: {\n name: \"String\",\n },\n },\n encryptionKey: {\n serializedName: \"encryptionKey\",\n type: {\n name: \"Composite\",\n className: \"SearchResourceEncryptionKey\",\n },\n },\n cache: {\n serializedName: \"cache\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerCache\",\n },\n },\n },\n },\n};\n\nexport const IndexingSchedule: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"IndexingSchedule\",\n modelProperties: {\n interval: {\n serializedName: \"interval\",\n required: true,\n type: {\n name: \"TimeSpan\",\n },\n },\n startTime: {\n serializedName: \"startTime\",\n type: {\n name: \"DateTime\",\n },\n },\n },\n },\n};\n\nexport const IndexingParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"IndexingParameters\",\n modelProperties: {\n batchSize: {\n serializedName: \"batchSize\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n maxFailedItems: {\n defaultValue: 0,\n serializedName: \"maxFailedItems\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n maxFailedItemsPerBatch: {\n defaultValue: 0,\n serializedName: \"maxFailedItemsPerBatch\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n configuration: {\n serializedName: \"configuration\",\n type: {\n name: \"Composite\",\n className: \"IndexingParametersConfiguration\",\n },\n },\n },\n },\n};\n\nexport const IndexingParametersConfiguration: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"IndexingParametersConfiguration\",\n additionalProperties: { type: { name: \"Object\" } },\n modelProperties: {\n parsingMode: {\n defaultValue: \"default\",\n serializedName: \"parsingMode\",\n type: {\n name: \"String\",\n },\n },\n excludedFileNameExtensions: {\n defaultValue: \"\",\n serializedName: \"excludedFileNameExtensions\",\n type: {\n name: \"String\",\n },\n },\n indexedFileNameExtensions: {\n defaultValue: \"\",\n serializedName: \"indexedFileNameExtensions\",\n type: {\n name: \"String\",\n },\n },\n failOnUnsupportedContentType: {\n defaultValue: false,\n serializedName: \"failOnUnsupportedContentType\",\n type: {\n name: \"Boolean\",\n },\n },\n failOnUnprocessableDocument: {\n defaultValue: false,\n serializedName: \"failOnUnprocessableDocument\",\n type: {\n name: \"Boolean\",\n },\n },\n indexStorageMetadataOnlyForOversizedDocuments: {\n defaultValue: false,\n serializedName: \"indexStorageMetadataOnlyForOversizedDocuments\",\n type: {\n name: \"Boolean\",\n },\n },\n delimitedTextHeaders: {\n serializedName: \"delimitedTextHeaders\",\n type: {\n name: \"String\",\n },\n },\n delimitedTextDelimiter: {\n serializedName: \"delimitedTextDelimiter\",\n type: {\n name: \"String\",\n },\n },\n firstLineContainsHeaders: {\n defaultValue: true,\n serializedName: \"firstLineContainsHeaders\",\n type: {\n name: \"Boolean\",\n },\n },\n documentRoot: {\n serializedName: \"documentRoot\",\n type: {\n name: \"String\",\n },\n },\n dataToExtract: {\n defaultValue: \"contentAndMetadata\",\n serializedName: \"dataToExtract\",\n type: {\n name: \"String\",\n },\n },\n imageAction: {\n defaultValue: \"none\",\n serializedName: \"imageAction\",\n type: {\n name: \"String\",\n },\n },\n allowSkillsetToReadFileData: {\n defaultValue: false,\n serializedName: \"allowSkillsetToReadFileData\",\n type: {\n name: \"Boolean\",\n },\n },\n pdfTextRotationAlgorithm: {\n defaultValue: \"none\",\n serializedName: \"pdfTextRotationAlgorithm\",\n type: {\n name: \"String\",\n },\n },\n executionEnvironment: {\n defaultValue: \"standard\",\n serializedName: \"executionEnvironment\",\n type: {\n name: \"String\",\n },\n },\n queryTimeout: {\n defaultValue: \"00:05:00\",\n serializedName: \"queryTimeout\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const FieldMapping: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FieldMapping\",\n modelProperties: {\n sourceFieldName: {\n serializedName: \"sourceFieldName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n targetFieldName: {\n serializedName: \"targetFieldName\",\n type: {\n name: \"String\",\n },\n },\n mappingFunction: {\n serializedName: \"mappingFunction\",\n type: {\n name: \"Composite\",\n className: \"FieldMappingFunction\",\n },\n },\n },\n },\n};\n\nexport const FieldMappingFunction: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FieldMappingFunction\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n parameters: {\n serializedName: \"parameters\",\n nullable: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } },\n },\n },\n },\n },\n};\n\nexport const SearchIndexerCache: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerCache\",\n modelProperties: {\n storageConnectionString: {\n serializedName: \"storageConnectionString\",\n type: {\n name: \"String\",\n },\n },\n enableReprocessing: {\n serializedName: \"enableReprocessing\",\n nullable: true,\n type: {\n name: \"Boolean\",\n },\n },\n identity: {\n serializedName: \"identity\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerDataIdentity\",\n },\n },\n },\n },\n};\n\nexport const ListIndexersResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ListIndexersResult\",\n modelProperties: {\n indexers: {\n serializedName: \"value\",\n required: true,\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SearchIndexer\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const SearchIndexerStatus: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerStatus\",\n modelProperties: {\n status: {\n serializedName: \"status\",\n required: true,\n readOnly: true,\n type: {\n name: \"Enum\",\n allowedValues: [\"unknown\", \"error\", \"running\"],\n },\n },\n lastResult: {\n serializedName: \"lastResult\",\n type: {\n name: \"Composite\",\n className: \"IndexerExecutionResult\",\n },\n },\n executionHistory: {\n serializedName: \"executionHistory\",\n required: true,\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"IndexerExecutionResult\",\n },\n },\n },\n },\n limits: {\n serializedName: \"limits\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerLimits\",\n },\n },\n },\n },\n};\n\nexport const IndexerExecutionResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"IndexerExecutionResult\",\n modelProperties: {\n status: {\n serializedName: \"status\",\n required: true,\n readOnly: true,\n type: {\n name: \"Enum\",\n allowedValues: [\"transientFailure\", \"success\", \"inProgress\", \"reset\"],\n },\n },\n statusDetail: {\n serializedName: \"statusDetail\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n currentState: {\n serializedName: \"currentState\",\n type: {\n name: \"Composite\",\n className: \"IndexerState\",\n },\n },\n errorMessage: {\n serializedName: \"errorMessage\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n startTime: {\n serializedName: \"startTime\",\n readOnly: true,\n type: {\n name: \"DateTime\",\n },\n },\n endTime: {\n serializedName: \"endTime\",\n readOnly: true,\n nullable: true,\n type: {\n name: \"DateTime\",\n },\n },\n errors: {\n serializedName: \"errors\",\n required: true,\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerError\",\n },\n },\n },\n },\n warnings: {\n serializedName: \"warnings\",\n required: true,\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerWarning\",\n },\n },\n },\n },\n itemCount: {\n serializedName: \"itemsProcessed\",\n required: true,\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n failedItemCount: {\n serializedName: \"itemsFailed\",\n required: true,\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n initialTrackingState: {\n serializedName: \"initialTrackingState\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n finalTrackingState: {\n serializedName: \"finalTrackingState\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const IndexerState: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"IndexerState\",\n modelProperties: {\n mode: {\n serializedName: \"mode\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n allDocumentsInitialChangeTrackingState: {\n serializedName: \"allDocsInitialChangeTrackingState\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n allDocumentsFinalChangeTrackingState: {\n serializedName: \"allDocsFinalChangeTrackingState\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n resetDocumentsInitialChangeTrackingState: {\n serializedName: \"resetDocsInitialChangeTrackingState\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n resetDocumentsFinalChangeTrackingState: {\n serializedName: \"resetDocsFinalChangeTrackingState\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n resetDocumentKeys: {\n serializedName: \"resetDocumentKeys\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n resetDatasourceDocumentIds: {\n serializedName: \"resetDatasourceDocumentIds\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const SearchIndexerError: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerError\",\n modelProperties: {\n key: {\n serializedName: \"key\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n errorMessage: {\n serializedName: \"errorMessage\",\n required: true,\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n statusCode: {\n serializedName: \"statusCode\",\n required: true,\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n details: {\n serializedName: \"details\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n documentationLink: {\n serializedName: \"documentationLink\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SearchIndexerWarning: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerWarning\",\n modelProperties: {\n key: {\n serializedName: \"key\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n message: {\n serializedName: \"message\",\n required: true,\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n details: {\n serializedName: \"details\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n documentationLink: {\n serializedName: \"documentationLink\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SearchIndexerLimits: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerLimits\",\n modelProperties: {\n maxRunTime: {\n serializedName: \"maxRunTime\",\n readOnly: true,\n type: {\n name: \"TimeSpan\",\n },\n },\n maxDocumentExtractionSize: {\n serializedName: \"maxDocumentExtractionSize\",\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n maxDocumentContentCharactersToExtract: {\n serializedName: \"maxDocumentContentCharactersToExtract\",\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const SearchIndexerSkillset: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerSkillset\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n description: {\n serializedName: \"description\",\n type: {\n name: \"String\",\n },\n },\n skills: {\n serializedName: \"skills\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerSkill\",\n },\n },\n },\n },\n cognitiveServicesAccount: {\n serializedName: \"cognitiveServices\",\n type: {\n name: \"Composite\",\n className: \"CognitiveServicesAccount\",\n },\n },\n knowledgeStore: {\n serializedName: \"knowledgeStore\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerKnowledgeStore\",\n },\n },\n indexProjection: {\n serializedName: \"indexProjections\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerIndexProjection\",\n },\n },\n etag: {\n serializedName: \"@odata\\\\.etag\",\n type: {\n name: \"String\",\n },\n },\n encryptionKey: {\n serializedName: \"encryptionKey\",\n type: {\n name: \"Composite\",\n className: \"SearchResourceEncryptionKey\",\n },\n },\n },\n },\n};\n\nexport const SearchIndexerSkill: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: {\n serializedName: \"@odata\\\\.type\",\n clientName: \"odatatype\",\n },\n modelProperties: {\n odatatype: {\n serializedName: \"@odata\\\\.type\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\",\n },\n },\n description: {\n serializedName: \"description\",\n type: {\n name: \"String\",\n },\n },\n context: {\n serializedName: \"context\",\n type: {\n name: \"String\",\n },\n },\n inputs: {\n serializedName: \"inputs\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"InputFieldMappingEntry\",\n },\n },\n },\n },\n outputs: {\n serializedName: \"outputs\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"OutputFieldMappingEntry\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const InputFieldMappingEntry: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"InputFieldMappingEntry\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n source: {\n serializedName: \"source\",\n type: {\n name: \"String\",\n },\n },\n sourceContext: {\n serializedName: \"sourceContext\",\n type: {\n name: \"String\",\n },\n },\n inputs: {\n serializedName: \"inputs\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"InputFieldMappingEntry\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const OutputFieldMappingEntry: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OutputFieldMappingEntry\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n targetName: {\n serializedName: \"targetName\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const CognitiveServicesAccount: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CognitiveServicesAccount\",\n uberParent: \"CognitiveServicesAccount\",\n polymorphicDiscriminator: {\n serializedName: \"@odata\\\\.type\",\n clientName: \"odatatype\",\n },\n modelProperties: {\n odatatype: {\n serializedName: \"@odata\\\\.type\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n description: {\n serializedName: \"description\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SearchIndexerKnowledgeStore: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerKnowledgeStore\",\n modelProperties: {\n storageConnectionString: {\n serializedName: \"storageConnectionString\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n projections: {\n serializedName: \"projections\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerKnowledgeStoreProjection\",\n },\n },\n },\n },\n identity: {\n serializedName: \"identity\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerDataIdentity\",\n },\n },\n parameters: {\n serializedName: \"parameters\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerKnowledgeStoreParameters\",\n },\n },\n },\n },\n};\n\nexport const SearchIndexerKnowledgeStoreProjection: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerKnowledgeStoreProjection\",\n modelProperties: {\n tables: {\n serializedName: \"tables\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerKnowledgeStoreTableProjectionSelector\",\n },\n },\n },\n },\n objects: {\n serializedName: \"objects\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className:\n \"SearchIndexerKnowledgeStoreObjectProjectionSelector\",\n },\n },\n },\n },\n files: {\n serializedName: \"files\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerKnowledgeStoreFileProjectionSelector\",\n },\n },\n },\n },\n },\n },\n };\n\nexport const SearchIndexerKnowledgeStoreProjectionSelector: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerKnowledgeStoreProjectionSelector\",\n modelProperties: {\n referenceKeyName: {\n serializedName: \"referenceKeyName\",\n type: {\n name: \"String\",\n },\n },\n generatedKeyName: {\n serializedName: \"generatedKeyName\",\n type: {\n name: \"String\",\n },\n },\n source: {\n serializedName: \"source\",\n type: {\n name: \"String\",\n },\n },\n sourceContext: {\n serializedName: \"sourceContext\",\n type: {\n name: \"String\",\n },\n },\n inputs: {\n serializedName: \"inputs\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"InputFieldMappingEntry\",\n },\n },\n },\n },\n },\n },\n };\n\nexport const SearchIndexerKnowledgeStoreParameters: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerKnowledgeStoreParameters\",\n additionalProperties: { type: { name: \"Object\" } },\n modelProperties: {\n synthesizeGeneratedKeyName: {\n defaultValue: false,\n serializedName: \"synthesizeGeneratedKeyName\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n };\n\nexport const SearchIndexerIndexProjection: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerIndexProjection\",\n modelProperties: {\n selectors: {\n serializedName: \"selectors\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerIndexProjectionSelector\",\n },\n },\n },\n },\n parameters: {\n serializedName: \"parameters\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerIndexProjectionParameters\",\n },\n },\n },\n },\n};\n\nexport const SearchIndexerIndexProjectionSelector: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerIndexProjectionSelector\",\n modelProperties: {\n targetIndexName: {\n serializedName: \"targetIndexName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n parentKeyFieldName: {\n serializedName: \"parentKeyFieldName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n sourceContext: {\n serializedName: \"sourceContext\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n mappings: {\n serializedName: \"mappings\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"InputFieldMappingEntry\",\n },\n },\n },\n },\n },\n },\n };\n\nexport const SearchIndexerIndexProjectionParameters: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerIndexProjectionParameters\",\n additionalProperties: { type: { name: \"Object\" } },\n modelProperties: {\n projectionMode: {\n serializedName: \"projectionMode\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n };\n\nexport const ListSkillsetsResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ListSkillsetsResult\",\n modelProperties: {\n skillsets: {\n serializedName: \"value\",\n required: true,\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerSkillset\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const SkillNames: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SkillNames\",\n modelProperties: {\n skillNames: {\n serializedName: \"skillNames\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const SynonymMap: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SynonymMap\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n format: {\n defaultValue: \"solr\",\n isConstant: true,\n serializedName: \"format\",\n type: {\n name: \"String\",\n },\n },\n synonyms: {\n serializedName: \"synonyms\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n encryptionKey: {\n serializedName: \"encryptionKey\",\n type: {\n name: \"Composite\",\n className: \"SearchResourceEncryptionKey\",\n },\n },\n etag: {\n serializedName: \"@odata\\\\.etag\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const ListSynonymMapsResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ListSynonymMapsResult\",\n modelProperties: {\n synonymMaps: {\n serializedName: \"value\",\n required: true,\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SynonymMap\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const SearchIndex: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchIndex\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n fields: {\n serializedName: \"fields\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SearchField\",\n },\n },\n },\n },\n scoringProfiles: {\n serializedName: \"scoringProfiles\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ScoringProfile\",\n },\n },\n },\n },\n defaultScoringProfile: {\n serializedName: \"defaultScoringProfile\",\n type: {\n name: \"String\",\n },\n },\n corsOptions: {\n serializedName: \"corsOptions\",\n type: {\n name: \"Composite\",\n className: \"CorsOptions\",\n },\n },\n suggesters: {\n serializedName: \"suggesters\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Suggester\",\n },\n },\n },\n },\n analyzers: {\n serializedName: \"analyzers\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"LexicalAnalyzer\",\n },\n },\n },\n },\n tokenizers: {\n serializedName: \"tokenizers\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"LexicalTokenizer\",\n },\n },\n },\n },\n tokenFilters: {\n serializedName: \"tokenFilters\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"TokenFilter\",\n },\n },\n },\n },\n charFilters: {\n serializedName: \"charFilters\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"CharFilter\",\n },\n },\n },\n },\n normalizers: {\n serializedName: \"normalizers\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"LexicalNormalizer\",\n },\n },\n },\n },\n encryptionKey: {\n serializedName: \"encryptionKey\",\n type: {\n name: \"Composite\",\n className: \"SearchResourceEncryptionKey\",\n },\n },\n similarity: {\n serializedName: \"similarity\",\n type: {\n name: \"Composite\",\n className: \"Similarity\",\n },\n },\n semanticSearch: {\n serializedName: \"semantic\",\n type: {\n name: \"Composite\",\n className: \"SemanticSearch\",\n },\n },\n vectorSearch: {\n serializedName: \"vectorSearch\",\n type: {\n name: \"Composite\",\n className: \"VectorSearch\",\n },\n },\n etag: {\n serializedName: \"@odata\\\\.etag\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SearchField: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchField\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n type: {\n serializedName: \"type\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n key: {\n serializedName: \"key\",\n type: {\n name: \"Boolean\",\n },\n },\n retrievable: {\n serializedName: \"retrievable\",\n type: {\n name: \"Boolean\",\n },\n },\n stored: {\n serializedName: \"stored\",\n type: {\n name: \"Boolean\",\n },\n },\n searchable: {\n serializedName: \"searchable\",\n type: {\n name: \"Boolean\",\n },\n },\n filterable: {\n serializedName: \"filterable\",\n type: {\n name: \"Boolean\",\n },\n },\n sortable: {\n serializedName: \"sortable\",\n type: {\n name: \"Boolean\",\n },\n },\n facetable: {\n serializedName: \"facetable\",\n type: {\n name: \"Boolean\",\n },\n },\n analyzer: {\n serializedName: \"analyzer\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n searchAnalyzer: {\n serializedName: \"searchAnalyzer\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n indexAnalyzer: {\n serializedName: \"indexAnalyzer\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n normalizer: {\n serializedName: \"normalizer\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n vectorSearchDimensions: {\n constraints: {\n InclusiveMaximum: 2048,\n InclusiveMinimum: 2,\n },\n serializedName: \"dimensions\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n vectorSearchProfileName: {\n serializedName: \"vectorSearchProfile\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n vectorEncodingFormat: {\n serializedName: \"vectorEncoding\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n synonymMaps: {\n serializedName: \"synonymMaps\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n fields: {\n serializedName: \"fields\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SearchField\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const ScoringProfile: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ScoringProfile\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n textWeights: {\n serializedName: \"text\",\n type: {\n name: \"Composite\",\n className: \"TextWeights\",\n },\n },\n functions: {\n serializedName: \"functions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ScoringFunction\",\n },\n },\n },\n },\n functionAggregation: {\n serializedName: \"functionAggregation\",\n type: {\n name: \"Enum\",\n allowedValues: [\n \"sum\",\n \"average\",\n \"minimum\",\n \"maximum\",\n \"firstMatching\",\n ],\n },\n },\n },\n },\n};\n\nexport const TextWeights: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TextWeights\",\n modelProperties: {\n weights: {\n serializedName: \"weights\",\n required: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"Number\" } },\n },\n },\n },\n },\n};\n\nexport const ScoringFunction: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ScoringFunction\",\n uberParent: \"ScoringFunction\",\n polymorphicDiscriminator: {\n serializedName: \"type\",\n clientName: \"type\",\n },\n modelProperties: {\n type: {\n serializedName: \"type\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n fieldName: {\n serializedName: \"fieldName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n boost: {\n serializedName: \"boost\",\n required: true,\n type: {\n name: \"Number\",\n },\n },\n interpolation: {\n serializedName: \"interpolation\",\n type: {\n name: \"Enum\",\n allowedValues: [\"linear\", \"constant\", \"quadratic\", \"logarithmic\"],\n },\n },\n },\n },\n};\n\nexport const CorsOptions: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CorsOptions\",\n modelProperties: {\n allowedOrigins: {\n serializedName: \"allowedOrigins\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n maxAgeInSeconds: {\n serializedName: \"maxAgeInSeconds\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const Suggester: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Suggester\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n searchMode: {\n defaultValue: \"analyzingInfixMatching\",\n isConstant: true,\n serializedName: \"searchMode\",\n type: {\n name: \"String\",\n },\n },\n sourceFields: {\n serializedName: \"sourceFields\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const LexicalAnalyzer: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"LexicalAnalyzer\",\n uberParent: \"LexicalAnalyzer\",\n polymorphicDiscriminator: {\n serializedName: \"@odata\\\\.type\",\n clientName: \"odatatype\",\n },\n modelProperties: {\n odatatype: {\n serializedName: \"@odata\\\\.type\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const LexicalTokenizer: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"LexicalTokenizer\",\n uberParent: \"LexicalTokenizer\",\n polymorphicDiscriminator: {\n serializedName: \"@odata\\\\.type\",\n clientName: \"odatatype\",\n },\n modelProperties: {\n odatatype: {\n serializedName: \"@odata\\\\.type\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const TokenFilter: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: {\n serializedName: \"@odata\\\\.type\",\n clientName: \"odatatype\",\n },\n modelProperties: {\n odatatype: {\n serializedName: \"@odata\\\\.type\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const CharFilter: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CharFilter\",\n uberParent: \"CharFilter\",\n polymorphicDiscriminator: {\n serializedName: \"@odata\\\\.type\",\n clientName: \"odatatype\",\n },\n modelProperties: {\n odatatype: {\n serializedName: \"@odata\\\\.type\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const LexicalNormalizer: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"LexicalNormalizer\",\n uberParent: \"LexicalNormalizer\",\n polymorphicDiscriminator: {\n serializedName: \"@odata\\\\.type\",\n clientName: \"odatatype\",\n },\n modelProperties: {\n odatatype: {\n serializedName: \"@odata\\\\.type\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const Similarity: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Similarity\",\n uberParent: \"Similarity\",\n polymorphicDiscriminator: {\n serializedName: \"@odata\\\\.type\",\n clientName: \"odatatype\",\n },\n modelProperties: {\n odatatype: {\n serializedName: \"@odata\\\\.type\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SemanticSearch: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SemanticSearch\",\n modelProperties: {\n defaultConfigurationName: {\n serializedName: \"defaultConfiguration\",\n type: {\n name: \"String\",\n },\n },\n configurations: {\n serializedName: \"configurations\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SemanticConfiguration\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const SemanticConfiguration: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SemanticConfiguration\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n prioritizedFields: {\n serializedName: \"prioritizedFields\",\n type: {\n name: \"Composite\",\n className: \"SemanticPrioritizedFields\",\n },\n },\n },\n },\n};\n\nexport const SemanticPrioritizedFields: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SemanticPrioritizedFields\",\n modelProperties: {\n titleField: {\n serializedName: \"titleField\",\n type: {\n name: \"Composite\",\n className: \"SemanticField\",\n },\n },\n contentFields: {\n serializedName: \"prioritizedContentFields\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SemanticField\",\n },\n },\n },\n },\n keywordsFields: {\n serializedName: \"prioritizedKeywordsFields\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SemanticField\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const SemanticField: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SemanticField\",\n modelProperties: {\n name: {\n serializedName: \"fieldName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const VectorSearch: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"VectorSearch\",\n modelProperties: {\n profiles: {\n serializedName: \"profiles\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"VectorSearchProfile\",\n },\n },\n },\n },\n algorithms: {\n serializedName: \"algorithms\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"VectorSearchAlgorithmConfiguration\",\n },\n },\n },\n },\n vectorizers: {\n serializedName: \"vectorizers\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"VectorSearchVectorizer\",\n },\n },\n },\n },\n compressions: {\n serializedName: \"compressions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"VectorSearchCompression\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const VectorSearchProfile: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"VectorSearchProfile\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n algorithmConfigurationName: {\n serializedName: \"algorithm\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n vectorizerName: {\n serializedName: \"vectorizer\",\n type: {\n name: \"String\",\n },\n },\n compressionName: {\n serializedName: \"compression\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const VectorSearchAlgorithmConfiguration: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"VectorSearchAlgorithmConfiguration\",\n uberParent: \"VectorSearchAlgorithmConfiguration\",\n polymorphicDiscriminator: {\n serializedName: \"kind\",\n clientName: \"kind\",\n },\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n kind: {\n serializedName: \"kind\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const VectorSearchVectorizer: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"VectorSearchVectorizer\",\n uberParent: \"VectorSearchVectorizer\",\n polymorphicDiscriminator: {\n serializedName: \"kind\",\n clientName: \"kind\",\n },\n modelProperties: {\n vectorizerName: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n kind: {\n serializedName: \"kind\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const VectorSearchCompression: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"VectorSearchCompression\",\n uberParent: \"VectorSearchCompression\",\n polymorphicDiscriminator: {\n serializedName: \"kind\",\n clientName: \"kind\",\n },\n modelProperties: {\n compressionName: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n kind: {\n serializedName: \"kind\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n rerankWithOriginalVectors: {\n defaultValue: true,\n serializedName: \"rerankWithOriginalVectors\",\n type: {\n name: \"Boolean\",\n },\n },\n defaultOversampling: {\n serializedName: \"defaultOversampling\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n truncationDimension: {\n serializedName: \"truncationDimension\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const ListIndexesResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ListIndexesResult\",\n modelProperties: {\n indexes: {\n serializedName: \"value\",\n required: true,\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SearchIndex\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const GetIndexStatisticsResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"GetIndexStatisticsResult\",\n modelProperties: {\n documentCount: {\n serializedName: \"documentCount\",\n required: true,\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n storageSize: {\n serializedName: \"storageSize\",\n required: true,\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n vectorIndexSize: {\n serializedName: \"vectorIndexSize\",\n required: true,\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const AnalyzeRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AnalyzeRequest\",\n modelProperties: {\n text: {\n serializedName: \"text\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n analyzer: {\n serializedName: \"analyzer\",\n type: {\n name: \"String\",\n },\n },\n tokenizer: {\n serializedName: \"tokenizer\",\n type: {\n name: \"String\",\n },\n },\n normalizer: {\n serializedName: \"normalizer\",\n type: {\n name: \"String\",\n },\n },\n tokenFilters: {\n serializedName: \"tokenFilters\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n charFilters: {\n serializedName: \"charFilters\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const AnalyzeResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AnalyzeResult\",\n modelProperties: {\n tokens: {\n serializedName: \"tokens\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"AnalyzedTokenInfo\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const AnalyzedTokenInfo: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AnalyzedTokenInfo\",\n modelProperties: {\n token: {\n serializedName: \"token\",\n required: true,\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n startOffset: {\n serializedName: \"startOffset\",\n required: true,\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n endOffset: {\n serializedName: \"endOffset\",\n required: true,\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n position: {\n serializedName: \"position\",\n required: true,\n readOnly: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const SearchAlias: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SearchAlias\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n indexes: {\n serializedName: \"indexes\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n etag: {\n serializedName: \"@odata\\\\.etag\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const ListAliasesResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ListAliasesResult\",\n modelProperties: {\n aliases: {\n serializedName: \"value\",\n required: true,\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SearchAlias\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const ServiceStatistics: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ServiceStatistics\",\n modelProperties: {\n counters: {\n serializedName: \"counters\",\n type: {\n name: \"Composite\",\n className: \"ServiceCounters\",\n },\n },\n limits: {\n serializedName: \"limits\",\n type: {\n name: \"Composite\",\n className: \"ServiceLimits\",\n },\n },\n },\n },\n};\n\nexport const ServiceCounters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ServiceCounters\",\n modelProperties: {\n aliasCounter: {\n serializedName: \"aliasesCount\",\n type: {\n name: \"Composite\",\n className: \"ResourceCounter\",\n },\n },\n documentCounter: {\n serializedName: \"documentCount\",\n type: {\n name: \"Composite\",\n className: \"ResourceCounter\",\n },\n },\n indexCounter: {\n serializedName: \"indexesCount\",\n type: {\n name: \"Composite\",\n className: \"ResourceCounter\",\n },\n },\n indexerCounter: {\n serializedName: \"indexersCount\",\n type: {\n name: \"Composite\",\n className: \"ResourceCounter\",\n },\n },\n dataSourceCounter: {\n serializedName: \"dataSourcesCount\",\n type: {\n name: \"Composite\",\n className: \"ResourceCounter\",\n },\n },\n storageSizeCounter: {\n serializedName: \"storageSize\",\n type: {\n name: \"Composite\",\n className: \"ResourceCounter\",\n },\n },\n synonymMapCounter: {\n serializedName: \"synonymMaps\",\n type: {\n name: \"Composite\",\n className: \"ResourceCounter\",\n },\n },\n skillsetCounter: {\n serializedName: \"skillsetCount\",\n type: {\n name: \"Composite\",\n className: \"ResourceCounter\",\n },\n },\n vectorIndexSizeCounter: {\n serializedName: \"vectorIndexSize\",\n type: {\n name: \"Composite\",\n className: \"ResourceCounter\",\n },\n },\n },\n },\n};\n\nexport const ResourceCounter: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ResourceCounter\",\n modelProperties: {\n usage: {\n serializedName: \"usage\",\n required: true,\n type: {\n name: \"Number\",\n },\n },\n quota: {\n serializedName: \"quota\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const ServiceLimits: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ServiceLimits\",\n modelProperties: {\n maxFieldsPerIndex: {\n serializedName: \"maxFieldsPerIndex\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n maxFieldNestingDepthPerIndex: {\n serializedName: \"maxFieldNestingDepthPerIndex\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n maxComplexCollectionFieldsPerIndex: {\n serializedName: \"maxComplexCollectionFieldsPerIndex\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n maxComplexObjectsInCollectionsPerDocument: {\n serializedName: \"maxComplexObjectsInCollectionsPerDocument\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n maxStoragePerIndexInBytes: {\n serializedName: \"maxStoragePerIndex\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const HnswParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"HnswParameters\",\n modelProperties: {\n m: {\n defaultValue: 4,\n constraints: {\n InclusiveMaximum: 10,\n InclusiveMinimum: 4,\n },\n serializedName: \"m\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n efConstruction: {\n defaultValue: 400,\n constraints: {\n InclusiveMaximum: 1000,\n InclusiveMinimum: 100,\n },\n serializedName: \"efConstruction\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n efSearch: {\n defaultValue: 500,\n constraints: {\n InclusiveMaximum: 1000,\n InclusiveMinimum: 100,\n },\n serializedName: \"efSearch\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n metric: {\n serializedName: \"metric\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const ExhaustiveKnnParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ExhaustiveKnnParameters\",\n modelProperties: {\n metric: {\n serializedName: \"metric\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const ScalarQuantizationParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ScalarQuantizationParameters\",\n modelProperties: {\n quantizedDataType: {\n serializedName: \"quantizedDataType\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const AzureOpenAIParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AzureOpenAIParameters\",\n modelProperties: {\n resourceUrl: {\n serializedName: \"resourceUri\",\n type: {\n name: \"String\",\n },\n },\n deploymentId: {\n serializedName: \"deploymentId\",\n type: {\n name: \"String\",\n },\n },\n apiKey: {\n serializedName: \"apiKey\",\n type: {\n name: \"String\",\n },\n },\n authIdentity: {\n serializedName: \"authIdentity\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerDataIdentity\",\n },\n },\n modelName: {\n serializedName: \"modelName\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const WebApiParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"WebApiParameters\",\n modelProperties: {\n uri: {\n serializedName: \"uri\",\n type: {\n name: \"String\",\n },\n },\n httpHeaders: {\n serializedName: \"httpHeaders\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } },\n },\n },\n httpMethod: {\n serializedName: \"httpMethod\",\n type: {\n name: \"String\",\n },\n },\n timeout: {\n serializedName: \"timeout\",\n type: {\n name: \"TimeSpan\",\n },\n },\n authResourceId: {\n serializedName: \"authResourceId\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n authIdentity: {\n serializedName: \"authIdentity\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerDataIdentity\",\n },\n },\n },\n },\n};\n\nexport const AIServicesVisionParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AIServicesVisionParameters\",\n modelProperties: {\n modelVersion: {\n serializedName: \"modelVersion\",\n required: true,\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n resourceUri: {\n serializedName: \"resourceUri\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n apiKey: {\n serializedName: \"apiKey\",\n type: {\n name: \"String\",\n },\n },\n authIdentity: {\n serializedName: \"authIdentity\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerDataIdentity\",\n },\n },\n },\n },\n};\n\nexport const AMLParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AMLParameters\",\n modelProperties: {\n scoringUri: {\n serializedName: \"uri\",\n required: true,\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n authenticationKey: {\n serializedName: \"key\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n resourceId: {\n serializedName: \"resourceId\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n timeout: {\n serializedName: \"timeout\",\n nullable: true,\n type: {\n name: \"TimeSpan\",\n },\n },\n region: {\n serializedName: \"region\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n modelName: {\n serializedName: \"modelName\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const DistanceScoringParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DistanceScoringParameters\",\n modelProperties: {\n referencePointParameter: {\n serializedName: \"referencePointParameter\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n boostingDistance: {\n serializedName: \"boostingDistance\",\n required: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const FreshnessScoringParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FreshnessScoringParameters\",\n modelProperties: {\n boostingDuration: {\n serializedName: \"boostingDuration\",\n required: true,\n type: {\n name: \"TimeSpan\",\n },\n },\n },\n },\n};\n\nexport const MagnitudeScoringParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"MagnitudeScoringParameters\",\n modelProperties: {\n boostingRangeStart: {\n serializedName: \"boostingRangeStart\",\n required: true,\n type: {\n name: \"Number\",\n },\n },\n boostingRangeEnd: {\n serializedName: \"boostingRangeEnd\",\n required: true,\n type: {\n name: \"Number\",\n },\n },\n shouldBoostBeyondRangeByConstant: {\n serializedName: \"constantBoostBeyondRange\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n};\n\nexport const TagScoringParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TagScoringParameters\",\n modelProperties: {\n tagsParameter: {\n serializedName: \"tagsParameter\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const CustomEntity: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CustomEntity\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n description: {\n serializedName: \"description\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n type: {\n serializedName: \"type\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n subtype: {\n serializedName: \"subtype\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n id: {\n serializedName: \"id\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n caseSensitive: {\n serializedName: \"caseSensitive\",\n nullable: true,\n type: {\n name: \"Boolean\",\n },\n },\n accentSensitive: {\n serializedName: \"accentSensitive\",\n nullable: true,\n type: {\n name: \"Boolean\",\n },\n },\n fuzzyEditDistance: {\n serializedName: \"fuzzyEditDistance\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n defaultCaseSensitive: {\n serializedName: \"defaultCaseSensitive\",\n nullable: true,\n type: {\n name: \"Boolean\",\n },\n },\n defaultAccentSensitive: {\n serializedName: \"defaultAccentSensitive\",\n nullable: true,\n type: {\n name: \"Boolean\",\n },\n },\n defaultFuzzyEditDistance: {\n serializedName: \"defaultFuzzyEditDistance\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n aliases: {\n serializedName: \"aliases\",\n nullable: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"CustomEntityAlias\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const CustomEntityAlias: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CustomEntityAlias\",\n modelProperties: {\n text: {\n serializedName: \"text\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n caseSensitive: {\n serializedName: \"caseSensitive\",\n nullable: true,\n type: {\n name: \"Boolean\",\n },\n },\n accentSensitive: {\n serializedName: \"accentSensitive\",\n nullable: true,\n type: {\n name: \"Boolean\",\n },\n },\n fuzzyEditDistance: {\n serializedName: \"fuzzyEditDistance\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const AzureOpenAITokenizerParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AzureOpenAITokenizerParameters\",\n modelProperties: {\n encoderModelName: {\n serializedName: \"encoderModelName\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n allowedSpecialTokens: {\n serializedName: \"allowedSpecialTokens\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const SearchIndexerDataNoneIdentity: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.DataNoneIdentity\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerDataNoneIdentity\",\n uberParent: \"SearchIndexerDataIdentity\",\n polymorphicDiscriminator:\n SearchIndexerDataIdentity.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerDataIdentity.type.modelProperties,\n },\n },\n};\n\nexport const SearchIndexerDataUserAssignedIdentity: coreClient.CompositeMapper =\n {\n serializedName: \"#Microsoft.Azure.Search.DataUserAssignedIdentity\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerDataUserAssignedIdentity\",\n uberParent: \"SearchIndexerDataIdentity\",\n polymorphicDiscriminator:\n SearchIndexerDataIdentity.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerDataIdentity.type.modelProperties,\n resourceId: {\n serializedName: \"userAssignedIdentity\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n };\n\nexport const HighWaterMarkChangeDetectionPolicy: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy\",\n type: {\n name: \"Composite\",\n className: \"HighWaterMarkChangeDetectionPolicy\",\n uberParent: \"DataChangeDetectionPolicy\",\n polymorphicDiscriminator:\n DataChangeDetectionPolicy.type.polymorphicDiscriminator,\n modelProperties: {\n ...DataChangeDetectionPolicy.type.modelProperties,\n highWaterMarkColumnName: {\n serializedName: \"highWaterMarkColumnName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SqlIntegratedChangeTrackingPolicy: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy\",\n type: {\n name: \"Composite\",\n className: \"SqlIntegratedChangeTrackingPolicy\",\n uberParent: \"DataChangeDetectionPolicy\",\n polymorphicDiscriminator:\n DataChangeDetectionPolicy.type.polymorphicDiscriminator,\n modelProperties: {\n ...DataChangeDetectionPolicy.type.modelProperties,\n },\n },\n};\n\nexport const SoftDeleteColumnDeletionDetectionPolicy: coreClient.CompositeMapper =\n {\n serializedName:\n \"#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy\",\n type: {\n name: \"Composite\",\n className: \"SoftDeleteColumnDeletionDetectionPolicy\",\n uberParent: \"DataDeletionDetectionPolicy\",\n polymorphicDiscriminator:\n DataDeletionDetectionPolicy.type.polymorphicDiscriminator,\n modelProperties: {\n ...DataDeletionDetectionPolicy.type.modelProperties,\n softDeleteColumnName: {\n serializedName: \"softDeleteColumnName\",\n type: {\n name: \"String\",\n },\n },\n softDeleteMarkerValue: {\n serializedName: \"softDeleteMarkerValue\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n };\n\nexport const NativeBlobSoftDeleteDeletionDetectionPolicy: coreClient.CompositeMapper =\n {\n serializedName:\n \"#Microsoft.Azure.Search.NativeBlobSoftDeleteDeletionDetectionPolicy\",\n type: {\n name: \"Composite\",\n className: \"NativeBlobSoftDeleteDeletionDetectionPolicy\",\n uberParent: \"DataDeletionDetectionPolicy\",\n polymorphicDiscriminator:\n DataDeletionDetectionPolicy.type.polymorphicDiscriminator,\n modelProperties: {\n ...DataDeletionDetectionPolicy.type.modelProperties,\n },\n },\n };\n\nexport const ConditionalSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Util.ConditionalSkill\",\n type: {\n name: \"Composite\",\n className: \"ConditionalSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n },\n },\n};\n\nexport const KeyPhraseExtractionSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Text.KeyPhraseExtractionSkill\",\n type: {\n name: \"Composite\",\n className: \"KeyPhraseExtractionSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n defaultLanguageCode: {\n serializedName: \"defaultLanguageCode\",\n type: {\n name: \"String\",\n },\n },\n maxKeyPhraseCount: {\n serializedName: \"maxKeyPhraseCount\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n modelVersion: {\n serializedName: \"modelVersion\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const OcrSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Vision.OcrSkill\",\n type: {\n name: \"Composite\",\n className: \"OcrSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n defaultLanguageCode: {\n serializedName: \"defaultLanguageCode\",\n type: {\n name: \"String\",\n },\n },\n shouldDetectOrientation: {\n defaultValue: false,\n serializedName: \"detectOrientation\",\n type: {\n name: \"Boolean\",\n },\n },\n lineEnding: {\n serializedName: \"lineEnding\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const ImageAnalysisSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Vision.ImageAnalysisSkill\",\n type: {\n name: \"Composite\",\n className: \"ImageAnalysisSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n defaultLanguageCode: {\n serializedName: \"defaultLanguageCode\",\n type: {\n name: \"String\",\n },\n },\n visualFeatures: {\n serializedName: \"visualFeatures\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n details: {\n serializedName: \"details\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const LanguageDetectionSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Text.LanguageDetectionSkill\",\n type: {\n name: \"Composite\",\n className: \"LanguageDetectionSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n defaultCountryHint: {\n serializedName: \"defaultCountryHint\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n modelVersion: {\n serializedName: \"modelVersion\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const ShaperSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Util.ShaperSkill\",\n type: {\n name: \"Composite\",\n className: \"ShaperSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n },\n },\n};\n\nexport const MergeSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Text.MergeSkill\",\n type: {\n name: \"Composite\",\n className: \"MergeSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n insertPreTag: {\n defaultValue: \" \",\n serializedName: \"insertPreTag\",\n type: {\n name: \"String\",\n },\n },\n insertPostTag: {\n defaultValue: \" \",\n serializedName: \"insertPostTag\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const EntityRecognitionSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Text.EntityRecognitionSkill\",\n type: {\n name: \"Composite\",\n className: \"EntityRecognitionSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n categories: {\n serializedName: \"categories\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n defaultLanguageCode: {\n serializedName: \"defaultLanguageCode\",\n type: {\n name: \"String\",\n },\n },\n includeTypelessEntities: {\n serializedName: \"includeTypelessEntities\",\n nullable: true,\n type: {\n name: \"Boolean\",\n },\n },\n minimumPrecision: {\n serializedName: \"minimumPrecision\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const SentimentSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Text.SentimentSkill\",\n type: {\n name: \"Composite\",\n className: \"SentimentSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n defaultLanguageCode: {\n serializedName: \"defaultLanguageCode\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SentimentSkillV3: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Text.V3.SentimentSkill\",\n type: {\n name: \"Composite\",\n className: \"SentimentSkillV3\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n defaultLanguageCode: {\n serializedName: \"defaultLanguageCode\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n includeOpinionMining: {\n defaultValue: false,\n serializedName: \"includeOpinionMining\",\n type: {\n name: \"Boolean\",\n },\n },\n modelVersion: {\n serializedName: \"modelVersion\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const EntityLinkingSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Text.V3.EntityLinkingSkill\",\n type: {\n name: \"Composite\",\n className: \"EntityLinkingSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n defaultLanguageCode: {\n serializedName: \"defaultLanguageCode\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n minimumPrecision: {\n constraints: {\n InclusiveMaximum: 1,\n InclusiveMinimum: 0,\n },\n serializedName: \"minimumPrecision\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n modelVersion: {\n serializedName: \"modelVersion\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const EntityRecognitionSkillV3: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Text.V3.EntityRecognitionSkill\",\n type: {\n name: \"Composite\",\n className: \"EntityRecognitionSkillV3\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n categories: {\n serializedName: \"categories\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n defaultLanguageCode: {\n serializedName: \"defaultLanguageCode\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n minimumPrecision: {\n constraints: {\n InclusiveMaximum: 1,\n InclusiveMinimum: 0,\n },\n serializedName: \"minimumPrecision\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n modelVersion: {\n serializedName: \"modelVersion\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PIIDetectionSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Text.PIIDetectionSkill\",\n type: {\n name: \"Composite\",\n className: \"PIIDetectionSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n defaultLanguageCode: {\n serializedName: \"defaultLanguageCode\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n minimumPrecision: {\n constraints: {\n InclusiveMaximum: 1,\n InclusiveMinimum: 0,\n },\n serializedName: \"minimumPrecision\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n maskingMode: {\n serializedName: \"maskingMode\",\n type: {\n name: \"String\",\n },\n },\n maskingCharacter: {\n constraints: {\n MaxLength: 1,\n },\n serializedName: \"maskingCharacter\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n modelVersion: {\n serializedName: \"modelVersion\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n categories: {\n serializedName: \"piiCategories\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n domain: {\n serializedName: \"domain\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SplitSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Text.SplitSkill\",\n type: {\n name: \"Composite\",\n className: \"SplitSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n defaultLanguageCode: {\n serializedName: \"defaultLanguageCode\",\n type: {\n name: \"String\",\n },\n },\n textSplitMode: {\n serializedName: \"textSplitMode\",\n type: {\n name: \"String\",\n },\n },\n maxPageLength: {\n serializedName: \"maximumPageLength\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n pageOverlapLength: {\n serializedName: \"pageOverlapLength\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n maximumPagesToTake: {\n serializedName: \"maximumPagesToTake\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n unit: {\n serializedName: \"unit\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n azureOpenAITokenizerParameters: {\n serializedName: \"azureOpenAITokenizerParameters\",\n type: {\n name: \"Composite\",\n className: \"AzureOpenAITokenizerParameters\",\n },\n },\n },\n },\n};\n\nexport const CustomEntityLookupSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Text.CustomEntityLookupSkill\",\n type: {\n name: \"Composite\",\n className: \"CustomEntityLookupSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n defaultLanguageCode: {\n serializedName: \"defaultLanguageCode\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n entitiesDefinitionUri: {\n serializedName: \"entitiesDefinitionUri\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n inlineEntitiesDefinition: {\n serializedName: \"inlineEntitiesDefinition\",\n nullable: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"CustomEntity\",\n },\n },\n },\n },\n globalDefaultCaseSensitive: {\n serializedName: \"globalDefaultCaseSensitive\",\n nullable: true,\n type: {\n name: \"Boolean\",\n },\n },\n globalDefaultAccentSensitive: {\n serializedName: \"globalDefaultAccentSensitive\",\n nullable: true,\n type: {\n name: \"Boolean\",\n },\n },\n globalDefaultFuzzyEditDistance: {\n serializedName: \"globalDefaultFuzzyEditDistance\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const TextTranslationSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Text.TranslationSkill\",\n type: {\n name: \"Composite\",\n className: \"TextTranslationSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n defaultToLanguageCode: {\n serializedName: \"defaultToLanguageCode\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n defaultFromLanguageCode: {\n serializedName: \"defaultFromLanguageCode\",\n type: {\n name: \"String\",\n },\n },\n suggestedFrom: {\n serializedName: \"suggestedFrom\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const DocumentExtractionSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Util.DocumentExtractionSkill\",\n type: {\n name: \"Composite\",\n className: \"DocumentExtractionSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n parsingMode: {\n serializedName: \"parsingMode\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n dataToExtract: {\n serializedName: \"dataToExtract\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n configuration: {\n serializedName: \"configuration\",\n nullable: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"any\" } },\n },\n },\n },\n },\n};\n\nexport const WebApiSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Custom.WebApiSkill\",\n type: {\n name: \"Composite\",\n className: \"WebApiSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n uri: {\n serializedName: \"uri\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n httpHeaders: {\n serializedName: \"httpHeaders\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } },\n },\n },\n httpMethod: {\n serializedName: \"httpMethod\",\n type: {\n name: \"String\",\n },\n },\n timeout: {\n serializedName: \"timeout\",\n type: {\n name: \"TimeSpan\",\n },\n },\n batchSize: {\n serializedName: \"batchSize\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n degreeOfParallelism: {\n serializedName: \"degreeOfParallelism\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n authResourceId: {\n serializedName: \"authResourceId\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n authIdentity: {\n serializedName: \"authIdentity\",\n type: {\n name: \"Composite\",\n className: \"SearchIndexerDataIdentity\",\n },\n },\n },\n },\n};\n\nexport const AzureMachineLearningSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Custom.AmlSkill\",\n type: {\n name: \"Composite\",\n className: \"AzureMachineLearningSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n scoringUri: {\n serializedName: \"uri\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n authenticationKey: {\n serializedName: \"key\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n resourceId: {\n serializedName: \"resourceId\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n timeout: {\n serializedName: \"timeout\",\n nullable: true,\n type: {\n name: \"TimeSpan\",\n },\n },\n region: {\n serializedName: \"region\",\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n degreeOfParallelism: {\n serializedName: \"degreeOfParallelism\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const AzureOpenAIEmbeddingSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill\",\n type: {\n name: \"Composite\",\n className: \"AzureOpenAIEmbeddingSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n ...AzureOpenAIParameters.type.modelProperties,\n dimensions: {\n serializedName: \"dimensions\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const VisionVectorizeSkill: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Skills.Vision.VectorizeSkill\",\n type: {\n name: \"Composite\",\n className: \"VisionVectorizeSkill\",\n uberParent: \"SearchIndexerSkill\",\n polymorphicDiscriminator: SearchIndexerSkill.type.polymorphicDiscriminator,\n modelProperties: {\n ...SearchIndexerSkill.type.modelProperties,\n modelVersion: {\n serializedName: \"modelVersion\",\n required: true,\n nullable: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const DefaultCognitiveServicesAccount: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.DefaultCognitiveServices\",\n type: {\n name: \"Composite\",\n className: \"DefaultCognitiveServicesAccount\",\n uberParent: \"CognitiveServicesAccount\",\n polymorphicDiscriminator:\n CognitiveServicesAccount.type.polymorphicDiscriminator,\n modelProperties: {\n ...CognitiveServicesAccount.type.modelProperties,\n },\n },\n};\n\nexport const CognitiveServicesAccountKey: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.CognitiveServicesByKey\",\n type: {\n name: \"Composite\",\n className: \"CognitiveServicesAccountKey\",\n uberParent: \"CognitiveServicesAccount\",\n polymorphicDiscriminator:\n CognitiveServicesAccount.type.polymorphicDiscriminator,\n modelProperties: {\n ...CognitiveServicesAccount.type.modelProperties,\n key: {\n serializedName: \"key\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SearchIndexerKnowledgeStoreTableProjectionSelector: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerKnowledgeStoreTableProjectionSelector\",\n modelProperties: {\n ...SearchIndexerKnowledgeStoreProjectionSelector.type.modelProperties,\n tableName: {\n serializedName: \"tableName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n };\n\nexport const SearchIndexerKnowledgeStoreBlobProjectionSelector: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerKnowledgeStoreBlobProjectionSelector\",\n modelProperties: {\n ...SearchIndexerKnowledgeStoreProjectionSelector.type.modelProperties,\n storageContainer: {\n serializedName: \"storageContainer\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n };\n\nexport const DistanceScoringFunction: coreClient.CompositeMapper = {\n serializedName: \"distance\",\n type: {\n name: \"Composite\",\n className: \"DistanceScoringFunction\",\n uberParent: \"ScoringFunction\",\n polymorphicDiscriminator: ScoringFunction.type.polymorphicDiscriminator,\n modelProperties: {\n ...ScoringFunction.type.modelProperties,\n parameters: {\n serializedName: \"distance\",\n type: {\n name: \"Composite\",\n className: \"DistanceScoringParameters\",\n },\n },\n },\n },\n};\n\nexport const FreshnessScoringFunction: coreClient.CompositeMapper = {\n serializedName: \"freshness\",\n type: {\n name: \"Composite\",\n className: \"FreshnessScoringFunction\",\n uberParent: \"ScoringFunction\",\n polymorphicDiscriminator: ScoringFunction.type.polymorphicDiscriminator,\n modelProperties: {\n ...ScoringFunction.type.modelProperties,\n parameters: {\n serializedName: \"freshness\",\n type: {\n name: \"Composite\",\n className: \"FreshnessScoringParameters\",\n },\n },\n },\n },\n};\n\nexport const MagnitudeScoringFunction: coreClient.CompositeMapper = {\n serializedName: \"magnitude\",\n type: {\n name: \"Composite\",\n className: \"MagnitudeScoringFunction\",\n uberParent: \"ScoringFunction\",\n polymorphicDiscriminator: ScoringFunction.type.polymorphicDiscriminator,\n modelProperties: {\n ...ScoringFunction.type.modelProperties,\n parameters: {\n serializedName: \"magnitude\",\n type: {\n name: \"Composite\",\n className: \"MagnitudeScoringParameters\",\n },\n },\n },\n },\n};\n\nexport const TagScoringFunction: coreClient.CompositeMapper = {\n serializedName: \"tag\",\n type: {\n name: \"Composite\",\n className: \"TagScoringFunction\",\n uberParent: \"ScoringFunction\",\n polymorphicDiscriminator: ScoringFunction.type.polymorphicDiscriminator,\n modelProperties: {\n ...ScoringFunction.type.modelProperties,\n parameters: {\n serializedName: \"tag\",\n type: {\n name: \"Composite\",\n className: \"TagScoringParameters\",\n },\n },\n },\n },\n};\n\nexport const CustomAnalyzer: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.CustomAnalyzer\",\n type: {\n name: \"Composite\",\n className: \"CustomAnalyzer\",\n uberParent: \"LexicalAnalyzer\",\n polymorphicDiscriminator: LexicalAnalyzer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalAnalyzer.type.modelProperties,\n tokenizerName: {\n serializedName: \"tokenizer\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n tokenFilters: {\n serializedName: \"tokenFilters\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n charFilters: {\n serializedName: \"charFilters\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const PatternAnalyzer: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.PatternAnalyzer\",\n type: {\n name: \"Composite\",\n className: \"PatternAnalyzer\",\n uberParent: \"LexicalAnalyzer\",\n polymorphicDiscriminator: LexicalAnalyzer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalAnalyzer.type.modelProperties,\n lowerCaseTerms: {\n defaultValue: true,\n serializedName: \"lowercase\",\n type: {\n name: \"Boolean\",\n },\n },\n pattern: {\n defaultValue: \"W+\",\n serializedName: \"pattern\",\n type: {\n name: \"String\",\n },\n },\n flags: {\n serializedName: \"flags\",\n type: {\n name: \"String\",\n },\n },\n stopwords: {\n serializedName: \"stopwords\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const LuceneStandardAnalyzer: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.StandardAnalyzer\",\n type: {\n name: \"Composite\",\n className: \"LuceneStandardAnalyzer\",\n uberParent: \"LexicalAnalyzer\",\n polymorphicDiscriminator: LexicalAnalyzer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalAnalyzer.type.modelProperties,\n maxTokenLength: {\n defaultValue: 255,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"maxTokenLength\",\n type: {\n name: \"Number\",\n },\n },\n stopwords: {\n serializedName: \"stopwords\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const StopAnalyzer: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.StopAnalyzer\",\n type: {\n name: \"Composite\",\n className: \"StopAnalyzer\",\n uberParent: \"LexicalAnalyzer\",\n polymorphicDiscriminator: LexicalAnalyzer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalAnalyzer.type.modelProperties,\n stopwords: {\n serializedName: \"stopwords\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const ClassicTokenizer: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.ClassicTokenizer\",\n type: {\n name: \"Composite\",\n className: \"ClassicTokenizer\",\n uberParent: \"LexicalTokenizer\",\n polymorphicDiscriminator: LexicalTokenizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalTokenizer.type.modelProperties,\n maxTokenLength: {\n defaultValue: 255,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"maxTokenLength\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const EdgeNGramTokenizer: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.EdgeNGramTokenizer\",\n type: {\n name: \"Composite\",\n className: \"EdgeNGramTokenizer\",\n uberParent: \"LexicalTokenizer\",\n polymorphicDiscriminator: LexicalTokenizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalTokenizer.type.modelProperties,\n minGram: {\n defaultValue: 1,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"minGram\",\n type: {\n name: \"Number\",\n },\n },\n maxGram: {\n defaultValue: 2,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"maxGram\",\n type: {\n name: \"Number\",\n },\n },\n tokenChars: {\n serializedName: \"tokenChars\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Enum\",\n allowedValues: [\n \"letter\",\n \"digit\",\n \"whitespace\",\n \"punctuation\",\n \"symbol\",\n ],\n },\n },\n },\n },\n },\n },\n};\n\nexport const KeywordTokenizer: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.KeywordTokenizer\",\n type: {\n name: \"Composite\",\n className: \"KeywordTokenizer\",\n uberParent: \"LexicalTokenizer\",\n polymorphicDiscriminator: LexicalTokenizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalTokenizer.type.modelProperties,\n bufferSize: {\n defaultValue: 256,\n serializedName: \"bufferSize\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const KeywordTokenizerV2: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.KeywordTokenizerV2\",\n type: {\n name: \"Composite\",\n className: \"KeywordTokenizerV2\",\n uberParent: \"LexicalTokenizer\",\n polymorphicDiscriminator: LexicalTokenizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalTokenizer.type.modelProperties,\n maxTokenLength: {\n defaultValue: 256,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"maxTokenLength\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const MicrosoftLanguageTokenizer: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.MicrosoftLanguageTokenizer\",\n type: {\n name: \"Composite\",\n className: \"MicrosoftLanguageTokenizer\",\n uberParent: \"LexicalTokenizer\",\n polymorphicDiscriminator: LexicalTokenizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalTokenizer.type.modelProperties,\n maxTokenLength: {\n defaultValue: 255,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"maxTokenLength\",\n type: {\n name: \"Number\",\n },\n },\n isSearchTokenizer: {\n defaultValue: false,\n serializedName: \"isSearchTokenizer\",\n type: {\n name: \"Boolean\",\n },\n },\n language: {\n serializedName: \"language\",\n type: {\n name: \"Enum\",\n allowedValues: [\n \"bangla\",\n \"bulgarian\",\n \"catalan\",\n \"chineseSimplified\",\n \"chineseTraditional\",\n \"croatian\",\n \"czech\",\n \"danish\",\n \"dutch\",\n \"english\",\n \"french\",\n \"german\",\n \"greek\",\n \"gujarati\",\n \"hindi\",\n \"icelandic\",\n \"indonesian\",\n \"italian\",\n \"japanese\",\n \"kannada\",\n \"korean\",\n \"malay\",\n \"malayalam\",\n \"marathi\",\n \"norwegianBokmaal\",\n \"polish\",\n \"portuguese\",\n \"portugueseBrazilian\",\n \"punjabi\",\n \"romanian\",\n \"russian\",\n \"serbianCyrillic\",\n \"serbianLatin\",\n \"slovenian\",\n \"spanish\",\n \"swedish\",\n \"tamil\",\n \"telugu\",\n \"thai\",\n \"ukrainian\",\n \"urdu\",\n \"vietnamese\",\n ],\n },\n },\n },\n },\n};\n\nexport const MicrosoftLanguageStemmingTokenizer: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer\",\n type: {\n name: \"Composite\",\n className: \"MicrosoftLanguageStemmingTokenizer\",\n uberParent: \"LexicalTokenizer\",\n polymorphicDiscriminator: LexicalTokenizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalTokenizer.type.modelProperties,\n maxTokenLength: {\n defaultValue: 255,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"maxTokenLength\",\n type: {\n name: \"Number\",\n },\n },\n isSearchTokenizer: {\n defaultValue: false,\n serializedName: \"isSearchTokenizer\",\n type: {\n name: \"Boolean\",\n },\n },\n language: {\n serializedName: \"language\",\n type: {\n name: \"Enum\",\n allowedValues: [\n \"arabic\",\n \"bangla\",\n \"bulgarian\",\n \"catalan\",\n \"croatian\",\n \"czech\",\n \"danish\",\n \"dutch\",\n \"english\",\n \"estonian\",\n \"finnish\",\n \"french\",\n \"german\",\n \"greek\",\n \"gujarati\",\n \"hebrew\",\n \"hindi\",\n \"hungarian\",\n \"icelandic\",\n \"indonesian\",\n \"italian\",\n \"kannada\",\n \"latvian\",\n \"lithuanian\",\n \"malay\",\n \"malayalam\",\n \"marathi\",\n \"norwegianBokmaal\",\n \"polish\",\n \"portuguese\",\n \"portugueseBrazilian\",\n \"punjabi\",\n \"romanian\",\n \"russian\",\n \"serbianCyrillic\",\n \"serbianLatin\",\n \"slovak\",\n \"slovenian\",\n \"spanish\",\n \"swedish\",\n \"tamil\",\n \"telugu\",\n \"turkish\",\n \"ukrainian\",\n \"urdu\",\n ],\n },\n },\n },\n },\n};\n\nexport const NGramTokenizer: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.NGramTokenizer\",\n type: {\n name: \"Composite\",\n className: \"NGramTokenizer\",\n uberParent: \"LexicalTokenizer\",\n polymorphicDiscriminator: LexicalTokenizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalTokenizer.type.modelProperties,\n minGram: {\n defaultValue: 1,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"minGram\",\n type: {\n name: \"Number\",\n },\n },\n maxGram: {\n defaultValue: 2,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"maxGram\",\n type: {\n name: \"Number\",\n },\n },\n tokenChars: {\n serializedName: \"tokenChars\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Enum\",\n allowedValues: [\n \"letter\",\n \"digit\",\n \"whitespace\",\n \"punctuation\",\n \"symbol\",\n ],\n },\n },\n },\n },\n },\n },\n};\n\nexport const PathHierarchyTokenizerV2: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.PathHierarchyTokenizerV2\",\n type: {\n name: \"Composite\",\n className: \"PathHierarchyTokenizerV2\",\n uberParent: \"LexicalTokenizer\",\n polymorphicDiscriminator: LexicalTokenizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalTokenizer.type.modelProperties,\n delimiter: {\n defaultValue: \"/\",\n serializedName: \"delimiter\",\n type: {\n name: \"String\",\n },\n },\n replacement: {\n defaultValue: \"/\",\n serializedName: \"replacement\",\n type: {\n name: \"String\",\n },\n },\n maxTokenLength: {\n defaultValue: 300,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"maxTokenLength\",\n type: {\n name: \"Number\",\n },\n },\n reverseTokenOrder: {\n defaultValue: false,\n serializedName: \"reverse\",\n type: {\n name: \"Boolean\",\n },\n },\n numberOfTokensToSkip: {\n defaultValue: 0,\n serializedName: \"skip\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const PatternTokenizer: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.PatternTokenizer\",\n type: {\n name: \"Composite\",\n className: \"PatternTokenizer\",\n uberParent: \"LexicalTokenizer\",\n polymorphicDiscriminator: LexicalTokenizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalTokenizer.type.modelProperties,\n pattern: {\n defaultValue: \"W+\",\n serializedName: \"pattern\",\n type: {\n name: \"String\",\n },\n },\n flags: {\n serializedName: \"flags\",\n type: {\n name: \"String\",\n },\n },\n group: {\n defaultValue: -1,\n serializedName: \"group\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const LuceneStandardTokenizer: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.StandardTokenizer\",\n type: {\n name: \"Composite\",\n className: \"LuceneStandardTokenizer\",\n uberParent: \"LexicalTokenizer\",\n polymorphicDiscriminator: LexicalTokenizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalTokenizer.type.modelProperties,\n maxTokenLength: {\n defaultValue: 255,\n serializedName: \"maxTokenLength\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const LuceneStandardTokenizerV2: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.StandardTokenizerV2\",\n type: {\n name: \"Composite\",\n className: \"LuceneStandardTokenizerV2\",\n uberParent: \"LexicalTokenizer\",\n polymorphicDiscriminator: LexicalTokenizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalTokenizer.type.modelProperties,\n maxTokenLength: {\n defaultValue: 255,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"maxTokenLength\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const UaxUrlEmailTokenizer: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.UaxUrlEmailTokenizer\",\n type: {\n name: \"Composite\",\n className: \"UaxUrlEmailTokenizer\",\n uberParent: \"LexicalTokenizer\",\n polymorphicDiscriminator: LexicalTokenizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalTokenizer.type.modelProperties,\n maxTokenLength: {\n defaultValue: 255,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"maxTokenLength\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const AsciiFoldingTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.AsciiFoldingTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"AsciiFoldingTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n preserveOriginal: {\n defaultValue: false,\n serializedName: \"preserveOriginal\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n};\n\nexport const CjkBigramTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.CjkBigramTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"CjkBigramTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n ignoreScripts: {\n serializedName: \"ignoreScripts\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Enum\",\n allowedValues: [\"han\", \"hiragana\", \"katakana\", \"hangul\"],\n },\n },\n },\n },\n outputUnigrams: {\n defaultValue: false,\n serializedName: \"outputUnigrams\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n};\n\nexport const CommonGramTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.CommonGramTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"CommonGramTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n commonWords: {\n serializedName: \"commonWords\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n ignoreCase: {\n defaultValue: false,\n serializedName: \"ignoreCase\",\n type: {\n name: \"Boolean\",\n },\n },\n useQueryMode: {\n defaultValue: false,\n serializedName: \"queryMode\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n};\n\nexport const DictionaryDecompounderTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"DictionaryDecompounderTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n wordList: {\n serializedName: \"wordList\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n minWordSize: {\n defaultValue: 5,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"minWordSize\",\n type: {\n name: \"Number\",\n },\n },\n minSubwordSize: {\n defaultValue: 2,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"minSubwordSize\",\n type: {\n name: \"Number\",\n },\n },\n maxSubwordSize: {\n defaultValue: 15,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"maxSubwordSize\",\n type: {\n name: \"Number\",\n },\n },\n onlyLongestMatch: {\n defaultValue: false,\n serializedName: \"onlyLongestMatch\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n};\n\nexport const EdgeNGramTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.EdgeNGramTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"EdgeNGramTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n minGram: {\n defaultValue: 1,\n serializedName: \"minGram\",\n type: {\n name: \"Number\",\n },\n },\n maxGram: {\n defaultValue: 2,\n serializedName: \"maxGram\",\n type: {\n name: \"Number\",\n },\n },\n side: {\n serializedName: \"side\",\n type: {\n name: \"Enum\",\n allowedValues: [\"front\", \"back\"],\n },\n },\n },\n },\n};\n\nexport const EdgeNGramTokenFilterV2: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.EdgeNGramTokenFilterV2\",\n type: {\n name: \"Composite\",\n className: \"EdgeNGramTokenFilterV2\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n minGram: {\n defaultValue: 1,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"minGram\",\n type: {\n name: \"Number\",\n },\n },\n maxGram: {\n defaultValue: 2,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"maxGram\",\n type: {\n name: \"Number\",\n },\n },\n side: {\n serializedName: \"side\",\n type: {\n name: \"Enum\",\n allowedValues: [\"front\", \"back\"],\n },\n },\n },\n },\n};\n\nexport const ElisionTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.ElisionTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"ElisionTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n articles: {\n serializedName: \"articles\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const KeepTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.KeepTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"KeepTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n keepWords: {\n serializedName: \"keepWords\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n lowerCaseKeepWords: {\n defaultValue: false,\n serializedName: \"keepWordsCase\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n};\n\nexport const KeywordMarkerTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.KeywordMarkerTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"KeywordMarkerTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n keywords: {\n serializedName: \"keywords\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n ignoreCase: {\n defaultValue: false,\n serializedName: \"ignoreCase\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n};\n\nexport const LengthTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.LengthTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"LengthTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n minLength: {\n defaultValue: 0,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"min\",\n type: {\n name: \"Number\",\n },\n },\n maxLength: {\n defaultValue: 300,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"max\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const LimitTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.LimitTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"LimitTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n maxTokenCount: {\n defaultValue: 1,\n serializedName: \"maxTokenCount\",\n type: {\n name: \"Number\",\n },\n },\n consumeAllTokens: {\n defaultValue: false,\n serializedName: \"consumeAllTokens\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n};\n\nexport const NGramTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.NGramTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"NGramTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n minGram: {\n defaultValue: 1,\n serializedName: \"minGram\",\n type: {\n name: \"Number\",\n },\n },\n maxGram: {\n defaultValue: 2,\n serializedName: \"maxGram\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const NGramTokenFilterV2: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.NGramTokenFilterV2\",\n type: {\n name: \"Composite\",\n className: \"NGramTokenFilterV2\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n minGram: {\n defaultValue: 1,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"minGram\",\n type: {\n name: \"Number\",\n },\n },\n maxGram: {\n defaultValue: 2,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"maxGram\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const PatternCaptureTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.PatternCaptureTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"PatternCaptureTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n patterns: {\n serializedName: \"patterns\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n preserveOriginal: {\n defaultValue: true,\n serializedName: \"preserveOriginal\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n};\n\nexport const PatternReplaceTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.PatternReplaceTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"PatternReplaceTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n pattern: {\n serializedName: \"pattern\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n replacement: {\n serializedName: \"replacement\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneticTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.PhoneticTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"PhoneticTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n encoder: {\n serializedName: \"encoder\",\n type: {\n name: \"Enum\",\n allowedValues: [\n \"metaphone\",\n \"doubleMetaphone\",\n \"soundex\",\n \"refinedSoundex\",\n \"caverphone1\",\n \"caverphone2\",\n \"cologne\",\n \"nysiis\",\n \"koelnerPhonetik\",\n \"haasePhonetik\",\n \"beiderMorse\",\n ],\n },\n },\n replaceOriginalTokens: {\n defaultValue: true,\n serializedName: \"replace\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n};\n\nexport const ShingleTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.ShingleTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"ShingleTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n maxShingleSize: {\n defaultValue: 2,\n constraints: {\n InclusiveMinimum: 2,\n },\n serializedName: \"maxShingleSize\",\n type: {\n name: \"Number\",\n },\n },\n minShingleSize: {\n defaultValue: 2,\n constraints: {\n InclusiveMinimum: 2,\n },\n serializedName: \"minShingleSize\",\n type: {\n name: \"Number\",\n },\n },\n outputUnigrams: {\n defaultValue: true,\n serializedName: \"outputUnigrams\",\n type: {\n name: \"Boolean\",\n },\n },\n outputUnigramsIfNoShingles: {\n defaultValue: false,\n serializedName: \"outputUnigramsIfNoShingles\",\n type: {\n name: \"Boolean\",\n },\n },\n tokenSeparator: {\n defaultValue: \" \",\n serializedName: \"tokenSeparator\",\n type: {\n name: \"String\",\n },\n },\n filterToken: {\n defaultValue: \"_\",\n serializedName: \"filterToken\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const SnowballTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.SnowballTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"SnowballTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n language: {\n serializedName: \"language\",\n required: true,\n type: {\n name: \"Enum\",\n allowedValues: [\n \"armenian\",\n \"basque\",\n \"catalan\",\n \"danish\",\n \"dutch\",\n \"english\",\n \"finnish\",\n \"french\",\n \"german\",\n \"german2\",\n \"hungarian\",\n \"italian\",\n \"kp\",\n \"lovins\",\n \"norwegian\",\n \"porter\",\n \"portuguese\",\n \"romanian\",\n \"russian\",\n \"spanish\",\n \"swedish\",\n \"turkish\",\n ],\n },\n },\n },\n },\n};\n\nexport const StemmerTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.StemmerTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"StemmerTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n language: {\n serializedName: \"language\",\n required: true,\n type: {\n name: \"Enum\",\n allowedValues: [\n \"arabic\",\n \"armenian\",\n \"basque\",\n \"brazilian\",\n \"bulgarian\",\n \"catalan\",\n \"czech\",\n \"danish\",\n \"dutch\",\n \"dutchKp\",\n \"english\",\n \"lightEnglish\",\n \"minimalEnglish\",\n \"possessiveEnglish\",\n \"porter2\",\n \"lovins\",\n \"finnish\",\n \"lightFinnish\",\n \"french\",\n \"lightFrench\",\n \"minimalFrench\",\n \"galician\",\n \"minimalGalician\",\n \"german\",\n \"german2\",\n \"lightGerman\",\n \"minimalGerman\",\n \"greek\",\n \"hindi\",\n \"hungarian\",\n \"lightHungarian\",\n \"indonesian\",\n \"irish\",\n \"italian\",\n \"lightItalian\",\n \"sorani\",\n \"latvian\",\n \"norwegian\",\n \"lightNorwegian\",\n \"minimalNorwegian\",\n \"lightNynorsk\",\n \"minimalNynorsk\",\n \"portuguese\",\n \"lightPortuguese\",\n \"minimalPortuguese\",\n \"portugueseRslp\",\n \"romanian\",\n \"russian\",\n \"lightRussian\",\n \"spanish\",\n \"lightSpanish\",\n \"swedish\",\n \"lightSwedish\",\n \"turkish\",\n ],\n },\n },\n },\n },\n};\n\nexport const StemmerOverrideTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.StemmerOverrideTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"StemmerOverrideTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n rules: {\n serializedName: \"rules\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const StopwordsTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.StopwordsTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"StopwordsTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n stopwords: {\n serializedName: \"stopwords\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n stopwordsList: {\n serializedName: \"stopwordsList\",\n type: {\n name: \"Enum\",\n allowedValues: [\n \"arabic\",\n \"armenian\",\n \"basque\",\n \"brazilian\",\n \"bulgarian\",\n \"catalan\",\n \"czech\",\n \"danish\",\n \"dutch\",\n \"english\",\n \"finnish\",\n \"french\",\n \"galician\",\n \"german\",\n \"greek\",\n \"hindi\",\n \"hungarian\",\n \"indonesian\",\n \"irish\",\n \"italian\",\n \"latvian\",\n \"norwegian\",\n \"persian\",\n \"portuguese\",\n \"romanian\",\n \"russian\",\n \"sorani\",\n \"spanish\",\n \"swedish\",\n \"thai\",\n \"turkish\",\n ],\n },\n },\n ignoreCase: {\n defaultValue: false,\n serializedName: \"ignoreCase\",\n type: {\n name: \"Boolean\",\n },\n },\n removeTrailingStopWords: {\n defaultValue: true,\n serializedName: \"removeTrailing\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n};\n\nexport const SynonymTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.SynonymTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"SynonymTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n synonyms: {\n serializedName: \"synonyms\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n ignoreCase: {\n defaultValue: false,\n serializedName: \"ignoreCase\",\n type: {\n name: \"Boolean\",\n },\n },\n expand: {\n defaultValue: true,\n serializedName: \"expand\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n};\n\nexport const TruncateTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.TruncateTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"TruncateTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n length: {\n defaultValue: 300,\n constraints: {\n InclusiveMaximum: 300,\n },\n serializedName: \"length\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const UniqueTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.UniqueTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"UniqueTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n onlyOnSamePosition: {\n defaultValue: false,\n serializedName: \"onlyOnSamePosition\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n};\n\nexport const WordDelimiterTokenFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.WordDelimiterTokenFilter\",\n type: {\n name: \"Composite\",\n className: \"WordDelimiterTokenFilter\",\n uberParent: \"TokenFilter\",\n polymorphicDiscriminator: TokenFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...TokenFilter.type.modelProperties,\n generateWordParts: {\n defaultValue: true,\n serializedName: \"generateWordParts\",\n type: {\n name: \"Boolean\",\n },\n },\n generateNumberParts: {\n defaultValue: true,\n serializedName: \"generateNumberParts\",\n type: {\n name: \"Boolean\",\n },\n },\n catenateWords: {\n defaultValue: false,\n serializedName: \"catenateWords\",\n type: {\n name: \"Boolean\",\n },\n },\n catenateNumbers: {\n defaultValue: false,\n serializedName: \"catenateNumbers\",\n type: {\n name: \"Boolean\",\n },\n },\n catenateAll: {\n defaultValue: false,\n serializedName: \"catenateAll\",\n type: {\n name: \"Boolean\",\n },\n },\n splitOnCaseChange: {\n defaultValue: true,\n serializedName: \"splitOnCaseChange\",\n type: {\n name: \"Boolean\",\n },\n },\n preserveOriginal: {\n defaultValue: false,\n serializedName: \"preserveOriginal\",\n type: {\n name: \"Boolean\",\n },\n },\n splitOnNumerics: {\n defaultValue: true,\n serializedName: \"splitOnNumerics\",\n type: {\n name: \"Boolean\",\n },\n },\n stemEnglishPossessive: {\n defaultValue: true,\n serializedName: \"stemEnglishPossessive\",\n type: {\n name: \"Boolean\",\n },\n },\n protectedWords: {\n serializedName: \"protectedWords\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const MappingCharFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.MappingCharFilter\",\n type: {\n name: \"Composite\",\n className: \"MappingCharFilter\",\n uberParent: \"CharFilter\",\n polymorphicDiscriminator: CharFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...CharFilter.type.modelProperties,\n mappings: {\n serializedName: \"mappings\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const PatternReplaceCharFilter: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.PatternReplaceCharFilter\",\n type: {\n name: \"Composite\",\n className: \"PatternReplaceCharFilter\",\n uberParent: \"CharFilter\",\n polymorphicDiscriminator: CharFilter.type.polymorphicDiscriminator,\n modelProperties: {\n ...CharFilter.type.modelProperties,\n pattern: {\n serializedName: \"pattern\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n replacement: {\n serializedName: \"replacement\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const CustomNormalizer: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.CustomNormalizer\",\n type: {\n name: \"Composite\",\n className: \"CustomNormalizer\",\n uberParent: \"LexicalNormalizer\",\n polymorphicDiscriminator: LexicalNormalizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...LexicalNormalizer.type.modelProperties,\n tokenFilters: {\n serializedName: \"tokenFilters\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n charFilters: {\n serializedName: \"charFilters\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const ClassicSimilarity: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.ClassicSimilarity\",\n type: {\n name: \"Composite\",\n className: \"ClassicSimilarity\",\n uberParent: \"Similarity\",\n polymorphicDiscriminator: Similarity.type.polymorphicDiscriminator,\n modelProperties: {\n ...Similarity.type.modelProperties,\n },\n },\n};\n\nexport const BM25Similarity: coreClient.CompositeMapper = {\n serializedName: \"#Microsoft.Azure.Search.BM25Similarity\",\n type: {\n name: \"Composite\",\n className: \"BM25Similarity\",\n uberParent: \"Similarity\",\n polymorphicDiscriminator: Similarity.type.polymorphicDiscriminator,\n modelProperties: {\n ...Similarity.type.modelProperties,\n k1: {\n serializedName: \"k1\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n b: {\n serializedName: \"b\",\n nullable: true,\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const HnswAlgorithmConfiguration: coreClient.CompositeMapper = {\n serializedName: \"hnsw\",\n type: {\n name: \"Composite\",\n className: \"HnswAlgorithmConfiguration\",\n uberParent: \"VectorSearchAlgorithmConfiguration\",\n polymorphicDiscriminator:\n VectorSearchAlgorithmConfiguration.type.polymorphicDiscriminator,\n modelProperties: {\n ...VectorSearchAlgorithmConfiguration.type.modelProperties,\n parameters: {\n serializedName: \"hnswParameters\",\n type: {\n name: \"Composite\",\n className: \"HnswParameters\",\n },\n },\n },\n },\n};\n\nexport const ExhaustiveKnnAlgorithmConfiguration: coreClient.CompositeMapper = {\n serializedName: \"exhaustiveKnn\",\n type: {\n name: \"Composite\",\n className: \"ExhaustiveKnnAlgorithmConfiguration\",\n uberParent: \"VectorSearchAlgorithmConfiguration\",\n polymorphicDiscriminator:\n VectorSearchAlgorithmConfiguration.type.polymorphicDiscriminator,\n modelProperties: {\n ...VectorSearchAlgorithmConfiguration.type.modelProperties,\n parameters: {\n serializedName: \"exhaustiveKnnParameters\",\n type: {\n name: \"Composite\",\n className: \"ExhaustiveKnnParameters\",\n },\n },\n },\n },\n};\n\nexport const AzureOpenAIVectorizer: coreClient.CompositeMapper = {\n serializedName: \"azureOpenAI\",\n type: {\n name: \"Composite\",\n className: \"AzureOpenAIVectorizer\",\n uberParent: \"VectorSearchVectorizer\",\n polymorphicDiscriminator:\n VectorSearchVectorizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...VectorSearchVectorizer.type.modelProperties,\n parameters: {\n serializedName: \"azureOpenAIParameters\",\n type: {\n name: \"Composite\",\n className: \"AzureOpenAIParameters\",\n },\n },\n },\n },\n};\n\nexport const WebApiVectorizer: coreClient.CompositeMapper = {\n serializedName: \"customWebApi\",\n type: {\n name: \"Composite\",\n className: \"WebApiVectorizer\",\n uberParent: \"VectorSearchVectorizer\",\n polymorphicDiscriminator:\n VectorSearchVectorizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...VectorSearchVectorizer.type.modelProperties,\n parameters: {\n serializedName: \"customWebApiParameters\",\n type: {\n name: \"Composite\",\n className: \"WebApiParameters\",\n },\n },\n },\n },\n};\n\nexport const AIServicesVisionVectorizer: coreClient.CompositeMapper = {\n serializedName: \"aiServicesVision\",\n type: {\n name: \"Composite\",\n className: \"AIServicesVisionVectorizer\",\n uberParent: \"VectorSearchVectorizer\",\n polymorphicDiscriminator:\n VectorSearchVectorizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...VectorSearchVectorizer.type.modelProperties,\n aIServicesVisionParameters: {\n serializedName: \"aiServicesVisionParameters\",\n type: {\n name: \"Composite\",\n className: \"AIServicesVisionParameters\",\n },\n },\n },\n },\n};\n\nexport const AMLVectorizer: coreClient.CompositeMapper = {\n serializedName: \"aml\",\n type: {\n name: \"Composite\",\n className: \"AMLVectorizer\",\n uberParent: \"VectorSearchVectorizer\",\n polymorphicDiscriminator:\n VectorSearchVectorizer.type.polymorphicDiscriminator,\n modelProperties: {\n ...VectorSearchVectorizer.type.modelProperties,\n aMLParameters: {\n serializedName: \"amlParameters\",\n type: {\n name: \"Composite\",\n className: \"AMLParameters\",\n },\n },\n },\n },\n};\n\nexport const ScalarQuantizationCompression: coreClient.CompositeMapper = {\n serializedName: \"scalarQuantization\",\n type: {\n name: \"Composite\",\n className: \"ScalarQuantizationCompression\",\n uberParent: \"VectorSearchCompression\",\n polymorphicDiscriminator:\n VectorSearchCompression.type.polymorphicDiscriminator,\n modelProperties: {\n ...VectorSearchCompression.type.modelProperties,\n parameters: {\n serializedName: \"scalarQuantizationParameters\",\n type: {\n name: \"Composite\",\n className: \"ScalarQuantizationParameters\",\n },\n },\n },\n },\n};\n\nexport const BinaryQuantizationCompression: coreClient.CompositeMapper = {\n serializedName: \"binaryQuantization\",\n type: {\n name: \"Composite\",\n className: \"BinaryQuantizationCompression\",\n uberParent: \"VectorSearchCompression\",\n polymorphicDiscriminator:\n VectorSearchCompression.type.polymorphicDiscriminator,\n modelProperties: {\n ...VectorSearchCompression.type.modelProperties,\n },\n },\n};\n\nexport const SearchIndexerKnowledgeStoreObjectProjectionSelector: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerKnowledgeStoreObjectProjectionSelector\",\n modelProperties: {\n ...SearchIndexerKnowledgeStoreBlobProjectionSelector.type\n .modelProperties,\n },\n },\n };\n\nexport const SearchIndexerKnowledgeStoreFileProjectionSelector: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"SearchIndexerKnowledgeStoreFileProjectionSelector\",\n modelProperties: {\n ...SearchIndexerKnowledgeStoreBlobProjectionSelector.type\n .modelProperties,\n },\n },\n };\n\nexport let discriminators = {\n SearchIndexerDataIdentity: SearchIndexerDataIdentity,\n DataChangeDetectionPolicy: DataChangeDetectionPolicy,\n DataDeletionDetectionPolicy: DataDeletionDetectionPolicy,\n SearchIndexerSkill: SearchIndexerSkill,\n CognitiveServicesAccount: CognitiveServicesAccount,\n ScoringFunction: ScoringFunction,\n LexicalAnalyzer: LexicalAnalyzer,\n LexicalTokenizer: LexicalTokenizer,\n TokenFilter: TokenFilter,\n CharFilter: CharFilter,\n LexicalNormalizer: LexicalNormalizer,\n Similarity: Similarity,\n VectorSearchAlgorithmConfiguration: VectorSearchAlgorithmConfiguration,\n VectorSearchVectorizer: VectorSearchVectorizer,\n VectorSearchCompression: VectorSearchCompression,\n \"SearchIndexerDataIdentity.#Microsoft.Azure.Search.DataNoneIdentity\":\n SearchIndexerDataNoneIdentity,\n \"SearchIndexerDataIdentity.#Microsoft.Azure.Search.DataUserAssignedIdentity\":\n SearchIndexerDataUserAssignedIdentity,\n \"DataChangeDetectionPolicy.#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy\":\n HighWaterMarkChangeDetectionPolicy,\n \"DataChangeDetectionPolicy.#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy\":\n SqlIntegratedChangeTrackingPolicy,\n \"DataDeletionDetectionPolicy.#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy\":\n SoftDeleteColumnDeletionDetectionPolicy,\n \"DataDeletionDetectionPolicy.#Microsoft.Azure.Search.NativeBlobSoftDeleteDeletionDetectionPolicy\":\n NativeBlobSoftDeleteDeletionDetectionPolicy,\n \"SearchIndexerSkill.#Microsoft.Skills.Util.ConditionalSkill\":\n ConditionalSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Text.KeyPhraseExtractionSkill\":\n KeyPhraseExtractionSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Vision.OcrSkill\": OcrSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Vision.ImageAnalysisSkill\":\n ImageAnalysisSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Text.LanguageDetectionSkill\":\n LanguageDetectionSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Util.ShaperSkill\": ShaperSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Text.MergeSkill\": MergeSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Text.EntityRecognitionSkill\":\n EntityRecognitionSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Text.SentimentSkill\": SentimentSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Text.V3.SentimentSkill\":\n SentimentSkillV3,\n \"SearchIndexerSkill.#Microsoft.Skills.Text.V3.EntityLinkingSkill\":\n EntityLinkingSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Text.V3.EntityRecognitionSkill\":\n EntityRecognitionSkillV3,\n \"SearchIndexerSkill.#Microsoft.Skills.Text.PIIDetectionSkill\":\n PIIDetectionSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Text.SplitSkill\": SplitSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Text.CustomEntityLookupSkill\":\n CustomEntityLookupSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Text.TranslationSkill\":\n TextTranslationSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Util.DocumentExtractionSkill\":\n DocumentExtractionSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Custom.WebApiSkill\": WebApiSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Custom.AmlSkill\":\n AzureMachineLearningSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill\":\n AzureOpenAIEmbeddingSkill,\n \"SearchIndexerSkill.#Microsoft.Skills.Vision.VectorizeSkill\":\n VisionVectorizeSkill,\n \"CognitiveServicesAccount.#Microsoft.Azure.Search.DefaultCognitiveServices\":\n DefaultCognitiveServicesAccount,\n \"CognitiveServicesAccount.#Microsoft.Azure.Search.CognitiveServicesByKey\":\n CognitiveServicesAccountKey,\n \"ScoringFunction.distance\": DistanceScoringFunction,\n \"ScoringFunction.freshness\": FreshnessScoringFunction,\n \"ScoringFunction.magnitude\": MagnitudeScoringFunction,\n \"ScoringFunction.tag\": TagScoringFunction,\n \"LexicalAnalyzer.#Microsoft.Azure.Search.CustomAnalyzer\": CustomAnalyzer,\n \"LexicalAnalyzer.#Microsoft.Azure.Search.PatternAnalyzer\": PatternAnalyzer,\n \"LexicalAnalyzer.#Microsoft.Azure.Search.StandardAnalyzer\":\n LuceneStandardAnalyzer,\n \"LexicalAnalyzer.#Microsoft.Azure.Search.StopAnalyzer\": StopAnalyzer,\n \"LexicalTokenizer.#Microsoft.Azure.Search.ClassicTokenizer\": ClassicTokenizer,\n \"LexicalTokenizer.#Microsoft.Azure.Search.EdgeNGramTokenizer\":\n EdgeNGramTokenizer,\n \"LexicalTokenizer.#Microsoft.Azure.Search.KeywordTokenizer\": KeywordTokenizer,\n \"LexicalTokenizer.#Microsoft.Azure.Search.KeywordTokenizerV2\":\n KeywordTokenizerV2,\n \"LexicalTokenizer.#Microsoft.Azure.Search.MicrosoftLanguageTokenizer\":\n MicrosoftLanguageTokenizer,\n \"LexicalTokenizer.#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer\":\n MicrosoftLanguageStemmingTokenizer,\n \"LexicalTokenizer.#Microsoft.Azure.Search.NGramTokenizer\": NGramTokenizer,\n \"LexicalTokenizer.#Microsoft.Azure.Search.PathHierarchyTokenizerV2\":\n PathHierarchyTokenizerV2,\n \"LexicalTokenizer.#Microsoft.Azure.Search.PatternTokenizer\": PatternTokenizer,\n \"LexicalTokenizer.#Microsoft.Azure.Search.StandardTokenizer\":\n LuceneStandardTokenizer,\n \"LexicalTokenizer.#Microsoft.Azure.Search.StandardTokenizerV2\":\n LuceneStandardTokenizerV2,\n \"LexicalTokenizer.#Microsoft.Azure.Search.UaxUrlEmailTokenizer\":\n UaxUrlEmailTokenizer,\n \"TokenFilter.#Microsoft.Azure.Search.AsciiFoldingTokenFilter\":\n AsciiFoldingTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.CjkBigramTokenFilter\":\n CjkBigramTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.CommonGramTokenFilter\":\n CommonGramTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter\":\n DictionaryDecompounderTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.EdgeNGramTokenFilter\":\n EdgeNGramTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.EdgeNGramTokenFilterV2\":\n EdgeNGramTokenFilterV2,\n \"TokenFilter.#Microsoft.Azure.Search.ElisionTokenFilter\": ElisionTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.KeepTokenFilter\": KeepTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.KeywordMarkerTokenFilter\":\n KeywordMarkerTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.LengthTokenFilter\": LengthTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.LimitTokenFilter\": LimitTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.NGramTokenFilter\": NGramTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.NGramTokenFilterV2\": NGramTokenFilterV2,\n \"TokenFilter.#Microsoft.Azure.Search.PatternCaptureTokenFilter\":\n PatternCaptureTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.PatternReplaceTokenFilter\":\n PatternReplaceTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.PhoneticTokenFilter\":\n PhoneticTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.ShingleTokenFilter\": ShingleTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.SnowballTokenFilter\":\n SnowballTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.StemmerTokenFilter\": StemmerTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.StemmerOverrideTokenFilter\":\n StemmerOverrideTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.StopwordsTokenFilter\":\n StopwordsTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.SynonymTokenFilter\": SynonymTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.TruncateTokenFilter\":\n TruncateTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.UniqueTokenFilter\": UniqueTokenFilter,\n \"TokenFilter.#Microsoft.Azure.Search.WordDelimiterTokenFilter\":\n WordDelimiterTokenFilter,\n \"CharFilter.#Microsoft.Azure.Search.MappingCharFilter\": MappingCharFilter,\n \"CharFilter.#Microsoft.Azure.Search.PatternReplaceCharFilter\":\n PatternReplaceCharFilter,\n \"LexicalNormalizer.#Microsoft.Azure.Search.CustomNormalizer\":\n CustomNormalizer,\n \"Similarity.#Microsoft.Azure.Search.ClassicSimilarity\": ClassicSimilarity,\n \"Similarity.#Microsoft.Azure.Search.BM25Similarity\": BM25Similarity,\n \"VectorSearchAlgorithmConfiguration.hnsw\": HnswAlgorithmConfiguration,\n \"VectorSearchAlgorithmConfiguration.exhaustiveKnn\":\n ExhaustiveKnnAlgorithmConfiguration,\n \"VectorSearchVectorizer.azureOpenAI\": AzureOpenAIVectorizer,\n \"VectorSearchVectorizer.customWebApi\": WebApiVectorizer,\n \"VectorSearchVectorizer.aiServicesVision\": AIServicesVisionVectorizer,\n \"VectorSearchVectorizer.aml\": AMLVectorizer,\n \"VectorSearchCompression.scalarQuantization\": ScalarQuantizationCompression,\n \"VectorSearchCompression.binaryQuantization\": BinaryQuantizationCompression,\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 SearchIndexerDataSource as SearchIndexerDataSourceMapper,\n DocumentKeysOrIds as DocumentKeysOrIdsMapper,\n SearchIndexer as SearchIndexerMapper,\n SearchIndexerSkillset as SearchIndexerSkillsetMapper,\n SkillNames as SkillNamesMapper,\n SynonymMap as SynonymMapMapper,\n SearchIndex as SearchIndexMapper,\n AnalyzeRequest as AnalyzeRequestMapper,\n SearchAlias as SearchAliasMapper,\n} from \"../models/mappers\";\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 dataSource: OperationParameter = {\n parameterPath: \"dataSource\",\n mapper: SearchIndexerDataSourceMapper,\n};\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 dataSourceName: OperationURLParameter = {\n parameterPath: \"dataSourceName\",\n mapper: {\n serializedName: \"dataSourceName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const ifMatch: OperationParameter = {\n parameterPath: [\"options\", \"ifMatch\"],\n mapper: {\n serializedName: \"If-Match\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const ifNoneMatch: OperationParameter = {\n parameterPath: [\"options\", \"ifNoneMatch\"],\n mapper: {\n serializedName: \"If-None-Match\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const prefer: OperationParameter = {\n parameterPath: \"prefer\",\n mapper: {\n defaultValue: \"return=representation\",\n isConstant: true,\n serializedName: \"Prefer\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const apiVersion: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n serializedName: \"api-version\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const skipIndexerResetRequirementForCache: OperationQueryParameter = {\n parameterPath: [\"options\", \"skipIndexerResetRequirementForCache\"],\n mapper: {\n serializedName: \"ignoreResetRequirements\",\n type: {\n name: \"Boolean\",\n },\n },\n};\n\nexport const select: OperationQueryParameter = {\n parameterPath: [\"options\", \"select\"],\n mapper: {\n serializedName: \"$select\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const indexerName: OperationURLParameter = {\n parameterPath: \"indexerName\",\n mapper: {\n serializedName: \"indexerName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const keysOrIds: OperationParameter = {\n parameterPath: [\"options\", \"keysOrIds\"],\n mapper: DocumentKeysOrIdsMapper,\n};\n\nexport const overwrite: OperationQueryParameter = {\n parameterPath: [\"options\", \"overwrite\"],\n mapper: {\n defaultValue: false,\n serializedName: \"overwrite\",\n type: {\n name: \"Boolean\",\n },\n },\n};\n\nexport const indexer: OperationParameter = {\n parameterPath: \"indexer\",\n mapper: SearchIndexerMapper,\n};\n\nexport const disableCacheReprocessingChangeDetection: OperationQueryParameter =\n {\n parameterPath: [\"options\", \"disableCacheReprocessingChangeDetection\"],\n mapper: {\n serializedName: \"disableCacheReprocessingChangeDetection\",\n type: {\n name: \"Boolean\",\n },\n },\n };\n\nexport const skillset: OperationParameter = {\n parameterPath: \"skillset\",\n mapper: SearchIndexerSkillsetMapper,\n};\n\nexport const skillsetName: OperationURLParameter = {\n parameterPath: \"skillsetName\",\n mapper: {\n serializedName: \"skillsetName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const skillNames: OperationParameter = {\n parameterPath: \"skillNames\",\n mapper: SkillNamesMapper,\n};\n\nexport const synonymMap: OperationParameter = {\n parameterPath: \"synonymMap\",\n mapper: SynonymMapMapper,\n};\n\nexport const synonymMapName: OperationURLParameter = {\n parameterPath: \"synonymMapName\",\n mapper: {\n serializedName: \"synonymMapName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const index: OperationParameter = {\n parameterPath: \"index\",\n mapper: SearchIndexMapper,\n};\n\nexport const indexName: OperationURLParameter = {\n parameterPath: \"indexName\",\n mapper: {\n serializedName: \"indexName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const allowIndexDowntime: OperationQueryParameter = {\n parameterPath: [\"options\", \"allowIndexDowntime\"],\n mapper: {\n serializedName: \"allowIndexDowntime\",\n type: {\n name: \"Boolean\",\n },\n },\n};\n\nexport const request: OperationParameter = {\n parameterPath: \"request\",\n mapper: AnalyzeRequestMapper,\n};\n\nexport const alias: OperationParameter = {\n parameterPath: \"alias\",\n mapper: SearchAliasMapper,\n};\n\nexport const aliasName: OperationURLParameter = {\n parameterPath: \"aliasName\",\n mapper: {\n serializedName: \"aliasName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { DataSources } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { SearchServiceClient } from \"../searchServiceClient\";\nimport {\n SearchIndexerDataSource,\n DataSourcesCreateOrUpdateOptionalParams,\n DataSourcesCreateOrUpdateResponse,\n DataSourcesDeleteOptionalParams,\n DataSourcesGetOptionalParams,\n DataSourcesGetResponse,\n DataSourcesListOptionalParams,\n DataSourcesListResponse,\n DataSourcesCreateOptionalParams,\n DataSourcesCreateResponse,\n} from \"../models\";\n\n/** Class containing DataSources operations. */\nexport class DataSourcesImpl implements DataSources {\n private readonly client: SearchServiceClient;\n\n /**\n * Initialize a new instance of the class DataSources class.\n * @param client Reference to the service client\n */\n constructor(client: SearchServiceClient) {\n this.client = client;\n }\n\n /**\n * Creates a new datasource or updates a datasource if it already exists.\n * @param dataSourceName The name of the datasource to create or update.\n * @param dataSource The definition of the datasource to create or update.\n * @param options The options parameters.\n */\n createOrUpdate(\n dataSourceName: string,\n dataSource: SearchIndexerDataSource,\n options?: DataSourcesCreateOrUpdateOptionalParams,\n ): Promise<DataSourcesCreateOrUpdateResponse> {\n return this.client.sendOperationRequest(\n { dataSourceName, dataSource, options },\n createOrUpdateOperationSpec,\n );\n }\n\n /**\n * Deletes a datasource.\n * @param dataSourceName The name of the datasource to delete.\n * @param options The options parameters.\n */\n delete(\n dataSourceName: string,\n options?: DataSourcesDeleteOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { dataSourceName, options },\n deleteOperationSpec,\n );\n }\n\n /**\n * Retrieves a datasource definition.\n * @param dataSourceName The name of the datasource to retrieve.\n * @param options The options parameters.\n */\n get(\n dataSourceName: string,\n options?: DataSourcesGetOptionalParams,\n ): Promise<DataSourcesGetResponse> {\n return this.client.sendOperationRequest(\n { dataSourceName, options },\n getOperationSpec,\n );\n }\n\n /**\n * Lists all datasources available for a search service.\n * @param options The options parameters.\n */\n list(\n options?: DataSourcesListOptionalParams,\n ): Promise<DataSourcesListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * Creates a new datasource.\n * @param dataSource The definition of the datasource to create.\n * @param options The options parameters.\n */\n create(\n dataSource: SearchIndexerDataSource,\n options?: DataSourcesCreateOptionalParams,\n ): Promise<DataSourcesCreateResponse> {\n return this.client.sendOperationRequest(\n { dataSource, options },\n createOperationSpec,\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path: \"/datasources('{dataSourceName}')\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.SearchIndexerDataSource,\n },\n 201: {\n bodyMapper: Mappers.SearchIndexerDataSource,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.dataSource,\n queryParameters: [\n Parameters.apiVersion,\n Parameters.skipIndexerResetRequirementForCache,\n ],\n urlParameters: [Parameters.endpoint, Parameters.dataSourceName],\n headerParameters: [\n Parameters.contentType,\n Parameters.accept,\n Parameters.ifMatch,\n Parameters.ifNoneMatch,\n Parameters.prefer,\n ],\n mediaType: \"json\",\n serializer,\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path: \"/datasources('{dataSourceName}')\",\n httpMethod: \"DELETE\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.dataSourceName],\n headerParameters: [\n Parameters.accept,\n Parameters.ifMatch,\n Parameters.ifNoneMatch,\n ],\n serializer,\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path: \"/datasources('{dataSourceName}')\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SearchIndexerDataSource,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.dataSourceName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/datasources\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ListDataSourcesResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion, Parameters.select],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createOperationSpec: coreClient.OperationSpec = {\n path: \"/datasources\",\n httpMethod: \"POST\",\n responses: {\n 201: {\n bodyMapper: Mappers.SearchIndexerDataSource,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.dataSource,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.contentType, Parameters.accept],\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 { Indexers } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { SearchServiceClient } from \"../searchServiceClient\";\nimport {\n IndexersResetOptionalParams,\n IndexersResetDocsOptionalParams,\n IndexersRunOptionalParams,\n SearchIndexer,\n IndexersCreateOrUpdateOptionalParams,\n IndexersCreateOrUpdateResponse,\n IndexersDeleteOptionalParams,\n IndexersGetOptionalParams,\n IndexersGetResponse,\n IndexersListOptionalParams,\n IndexersListResponse,\n IndexersCreateOptionalParams,\n IndexersCreateResponse,\n IndexersGetStatusOptionalParams,\n IndexersGetStatusResponse,\n} from \"../models\";\n\n/** Class containing Indexers operations. */\nexport class IndexersImpl implements Indexers {\n private readonly client: SearchServiceClient;\n\n /**\n * Initialize a new instance of the class Indexers class.\n * @param client Reference to the service client\n */\n constructor(client: SearchServiceClient) {\n this.client = client;\n }\n\n /**\n * Resets the change tracking state associated with an indexer.\n * @param indexerName The name of the indexer to reset.\n * @param options The options parameters.\n */\n reset(\n indexerName: string,\n options?: IndexersResetOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { indexerName, options },\n resetOperationSpec,\n );\n }\n\n /**\n * Resets specific documents in the datasource to be selectively re-ingested by the indexer.\n * @param indexerName The name of the indexer to reset documents for.\n * @param options The options parameters.\n */\n resetDocs(\n indexerName: string,\n options?: IndexersResetDocsOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { indexerName, options },\n resetDocsOperationSpec,\n );\n }\n\n /**\n * Runs an indexer on-demand.\n * @param indexerName The name of the indexer to run.\n * @param options The options parameters.\n */\n run(indexerName: string, options?: IndexersRunOptionalParams): Promise<void> {\n return this.client.sendOperationRequest(\n { indexerName, options },\n runOperationSpec,\n );\n }\n\n /**\n * Creates a new indexer or updates an indexer if it already exists.\n * @param indexerName The name of the indexer to create or update.\n * @param indexer The definition of the indexer to create or update.\n * @param options The options parameters.\n */\n createOrUpdate(\n indexerName: string,\n indexer: SearchIndexer,\n options?: IndexersCreateOrUpdateOptionalParams,\n ): Promise<IndexersCreateOrUpdateResponse> {\n return this.client.sendOperationRequest(\n { indexerName, indexer, options },\n createOrUpdateOperationSpec,\n );\n }\n\n /**\n * Deletes an indexer.\n * @param indexerName The name of the indexer to delete.\n * @param options The options parameters.\n */\n delete(\n indexerName: string,\n options?: IndexersDeleteOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { indexerName, options },\n deleteOperationSpec,\n );\n }\n\n /**\n * Retrieves an indexer definition.\n * @param indexerName The name of the indexer to retrieve.\n * @param options The options parameters.\n */\n get(\n indexerName: string,\n options?: IndexersGetOptionalParams,\n ): Promise<IndexersGetResponse> {\n return this.client.sendOperationRequest(\n { indexerName, options },\n getOperationSpec,\n );\n }\n\n /**\n * Lists all indexers available for a search service.\n * @param options The options parameters.\n */\n list(options?: IndexersListOptionalParams): Promise<IndexersListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * Creates a new indexer.\n * @param indexer The definition of the indexer to create.\n * @param options The options parameters.\n */\n create(\n indexer: SearchIndexer,\n options?: IndexersCreateOptionalParams,\n ): Promise<IndexersCreateResponse> {\n return this.client.sendOperationRequest(\n { indexer, options },\n createOperationSpec,\n );\n }\n\n /**\n * Returns the current status and execution history of an indexer.\n * @param indexerName The name of the indexer for which to retrieve status.\n * @param options The options parameters.\n */\n getStatus(\n indexerName: string,\n options?: IndexersGetStatusOptionalParams,\n ): Promise<IndexersGetStatusResponse> {\n return this.client.sendOperationRequest(\n { indexerName, options },\n getStatusOperationSpec,\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst resetOperationSpec: coreClient.OperationSpec = {\n path: \"/indexers('{indexerName}')/search.reset\",\n httpMethod: \"POST\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.indexerName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst resetDocsOperationSpec: coreClient.OperationSpec = {\n path: \"/indexers('{indexerName}')/search.resetdocs\",\n httpMethod: \"POST\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.keysOrIds,\n queryParameters: [Parameters.apiVersion, Parameters.overwrite],\n urlParameters: [Parameters.endpoint, Parameters.indexerName],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer,\n};\nconst runOperationSpec: coreClient.OperationSpec = {\n path: \"/indexers('{indexerName}')/search.run\",\n httpMethod: \"POST\",\n responses: {\n 202: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.indexerName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path: \"/indexers('{indexerName}')\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.SearchIndexer,\n },\n 201: {\n bodyMapper: Mappers.SearchIndexer,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.indexer,\n queryParameters: [\n Parameters.apiVersion,\n Parameters.skipIndexerResetRequirementForCache,\n Parameters.disableCacheReprocessingChangeDetection,\n ],\n urlParameters: [Parameters.endpoint, Parameters.indexerName],\n headerParameters: [\n Parameters.contentType,\n Parameters.accept,\n Parameters.ifMatch,\n Parameters.ifNoneMatch,\n Parameters.prefer,\n ],\n mediaType: \"json\",\n serializer,\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path: \"/indexers('{indexerName}')\",\n httpMethod: \"DELETE\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.indexerName],\n headerParameters: [\n Parameters.accept,\n Parameters.ifMatch,\n Parameters.ifNoneMatch,\n ],\n serializer,\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path: \"/indexers('{indexerName}')\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SearchIndexer,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.indexerName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/indexers\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ListIndexersResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion, Parameters.select],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createOperationSpec: coreClient.OperationSpec = {\n path: \"/indexers\",\n httpMethod: \"POST\",\n responses: {\n 201: {\n bodyMapper: Mappers.SearchIndexer,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.indexer,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer,\n};\nconst getStatusOperationSpec: coreClient.OperationSpec = {\n path: \"/indexers('{indexerName}')/search.status\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SearchIndexerStatus,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.indexerName],\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 { Skillsets } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { SearchServiceClient } from \"../searchServiceClient\";\nimport {\n SearchIndexerSkillset,\n SkillsetsCreateOrUpdateOptionalParams,\n SkillsetsCreateOrUpdateResponse,\n SkillsetsDeleteOptionalParams,\n SkillsetsGetOptionalParams,\n SkillsetsGetResponse,\n SkillsetsListOptionalParams,\n SkillsetsListResponse,\n SkillsetsCreateOptionalParams,\n SkillsetsCreateResponse,\n SkillNames,\n SkillsetsResetSkillsOptionalParams,\n} from \"../models\";\n\n/** Class containing Skillsets operations. */\nexport class SkillsetsImpl implements Skillsets {\n private readonly client: SearchServiceClient;\n\n /**\n * Initialize a new instance of the class Skillsets class.\n * @param client Reference to the service client\n */\n constructor(client: SearchServiceClient) {\n this.client = client;\n }\n\n /**\n * Creates a new skillset in a search service or updates the skillset if it already exists.\n * @param skillsetName The name of the skillset to create or update.\n * @param skillset The skillset containing one or more skills to create or update in a search service.\n * @param options The options parameters.\n */\n createOrUpdate(\n skillsetName: string,\n skillset: SearchIndexerSkillset,\n options?: SkillsetsCreateOrUpdateOptionalParams,\n ): Promise<SkillsetsCreateOrUpdateResponse> {\n return this.client.sendOperationRequest(\n { skillsetName, skillset, options },\n createOrUpdateOperationSpec,\n );\n }\n\n /**\n * Deletes a skillset in a search service.\n * @param skillsetName The name of the skillset to delete.\n * @param options The options parameters.\n */\n delete(\n skillsetName: string,\n options?: SkillsetsDeleteOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { skillsetName, options },\n deleteOperationSpec,\n );\n }\n\n /**\n * Retrieves a skillset in a search service.\n * @param skillsetName The name of the skillset to retrieve.\n * @param options The options parameters.\n */\n get(\n skillsetName: string,\n options?: SkillsetsGetOptionalParams,\n ): Promise<SkillsetsGetResponse> {\n return this.client.sendOperationRequest(\n { skillsetName, options },\n getOperationSpec,\n );\n }\n\n /**\n * List all skillsets in a search service.\n * @param options The options parameters.\n */\n list(options?: SkillsetsListOptionalParams): Promise<SkillsetsListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * Creates a new skillset in a search service.\n * @param skillset The skillset containing one or more skills to create in a search service.\n * @param options The options parameters.\n */\n create(\n skillset: SearchIndexerSkillset,\n options?: SkillsetsCreateOptionalParams,\n ): Promise<SkillsetsCreateResponse> {\n return this.client.sendOperationRequest(\n { skillset, options },\n createOperationSpec,\n );\n }\n\n /**\n * Reset an existing skillset in a search service.\n * @param skillsetName The name of the skillset to reset.\n * @param skillNames The names of skills to reset.\n * @param options The options parameters.\n */\n resetSkills(\n skillsetName: string,\n skillNames: SkillNames,\n options?: SkillsetsResetSkillsOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { skillsetName, skillNames, options },\n resetSkillsOperationSpec,\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path: \"/skillsets('{skillsetName}')\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.SearchIndexerSkillset,\n },\n 201: {\n bodyMapper: Mappers.SearchIndexerSkillset,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.skillset,\n queryParameters: [\n Parameters.apiVersion,\n Parameters.skipIndexerResetRequirementForCache,\n Parameters.disableCacheReprocessingChangeDetection,\n ],\n urlParameters: [Parameters.endpoint, Parameters.skillsetName],\n headerParameters: [\n Parameters.contentType,\n Parameters.accept,\n Parameters.ifMatch,\n Parameters.ifNoneMatch,\n Parameters.prefer,\n ],\n mediaType: \"json\",\n serializer,\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path: \"/skillsets('{skillsetName}')\",\n httpMethod: \"DELETE\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.skillsetName],\n headerParameters: [\n Parameters.accept,\n Parameters.ifMatch,\n Parameters.ifNoneMatch,\n ],\n serializer,\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path: \"/skillsets('{skillsetName}')\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SearchIndexerSkillset,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.skillsetName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/skillsets\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ListSkillsetsResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion, Parameters.select],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createOperationSpec: coreClient.OperationSpec = {\n path: \"/skillsets\",\n httpMethod: \"POST\",\n responses: {\n 201: {\n bodyMapper: Mappers.SearchIndexerSkillset,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.skillset,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer,\n};\nconst resetSkillsOperationSpec: coreClient.OperationSpec = {\n path: \"/skillsets('{skillsetName}')/search.resetskills\",\n httpMethod: \"POST\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.skillNames,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.skillsetName],\n headerParameters: [Parameters.contentType, Parameters.accept],\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 { SynonymMaps } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { SearchServiceClient } from \"../searchServiceClient\";\nimport {\n SynonymMap,\n SynonymMapsCreateOrUpdateOptionalParams,\n SynonymMapsCreateOrUpdateResponse,\n SynonymMapsDeleteOptionalParams,\n SynonymMapsGetOptionalParams,\n SynonymMapsGetResponse,\n SynonymMapsListOptionalParams,\n SynonymMapsListResponse,\n SynonymMapsCreateOptionalParams,\n SynonymMapsCreateResponse,\n} from \"../models\";\n\n/** Class containing SynonymMaps operations. */\nexport class SynonymMapsImpl implements SynonymMaps {\n private readonly client: SearchServiceClient;\n\n /**\n * Initialize a new instance of the class SynonymMaps class.\n * @param client Reference to the service client\n */\n constructor(client: SearchServiceClient) {\n this.client = client;\n }\n\n /**\n * Creates a new synonym map or updates a synonym map if it already exists.\n * @param synonymMapName The name of the synonym map to create or update.\n * @param synonymMap The definition of the synonym map to create or update.\n * @param options The options parameters.\n */\n createOrUpdate(\n synonymMapName: string,\n synonymMap: SynonymMap,\n options?: SynonymMapsCreateOrUpdateOptionalParams,\n ): Promise<SynonymMapsCreateOrUpdateResponse> {\n return this.client.sendOperationRequest(\n { synonymMapName, synonymMap, options },\n createOrUpdateOperationSpec,\n );\n }\n\n /**\n * Deletes a synonym map.\n * @param synonymMapName The name of the synonym map to delete.\n * @param options The options parameters.\n */\n delete(\n synonymMapName: string,\n options?: SynonymMapsDeleteOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { synonymMapName, options },\n deleteOperationSpec,\n );\n }\n\n /**\n * Retrieves a synonym map definition.\n * @param synonymMapName The name of the synonym map to retrieve.\n * @param options The options parameters.\n */\n get(\n synonymMapName: string,\n options?: SynonymMapsGetOptionalParams,\n ): Promise<SynonymMapsGetResponse> {\n return this.client.sendOperationRequest(\n { synonymMapName, options },\n getOperationSpec,\n );\n }\n\n /**\n * Lists all synonym maps available for a search service.\n * @param options The options parameters.\n */\n list(\n options?: SynonymMapsListOptionalParams,\n ): Promise<SynonymMapsListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * Creates a new synonym map.\n * @param synonymMap The definition of the synonym map to create.\n * @param options The options parameters.\n */\n create(\n synonymMap: SynonymMap,\n options?: SynonymMapsCreateOptionalParams,\n ): Promise<SynonymMapsCreateResponse> {\n return this.client.sendOperationRequest(\n { synonymMap, options },\n createOperationSpec,\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path: \"/synonymmaps('{synonymMapName}')\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.SynonymMap,\n },\n 201: {\n bodyMapper: Mappers.SynonymMap,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.synonymMap,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.synonymMapName],\n headerParameters: [\n Parameters.contentType,\n Parameters.accept,\n Parameters.ifMatch,\n Parameters.ifNoneMatch,\n Parameters.prefer,\n ],\n mediaType: \"json\",\n serializer,\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path: \"/synonymmaps('{synonymMapName}')\",\n httpMethod: \"DELETE\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.synonymMapName],\n headerParameters: [\n Parameters.accept,\n Parameters.ifMatch,\n Parameters.ifNoneMatch,\n ],\n serializer,\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path: \"/synonymmaps('{synonymMapName}')\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SynonymMap,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.synonymMapName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/synonymmaps\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ListSynonymMapsResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion, Parameters.select],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createOperationSpec: coreClient.OperationSpec = {\n path: \"/synonymmaps\",\n httpMethod: \"POST\",\n responses: {\n 201: {\n bodyMapper: Mappers.SynonymMap,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.synonymMap,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.contentType, Parameters.accept],\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 { Indexes } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { SearchServiceClient } from \"../searchServiceClient\";\nimport {\n SearchIndex,\n IndexesCreateOptionalParams,\n IndexesCreateResponse,\n IndexesListOptionalParams,\n IndexesListResponse,\n IndexesCreateOrUpdateOptionalParams,\n IndexesCreateOrUpdateResponse,\n IndexesDeleteOptionalParams,\n IndexesGetOptionalParams,\n IndexesGetResponse,\n IndexesGetStatisticsOptionalParams,\n IndexesGetStatisticsResponse,\n AnalyzeRequest,\n IndexesAnalyzeOptionalParams,\n IndexesAnalyzeResponse,\n} from \"../models\";\n\n/** Class containing Indexes operations. */\nexport class IndexesImpl implements Indexes {\n private readonly client: SearchServiceClient;\n\n /**\n * Initialize a new instance of the class Indexes class.\n * @param client Reference to the service client\n */\n constructor(client: SearchServiceClient) {\n this.client = client;\n }\n\n /**\n * Creates a new search index.\n * @param index The definition of the index to create.\n * @param options The options parameters.\n */\n create(\n index: SearchIndex,\n options?: IndexesCreateOptionalParams,\n ): Promise<IndexesCreateResponse> {\n return this.client.sendOperationRequest(\n { index, options },\n createOperationSpec,\n );\n }\n\n /**\n * Lists all indexes available for a search service.\n * @param options The options parameters.\n */\n list(options?: IndexesListOptionalParams): Promise<IndexesListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * Creates a new search index or updates an index if it already exists.\n * @param indexName The definition of the index to create or update.\n * @param index The definition of the index to create or update.\n * @param options The options parameters.\n */\n createOrUpdate(\n indexName: string,\n index: SearchIndex,\n options?: IndexesCreateOrUpdateOptionalParams,\n ): Promise<IndexesCreateOrUpdateResponse> {\n return this.client.sendOperationRequest(\n { indexName, index, options },\n createOrUpdateOperationSpec,\n );\n }\n\n /**\n * Deletes a search index and all the documents it contains. This operation is permanent, with no\n * recovery option. Make sure you have a master copy of your index definition, data ingestion code, and\n * a backup of the primary data source in case you need to re-build the index.\n * @param indexName The name of the index to delete.\n * @param options The options parameters.\n */\n delete(\n indexName: string,\n options?: IndexesDeleteOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { indexName, options },\n deleteOperationSpec,\n );\n }\n\n /**\n * Retrieves an index definition.\n * @param indexName The name of the index to retrieve.\n * @param options The options parameters.\n */\n get(\n indexName: string,\n options?: IndexesGetOptionalParams,\n ): Promise<IndexesGetResponse> {\n return this.client.sendOperationRequest(\n { indexName, options },\n getOperationSpec,\n );\n }\n\n /**\n * Returns statistics for the given index, including a document count and storage usage.\n * @param indexName The name of the index for which to retrieve statistics.\n * @param options The options parameters.\n */\n getStatistics(\n indexName: string,\n options?: IndexesGetStatisticsOptionalParams,\n ): Promise<IndexesGetStatisticsResponse> {\n return this.client.sendOperationRequest(\n { indexName, options },\n getStatisticsOperationSpec,\n );\n }\n\n /**\n * Shows how an analyzer breaks text into tokens.\n * @param indexName The name of the index for which to test an analyzer.\n * @param request The text and analyzer or analysis components to test.\n * @param options The options parameters.\n */\n analyze(\n indexName: string,\n request: AnalyzeRequest,\n options?: IndexesAnalyzeOptionalParams,\n ): Promise<IndexesAnalyzeResponse> {\n return this.client.sendOperationRequest(\n { indexName, request, options },\n analyzeOperationSpec,\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst createOperationSpec: coreClient.OperationSpec = {\n path: \"/indexes\",\n httpMethod: \"POST\",\n responses: {\n 201: {\n bodyMapper: Mappers.SearchIndex,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.index,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer,\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/indexes\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ListIndexesResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion, Parameters.select],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path: \"/indexes('{indexName}')\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.SearchIndex,\n },\n 201: {\n bodyMapper: Mappers.SearchIndex,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.index,\n queryParameters: [Parameters.apiVersion, Parameters.allowIndexDowntime],\n urlParameters: [Parameters.endpoint, Parameters.indexName],\n headerParameters: [\n Parameters.contentType,\n Parameters.accept,\n Parameters.ifMatch,\n Parameters.ifNoneMatch,\n Parameters.prefer,\n ],\n mediaType: \"json\",\n serializer,\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path: \"/indexes('{indexName}')\",\n httpMethod: \"DELETE\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.indexName],\n headerParameters: [\n Parameters.accept,\n Parameters.ifMatch,\n Parameters.ifNoneMatch,\n ],\n serializer,\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path: \"/indexes('{indexName}')\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SearchIndex,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.indexName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst getStatisticsOperationSpec: coreClient.OperationSpec = {\n path: \"/indexes('{indexName}')/search.stats\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.GetIndexStatisticsResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.indexName],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst analyzeOperationSpec: coreClient.OperationSpec = {\n path: \"/indexes('{indexName}')/search.analyze\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.AnalyzeResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.request,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.indexName],\n headerParameters: [Parameters.contentType, Parameters.accept],\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 { Aliases } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { SearchServiceClient } from \"../searchServiceClient\";\nimport {\n SearchAlias,\n AliasesCreateOptionalParams,\n AliasesCreateResponse,\n AliasesListOptionalParams,\n AliasesListResponse,\n AliasesCreateOrUpdateOptionalParams,\n AliasesCreateOrUpdateResponse,\n AliasesDeleteOptionalParams,\n AliasesGetOptionalParams,\n AliasesGetResponse,\n} from \"../models\";\n\n/** Class containing Aliases operations. */\nexport class AliasesImpl implements Aliases {\n private readonly client: SearchServiceClient;\n\n /**\n * Initialize a new instance of the class Aliases class.\n * @param client Reference to the service client\n */\n constructor(client: SearchServiceClient) {\n this.client = client;\n }\n\n /**\n * Creates a new search alias.\n * @param alias The definition of the alias to create.\n * @param options The options parameters.\n */\n create(\n alias: SearchAlias,\n options?: AliasesCreateOptionalParams,\n ): Promise<AliasesCreateResponse> {\n return this.client.sendOperationRequest(\n { alias, options },\n createOperationSpec,\n );\n }\n\n /**\n * Lists all aliases available for a search service.\n * @param options The options parameters.\n */\n list(options?: AliasesListOptionalParams): Promise<AliasesListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * Creates a new search alias or updates an alias if it already exists.\n * @param aliasName The definition of the alias to create or update.\n * @param alias The definition of the alias to create or update.\n * @param options The options parameters.\n */\n createOrUpdate(\n aliasName: string,\n alias: SearchAlias,\n options?: AliasesCreateOrUpdateOptionalParams,\n ): Promise<AliasesCreateOrUpdateResponse> {\n return this.client.sendOperationRequest(\n { aliasName, alias, options },\n createOrUpdateOperationSpec,\n );\n }\n\n /**\n * Deletes a search alias and its associated mapping to an index. This operation is permanent, with no\n * recovery option. The mapped index is untouched by this operation.\n * @param aliasName The name of the alias to delete.\n * @param options The options parameters.\n */\n delete(\n aliasName: string,\n options?: AliasesDeleteOptionalParams,\n ): Promise<void> {\n return this.client.sendOperationRequest(\n { aliasName, options },\n deleteOperationSpec,\n );\n }\n\n /**\n * Retrieves an alias definition.\n * @param aliasName The name of the alias to retrieve.\n * @param options The options parameters.\n */\n get(\n aliasName: string,\n options?: AliasesGetOptionalParams,\n ): Promise<AliasesGetResponse> {\n return this.client.sendOperationRequest(\n { aliasName, options },\n getOperationSpec,\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst createOperationSpec: coreClient.OperationSpec = {\n path: \"/aliases\",\n httpMethod: \"POST\",\n responses: {\n 201: {\n bodyMapper: Mappers.SearchAlias,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.alias,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer,\n};\nconst listOperationSpec: coreClient.OperationSpec = {\n path: \"/aliases\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ListAliasesResult,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path: \"/aliases('{aliasName}')\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.SearchAlias,\n },\n 201: {\n bodyMapper: Mappers.SearchAlias,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n requestBody: Parameters.alias,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.aliasName],\n headerParameters: [\n Parameters.contentType,\n Parameters.accept,\n Parameters.ifMatch,\n Parameters.ifNoneMatch,\n Parameters.prefer,\n ],\n mediaType: \"json\",\n serializer,\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path: \"/aliases('{aliasName}')\",\n httpMethod: \"DELETE\",\n responses: {\n 204: {},\n 404: {},\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.aliasName],\n headerParameters: [\n Parameters.accept,\n Parameters.ifMatch,\n Parameters.ifNoneMatch,\n ],\n serializer,\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path: \"/aliases('{aliasName}')\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SearchAlias,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.aliasName],\n headerParameters: [Parameters.accept],\n serializer,\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\nimport * as coreHttpCompat from \"@azure/core-http-compat\";\nimport {\n PipelineRequest,\n PipelineResponse,\n SendRequest,\n} from \"@azure/core-rest-pipeline\";\nimport {\n DataSourcesImpl,\n IndexersImpl,\n SkillsetsImpl,\n SynonymMapsImpl,\n IndexesImpl,\n AliasesImpl,\n} from \"./operations\";\nimport {\n DataSources,\n Indexers,\n Skillsets,\n SynonymMaps,\n Indexes,\n Aliases,\n} from \"./operationsInterfaces\";\nimport * as Parameters from \"./models/parameters\";\nimport * as Mappers from \"./models/mappers\";\nimport {\n ApiVersion20240901Preview,\n SearchServiceClientOptionalParams,\n GetServiceStatisticsOptionalParams,\n GetServiceStatisticsResponse,\n} from \"./models\";\n\n/** @internal */\nexport class SearchServiceClient extends coreHttpCompat.ExtendedServiceClient {\n endpoint: string;\n apiVersion: ApiVersion20240901Preview;\n\n /**\n * Initializes a new instance of the SearchServiceClient class.\n * @param endpoint The endpoint URL of the search service.\n * @param apiVersion Api Version\n * @param options The parameter options\n */\n constructor(\n endpoint: string,\n apiVersion: ApiVersion20240901Preview,\n options?: SearchServiceClientOptionalParams,\n ) {\n if (endpoint === undefined) {\n throw new Error(\"'endpoint' cannot be null\");\n }\n if (apiVersion === undefined) {\n throw new Error(\"'apiVersion' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: SearchServiceClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\",\n };\n\n const packageDetails = `azsdk-js-search-documents/12.2.0-beta.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 this.apiVersion = apiVersion;\n this.dataSources = new DataSourcesImpl(this);\n this.indexers = new IndexersImpl(this);\n this.skillsets = new SkillsetsImpl(this);\n this.synonymMaps = new SynonymMapsImpl(this);\n this.indexes = new IndexesImpl(this);\n this.aliases = new AliasesImpl(this);\n this.addCustomApiVersionPolicy(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 /**\n * Gets service level statistics for a search service.\n * @param options The options parameters.\n */\n getServiceStatistics(\n options?: GetServiceStatisticsOptionalParams,\n ): Promise<GetServiceStatisticsResponse> {\n return this.sendOperationRequest(\n { options },\n getServiceStatisticsOperationSpec,\n );\n }\n\n dataSources: DataSources;\n indexers: Indexers;\n skillsets: Skillsets;\n synonymMaps: SynonymMaps;\n indexes: Indexes;\n aliases: Aliases;\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst getServiceStatisticsOperationSpec: coreClient.OperationSpec = {\n path: \"/servicestats\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ServiceStatistics,\n },\n default: {\n bodyMapper: Mappers.ErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept],\n serializer,\n};\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/// <reference lib=\"esnext.asynciterable\" />\n\nimport { isTokenCredential, KeyCredential, TokenCredential } from \"@azure/core-auth\";\nimport { InternalClientPipelineOptions } from \"@azure/core-client\";\nimport { ExtendedCommonClientOptions } from \"@azure/core-http-compat\";\nimport { bearerTokenAuthenticationPolicy, Pipeline } from \"@azure/core-rest-pipeline\";\nimport { AnalyzeResult } from \"./generated/service/models\";\nimport { SearchServiceClient as GeneratedClient } from \"./generated/service/searchServiceClient\";\nimport { logger } from \"./logger\";\nimport { createOdataMetadataPolicy } from \"./odataMetadataPolicy\";\nimport { createSearchApiKeyCredentialPolicy } from \"./searchApiKeyCredentialPolicy\";\nimport { KnownSearchAudience } from \"./searchAudience\";\nimport { SearchClient, SearchClientOptions as GetSearchClientOptions } from \"./searchClient\";\nimport {\n AliasIterator,\n AnalyzeTextOptions,\n CreateAliasOptions,\n CreateIndexOptions,\n CreateOrUpdateAliasOptions,\n CreateOrUpdateIndexOptions,\n CreateOrUpdateSynonymMapOptions,\n CreateSynonymMapOptions,\n DeleteAliasOptions,\n DeleteIndexOptions,\n DeleteSynonymMapOptions,\n GetAliasOptions,\n GetIndexOptions,\n GetIndexStatisticsOptions,\n GetServiceStatisticsOptions,\n GetSynonymMapsOptions,\n IndexIterator,\n IndexNameIterator,\n ListAliasesOptions,\n ListIndexesOptions,\n ListSynonymMapsOptions,\n SearchIndex,\n SearchIndexAlias,\n SearchIndexStatistics,\n SearchServiceStatistics,\n SynonymMap,\n} from \"./serviceModels\";\nimport * as utils from \"./serviceUtils\";\nimport { createSpan } from \"./tracing\";\n\n/**\n * Client options used to configure Cognitive Search API requests.\n */\nexport interface SearchIndexClientOptions extends ExtendedCommonClientOptions {\n /**\n * The API version to use when communicating with the service.\n * @deprecated use {@Link serviceVersion} instead\n */\n apiVersion?: string;\n\n /**\n * The service version to use when communicating with the service.\n */\n serviceVersion?: string;\n\n /**\n * The Audience to use for authentication with Azure Active Directory (AAD). The\n * audience is not considered when using a shared key.\n * {@link KnownSearchAudience} can be used interchangeably with audience\n */\n audience?: string;\n}\n\n/**\n * Class to perform operations to manage\n * (create, update, list/delete)\n * indexes, & synonymmaps.\n */\nexport class SearchIndexClient {\n /**\n * The API version to use when communicating with the service.\n */\n public readonly serviceVersion: string = utils.defaultServiceVersion;\n\n /**\n * The API version to use when communicating with the service.\n * @deprecated use {@Link serviceVersion} instead\n */\n public readonly apiVersion: string = utils.defaultServiceVersion;\n\n /**\n * The endpoint of the search service\n */\n public readonly endpoint: string;\n\n /**\n * @hidden\n * A reference to the auto-generated SearchServiceClient\n */\n private readonly client: GeneratedClient;\n\n /**\n * A reference to the internal HTTP pipeline for use with raw requests\n */\n public readonly pipeline: Pipeline;\n\n /**\n * Used to authenticate requests to the service.\n */\n private readonly credential: KeyCredential | TokenCredential;\n\n /**\n * Used to configure the Search Index client.\n */\n private readonly options: SearchIndexClientOptions;\n\n /**\n * Creates an instance of SearchIndexClient.\n *\n * Example usage:\n * ```ts\n * const { SearchIndexClient, AzureKeyCredential } = require(\"@azure/search-documents\");\n *\n * const client = new SearchIndexClient(\n * \"<endpoint>\",\n * new AzureKeyCredential(\"<Admin Key>\");\n * );\n * ```\n * @param endpoint - The endpoint of the search service\n * @param credential - Used to authenticate requests to the service.\n * @param options - Used to configure the Search Index client.\n */\n constructor(\n endpoint: string,\n credential: KeyCredential | TokenCredential,\n options: SearchIndexClientOptions = {},\n ) {\n this.endpoint = endpoint;\n this.credential = credential;\n this.options = options;\n\n const internalClientPipelineOptions: InternalClientPipelineOptions = {\n ...this.options,\n ...{\n loggingOptions: {\n logger: logger.info,\n additionalAllowedHeaderNames: [\n \"elapsed-time\",\n \"Location\",\n \"OData-MaxVersion\",\n \"OData-Version\",\n \"Prefer\",\n \"throttle-reason\",\n ],\n },\n },\n };\n\n this.serviceVersion =\n this.options.serviceVersion ?? this.options.apiVersion ?? utils.defaultServiceVersion;\n this.apiVersion = this.serviceVersion;\n\n this.client = new GeneratedClient(\n this.endpoint,\n this.serviceVersion,\n internalClientPipelineOptions,\n );\n this.pipeline = this.client.pipeline;\n\n if (isTokenCredential(credential)) {\n const scope: string = this.options.audience\n ? `${this.options.audience}/.default`\n : `${KnownSearchAudience.AzurePublicCloud}/.default`;\n\n this.client.pipeline.addPolicy(\n bearerTokenAuthenticationPolicy({ credential, scopes: scope }),\n );\n } else {\n this.client.pipeline.addPolicy(createSearchApiKeyCredentialPolicy(credential));\n }\n\n this.client.pipeline.addPolicy(createOdataMetadataPolicy(\"minimal\"));\n }\n\n private async *listIndexesPage(\n options: ListIndexesOptions = {},\n ): AsyncIterableIterator<SearchIndex[]> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-listIndexesPage\", options);\n try {\n const result = await this.client.indexes.list(updatedOptions);\n const mapped = result.indexes.map(utils.generatedIndexToPublicIndex);\n yield mapped;\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n private async *listIndexesAll(\n options: ListIndexesOptions = {},\n ): AsyncIterableIterator<SearchIndex> {\n for await (const page of this.listIndexesPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Retrieves a list of existing indexes in the service.\n * @param options - Options to the list index operation.\n */\n public listIndexes(options: ListIndexesOptions = {}): IndexIterator {\n const iter = this.listIndexesAll(options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listIndexesPage(options);\n },\n };\n }\n\n private async *listAliasesPage(\n options: ListAliasesOptions = {},\n ): AsyncIterableIterator<SearchIndexAlias[]> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-listAliases\", options);\n try {\n const result = await this.client.aliases.list(updatedOptions);\n yield result.aliases;\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n private async *listAliasesAll(\n options: ListAliasesOptions = {},\n ): AsyncIterableIterator<SearchIndexAlias> {\n for await (const page of this.listAliasesPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Lists all aliases available for a search service.\n * @param options - The options parameters.\n */\n public listAliases(options: ListAliasesOptions = {}): AliasIterator {\n const iter = this.listAliasesAll(options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listAliasesPage(options);\n },\n };\n }\n\n private async *listIndexesNamesPage(\n options: ListIndexesOptions = {},\n ): AsyncIterableIterator<string[]> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-listIndexesNamesPage\", options);\n try {\n const result = await this.client.indexes.list({\n ...updatedOptions,\n select: \"name\",\n });\n const mapped = result.indexes.map((idx) => idx.name);\n yield mapped;\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n private async *listIndexesNamesAll(\n options: ListIndexesOptions = {},\n ): AsyncIterableIterator<string> {\n for await (const page of this.listIndexesNamesPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Retrieves a list of names of existing indexes in the service.\n * @param options - Options to the list index operation.\n */\n public listIndexesNames(options: ListIndexesOptions = {}): IndexNameIterator {\n const iter = this.listIndexesNamesAll(options);\n\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listIndexesNamesPage(options);\n },\n };\n }\n\n /**\n * Retrieves a list of existing SynonymMaps in the service.\n * @param options - Options to the list SynonymMaps operation.\n */\n public async listSynonymMaps(options: ListSynonymMapsOptions = {}): Promise<Array<SynonymMap>> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-listSynonymMaps\", options);\n try {\n const result = await this.client.synonymMaps.list(updatedOptions);\n return result.synonymMaps.map(utils.generatedSynonymMapToPublicSynonymMap);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves a list of names of existing SynonymMaps in the service.\n * @param options - Options to the list SynonymMaps operation.\n */\n public async listSynonymMapsNames(options: ListSynonymMapsOptions = {}): Promise<Array<string>> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-listSynonymMapsNames\", options);\n try {\n const result = await this.client.synonymMaps.list({\n ...updatedOptions,\n select: \"name\",\n });\n return result.synonymMaps.map((sm) => sm.name);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves information about an index.\n * @param indexName - The name of the index.\n * @param options - Additional optional arguments.\n */\n public async getIndex(indexName: string, options: GetIndexOptions = {}): Promise<SearchIndex> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-getIndex\", options);\n try {\n const result = await this.client.indexes.get(indexName, updatedOptions);\n return utils.generatedIndexToPublicIndex(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves information about a SynonymMap.\n * @param synonymMapName - The name of the SynonymMap.\n * @param options - Additional optional arguments.\n */\n public async getSynonymMap(\n synonymMapName: string,\n options: GetSynonymMapsOptions = {},\n ): Promise<SynonymMap> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-getSynonymMaps\", options);\n try {\n const result = await this.client.synonymMaps.get(synonymMapName, updatedOptions);\n return utils.generatedSynonymMapToPublicSynonymMap(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new index.\n * @param index - The information describing the index to be created.\n * @param options - Additional optional arguments.\n */\n public async createIndex(\n index: SearchIndex,\n options: CreateIndexOptions = {},\n ): Promise<SearchIndex> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-createIndex\", options);\n try {\n const result = await this.client.indexes.create(\n utils.publicIndexToGeneratedIndex(index),\n updatedOptions,\n );\n return utils.generatedIndexToPublicIndex(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new SynonymMap in a search service.\n * @param synonymMap - The synonymMap definition to create in a search service.\n * @param options - Additional optional arguments.\n */\n public async createSynonymMap(\n synonymMap: SynonymMap,\n options: CreateSynonymMapOptions = {},\n ): Promise<SynonymMap> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-createSynonymMaps\", options);\n try {\n const result = await this.client.synonymMaps.create(\n utils.publicSynonymMapToGeneratedSynonymMap(synonymMap),\n updatedOptions,\n );\n return utils.generatedSynonymMapToPublicSynonymMap(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new index or modifies an existing one.\n * @param index - The information describing the index to be created.\n * @param options - Additional optional arguments.\n */\n public async createOrUpdateIndex(\n index: SearchIndex,\n options: CreateOrUpdateIndexOptions = {},\n ): Promise<SearchIndex> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-createOrUpdateIndex\", options);\n try {\n const etag = options.onlyIfUnchanged ? index.etag : undefined;\n\n const result = await this.client.indexes.createOrUpdate(\n index.name,\n utils.publicIndexToGeneratedIndex(index),\n {\n ...updatedOptions,\n ifMatch: etag,\n },\n );\n return utils.generatedIndexToPublicIndex(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new SynonymMap or modifies an existing one.\n * @param synonymMap - The information describing the SynonymMap to be created.\n * @param options - Additional optional arguments.\n */\n public async createOrUpdateSynonymMap(\n synonymMap: SynonymMap,\n options: CreateOrUpdateSynonymMapOptions = {},\n ): Promise<SynonymMap> {\n const { span, updatedOptions } = createSpan(\n \"SearchIndexClient-createOrUpdateSynonymMap\",\n options,\n );\n try {\n const etag = options.onlyIfUnchanged ? synonymMap.etag : undefined;\n\n const result = await this.client.synonymMaps.createOrUpdate(\n synonymMap.name,\n utils.publicSynonymMapToGeneratedSynonymMap(synonymMap),\n {\n ...updatedOptions,\n ifMatch: etag,\n },\n );\n return utils.generatedSynonymMapToPublicSynonymMap(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deletes an existing index.\n * @param indexName - Index/Name of the index to delete.\n * @param options - Additional optional arguments.\n */\n public async deleteIndex(\n index: string | SearchIndex,\n options: DeleteIndexOptions = {},\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-deleteIndex\", options);\n try {\n const indexName: string = typeof index === \"string\" ? index : index.name;\n const etag =\n typeof index === \"string\" ? undefined : options.onlyIfUnchanged ? index.etag : undefined;\n\n await this.client.indexes.delete(indexName, {\n ...updatedOptions,\n ifMatch: etag,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deletes an existing SynonymMap.\n * @param synonymMapName - SynonymMap/Name of the synonymMap to delete.\n * @param options - Additional optional arguments.\n */\n public async deleteSynonymMap(\n synonymMap: string | SynonymMap,\n options: DeleteSynonymMapOptions = {},\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-deleteSynonymMap\", options);\n try {\n const synonymMapName: string = typeof synonymMap === \"string\" ? synonymMap : synonymMap.name;\n const etag =\n typeof synonymMap === \"string\"\n ? undefined\n : options.onlyIfUnchanged\n ? synonymMap.etag\n : undefined;\n\n await this.client.synonymMaps.delete(synonymMapName, {\n ...updatedOptions,\n ifMatch: etag,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new search alias or updates an alias if it already exists.\n * @param alias - The definition of the alias to create or update.\n * @param options - The options parameters.\n */\n public async createOrUpdateAlias(\n alias: SearchIndexAlias,\n options: CreateOrUpdateAliasOptions = {},\n ): Promise<SearchIndexAlias> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-createOrUpdateAlias\", options);\n try {\n const etag = options.onlyIfUnchanged ? alias.etag : undefined;\n\n const result = await this.client.aliases.createOrUpdate(alias.name, alias, {\n ...updatedOptions,\n ifMatch: etag,\n });\n return result;\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new search alias.\n * @param alias - The definition of the alias to create.\n * @param options - The options parameters.\n */\n public async createAlias(\n alias: SearchIndexAlias,\n options: CreateAliasOptions = {},\n ): Promise<SearchIndexAlias> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-createAlias\", options);\n try {\n const result = await this.client.aliases.create(alias, updatedOptions);\n return result;\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deletes a search alias and its associated mapping to an index. This operation is permanent, with no\n * recovery option. The mapped index is untouched by this operation.\n * @param alias - Alias/Name name of the alias to delete.\n * @param options - The options parameters.\n */\n public async deleteAlias(\n alias: string | SearchIndexAlias,\n options: DeleteAliasOptions = {},\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-deleteAlias\", options);\n try {\n const aliasName: string = typeof alias === \"string\" ? alias : alias.name;\n const etag =\n typeof alias === \"string\" ? undefined : options.onlyIfUnchanged ? alias.etag : undefined;\n\n await this.client.aliases.delete(aliasName, {\n ...updatedOptions,\n ifMatch: etag,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves an alias definition.\n * @param aliasName - The name of the alias to retrieve.\n * @param options - The options parameters.\n */\n public async getAlias(\n aliasName: string,\n options: GetAliasOptions = {},\n ): Promise<SearchIndexAlias> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-getAlias\", options);\n try {\n const result = await this.client.aliases.get(aliasName, updatedOptions);\n return result;\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves statistics about an index, such as the count of documents and the size\n * of index storage.\n * @param indexName - The name of the index.\n * @param options - Additional optional arguments.\n */\n public async getIndexStatistics(\n indexName: string,\n options: GetIndexStatisticsOptions = {},\n ): Promise<SearchIndexStatistics> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-getIndexStatistics\", options);\n try {\n const result = await this.client.indexes.getStatistics(indexName, updatedOptions);\n return result;\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Calls an analyzer or tokenizer manually on provided text.\n * @param indexName - The name of the index that contains the field to analyze\n * @param text - The text to break into tokens.\n * @param options - Additional arguments\n */\n public async analyzeText(indexName: string, options: AnalyzeTextOptions): Promise<AnalyzeResult> {\n const {\n abortSignal,\n requestOptions,\n tracingOptions,\n analyzerName: analyzer,\n tokenizerName: tokenizer,\n ...restOptions\n } = options;\n\n const operationOptions = {\n abortSignal,\n requestOptions,\n tracingOptions,\n };\n\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-analyzeText\", operationOptions);\n\n try {\n const result = await this.client.indexes.analyze(\n indexName,\n { ...restOptions, analyzer, tokenizer },\n updatedOptions,\n );\n return result;\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves statistics about the service, such as the count of documents, index, etc.\n * @param options - Additional optional arguments.\n */\n public async getServiceStatistics(\n options: GetServiceStatisticsOptions = {},\n ): Promise<SearchServiceStatistics> {\n const { span, updatedOptions } = createSpan(\"SearchIndexClient-getServiceStatistics\", options);\n try {\n const result = await this.client.getServiceStatistics(updatedOptions);\n return result;\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves the SearchClient corresponding to this SearchIndexClient\n * @param indexName - Name of the index\n * @param options - SearchClient Options\n * @typeParam TModel - An optional type that represents the documents stored in\n * the search index. For the best typing experience, all non-key fields should\n * be marked optional and nullable, and the key property should have the\n * non-nullable type `string`.\n */\n public getSearchClient<TModel extends object>(\n indexName: string,\n options?: GetSearchClientOptions,\n ): SearchClient<TModel> {\n return new SearchClient<TModel>(\n this.endpoint,\n indexName,\n this.credential,\n options || this.options,\n );\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { isTokenCredential, KeyCredential, TokenCredential } from \"@azure/core-auth\";\nimport { InternalClientPipelineOptions } from \"@azure/core-client\";\nimport { ExtendedCommonClientOptions } from \"@azure/core-http-compat\";\nimport { bearerTokenAuthenticationPolicy, Pipeline } from \"@azure/core-rest-pipeline\";\nimport { SearchIndexerStatus } from \"./generated/service/models\";\nimport { SearchServiceClient as GeneratedClient } from \"./generated/service/searchServiceClient\";\nimport { logger } from \"./logger\";\nimport { createOdataMetadataPolicy } from \"./odataMetadataPolicy\";\nimport { createSearchApiKeyCredentialPolicy } from \"./searchApiKeyCredentialPolicy\";\nimport { KnownSearchAudience } from \"./searchAudience\";\nimport {\n CreateDataSourceConnectionOptions,\n CreateIndexerOptions,\n CreateorUpdateDataSourceConnectionOptions,\n CreateorUpdateIndexerOptions,\n CreateOrUpdateSkillsetOptions,\n CreateSkillsetOptions,\n DeleteDataSourceConnectionOptions,\n DeleteIndexerOptions,\n DeleteSkillsetOptions,\n GetDataSourceConnectionOptions,\n GetIndexerOptions,\n GetIndexerStatusOptions,\n GetSkillSetOptions,\n ListDataSourceConnectionsOptions,\n ListIndexersOptions,\n ListSkillsetsOptions,\n ResetDocumentsOptions,\n ResetIndexerOptions,\n ResetSkillsOptions,\n RunIndexerOptions,\n SearchIndexer,\n SearchIndexerDataSourceConnection,\n SearchIndexerSkillset,\n} from \"./serviceModels\";\nimport * as utils from \"./serviceUtils\";\nimport { createSpan } from \"./tracing\";\n\n/**\n * Client options used to configure Cognitive Search API requests.\n */\nexport interface SearchIndexerClientOptions extends ExtendedCommonClientOptions {\n /**\n * The API version to use when communicating with the service.\n * @deprecated use {@Link serviceVersion} instead\n */\n apiVersion?: string;\n\n /**\n * The service version to use when communicating with the service.\n */\n serviceVersion?: string;\n\n /**\n * The Audience to use for authentication with Azure Active Directory (AAD). The\n * audience is not considered when using a shared key.\n * {@link KnownSearchAudience} can be used interchangeably with audience\n */\n audience?: string;\n}\n\n/**\n * Class to perform operations to manage\n * (create, update, list/delete)\n * indexers, datasources & skillsets.\n */\nexport class SearchIndexerClient {\n /**\n * The API version to use when communicating with the service.\n */\n public readonly serviceVersion: string = utils.defaultServiceVersion;\n\n /**\n * The API version to use when communicating with the service.\n * @deprecated use {@Link serviceVersion} instead\n */\n public readonly apiVersion: string = utils.defaultServiceVersion;\n\n /**\n * The endpoint of the search service\n */\n public readonly endpoint: string;\n\n /**\n * @hidden\n * A reference to the auto-generated SearchServiceClient\n */\n private readonly client: GeneratedClient;\n\n /**\n * A reference to the internal HTTP pipeline for use with raw requests\n */\n public readonly pipeline: Pipeline;\n\n /**\n * Creates an instance of SearchIndexerClient.\n *\n * Example usage:\n * ```ts\n * const { SearchIndexerClient, AzureKeyCredential } = require(\"@azure/search-documents\");\n *\n * const client = new SearchIndexerClient(\n * \"<endpoint>\",\n * new AzureKeyCredential(\"<Admin Key>\");\n * );\n * ```\n * @param endpoint - The endpoint of the search service\n * @param credential - Used to authenticate requests to the service.\n * @param options - Used to configure the Search client.\n */\n constructor(\n endpoint: string,\n credential: KeyCredential | TokenCredential,\n options: SearchIndexerClientOptions = {},\n ) {\n this.endpoint = endpoint;\n\n const internalClientPipelineOptions: InternalClientPipelineOptions = {\n ...options,\n ...{\n loggingOptions: {\n logger: logger.info,\n additionalAllowedHeaderNames: [\n \"elapsed-time\",\n \"Location\",\n \"OData-MaxVersion\",\n \"OData-Version\",\n \"Prefer\",\n \"throttle-reason\",\n ],\n },\n },\n };\n\n this.serviceVersion =\n options.serviceVersion ?? options.apiVersion ?? utils.defaultServiceVersion;\n this.apiVersion = this.serviceVersion;\n\n this.client = new GeneratedClient(\n this.endpoint,\n this.serviceVersion,\n internalClientPipelineOptions,\n );\n this.pipeline = this.client.pipeline;\n\n if (isTokenCredential(credential)) {\n const scope: string = options.audience\n ? `${options.audience}/.default`\n : `${KnownSearchAudience.AzurePublicCloud}/.default`;\n\n this.client.pipeline.addPolicy(\n bearerTokenAuthenticationPolicy({ credential, scopes: scope }),\n );\n } else {\n this.client.pipeline.addPolicy(createSearchApiKeyCredentialPolicy(credential));\n }\n\n this.client.pipeline.addPolicy(createOdataMetadataPolicy(\"minimal\"));\n }\n\n /**\n * Retrieves a list of existing indexers in the service.\n * @param options - Options to the list indexers operation.\n */\n public async listIndexers(options: ListIndexersOptions = {}): Promise<Array<SearchIndexer>> {\n const { span, updatedOptions } = createSpan(\"SearchIndexerClient-listIndexers\", options);\n try {\n const result = await this.client.indexers.list(updatedOptions);\n return result.indexers.map(utils.generatedSearchIndexerToPublicSearchIndexer);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves a list of names of existing indexers in the service.\n * @param options - Options to the list indexers operation.\n */\n public async listIndexersNames(options: ListIndexersOptions = {}): Promise<Array<string>> {\n const { span, updatedOptions } = createSpan(\"SearchIndexerClient-listIndexersNames\", options);\n try {\n const result = await this.client.indexers.list({\n ...updatedOptions,\n select: \"name\",\n });\n return result.indexers.map((idx) => idx.name);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves a list of existing data sources in the service.\n * @param options - Options to the list indexers operation.\n */\n public async listDataSourceConnections(\n options: ListDataSourceConnectionsOptions = {},\n ): Promise<Array<SearchIndexerDataSourceConnection>> {\n const { span, updatedOptions } = createSpan(\n \"SearchIndexerClient-listDataSourceConnections\",\n options,\n );\n try {\n const result = await this.client.dataSources.list(updatedOptions);\n return result.dataSources.map(utils.generatedDataSourceToPublicDataSource);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves a list of names of existing data sources in the service.\n * @param options - Options to the list indexers operation.\n */\n public async listDataSourceConnectionsNames(\n options: ListDataSourceConnectionsOptions = {},\n ): Promise<Array<string>> {\n const { span, updatedOptions } = createSpan(\n \"SearchIndexerClient-listDataSourceConnectionsNames\",\n options,\n );\n try {\n const result = await this.client.dataSources.list({\n ...updatedOptions,\n select: \"name\",\n });\n return result.dataSources.map((ds) => ds.name);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves a list of existing Skillsets in the service.\n * @param options - Options to the list Skillsets operation.\n */\n public async listSkillsets(\n options: ListSkillsetsOptions = {},\n ): Promise<Array<SearchIndexerSkillset>> {\n const { span, updatedOptions } = createSpan(\"SearchIndexerClient-listSkillsets\", options);\n try {\n const result = await this.client.skillsets.list(updatedOptions);\n return result.skillsets.map(utils.generatedSkillsetToPublicSkillset);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves a list of names of existing Skillsets in the service.\n * @param options - Options to the list Skillsets operation.\n */\n public async listSkillsetsNames(options: ListSkillsetsOptions = {}): Promise<Array<string>> {\n const { span, updatedOptions } = createSpan(\"SearchIndexerClient-listSkillsetsNames\", options);\n try {\n const result = await this.client.skillsets.list({\n ...updatedOptions,\n select: \"name\",\n });\n return result.skillsets.map((sks) => sks.name);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves information about an Indexer.\n * @param indexerName - The name of the Indexer.\n * @param options - Additional optional arguments.\n */\n public async getIndexer(\n indexerName: string,\n options: GetIndexerOptions = {},\n ): Promise<SearchIndexer> {\n const { span, updatedOptions } = createSpan(\"SearchIndexerClient-getIndexer\", options);\n try {\n const result = await this.client.indexers.get(indexerName, updatedOptions);\n return utils.generatedSearchIndexerToPublicSearchIndexer(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves information about a DataSource\n * @param dataSourceName - The name of the DataSource\n * @param options - Additional optional arguments\n */\n public async getDataSourceConnection(\n dataSourceConnectionName: string,\n options: GetDataSourceConnectionOptions = {},\n ): Promise<SearchIndexerDataSourceConnection> {\n const { span, updatedOptions } = createSpan(\n \"SearchIndexerClient-getDataSourceConnection\",\n options,\n );\n try {\n const result = await this.client.dataSources.get(dataSourceConnectionName, updatedOptions);\n return utils.generatedDataSourceToPublicDataSource(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Retrieves information about an Skillset.\n * @param indexName - The name of the Skillset.\n * @param options - Additional optional arguments.\n */\n public async getSkillset(\n skillsetName: string,\n options: GetSkillSetOptions = {},\n ): Promise<SearchIndexerSkillset> {\n const { span, updatedOptions } = createSpan(\"SearchIndexerClient-getSkillset\", options);\n try {\n const result = await this.client.skillsets.get(skillsetName, updatedOptions);\n return utils.generatedSkillsetToPublicSkillset(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new indexer in a search service.\n * @param indexer - The indexer definition to create in a search service.\n * @param options - Additional optional arguments.\n */\n public async createIndexer(\n indexer: SearchIndexer,\n options: CreateIndexerOptions = {},\n ): Promise<SearchIndexer> {\n const { span, updatedOptions } = createSpan(\"SearchIndexerClient-createIndexer\", options);\n try {\n const result = await this.client.indexers.create(\n utils.publicSearchIndexerToGeneratedSearchIndexer(indexer),\n updatedOptions,\n );\n return utils.generatedSearchIndexerToPublicSearchIndexer(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new dataSource in a search service.\n * @param dataSourceConnection - The dataSource definition to create in a search service.\n * @param options - Additional optional arguments.\n */\n public async createDataSourceConnection(\n dataSourceConnection: SearchIndexerDataSourceConnection,\n options: CreateDataSourceConnectionOptions = {},\n ): Promise<SearchIndexerDataSourceConnection> {\n const { span, updatedOptions } = createSpan(\n \"SearchIndexerClient-createDataSourceConnection\",\n options,\n );\n try {\n const result = await this.client.dataSources.create(\n utils.publicDataSourceToGeneratedDataSource(dataSourceConnection),\n updatedOptions,\n );\n return utils.generatedDataSourceToPublicDataSource(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new skillset in a search service.\n * @param skillset - The skillset containing one or more skills to create in a search service.\n * @param options - Additional optional arguments.\n */\n public async createSkillset(\n skillset: SearchIndexerSkillset,\n options: CreateSkillsetOptions = {},\n ): Promise<SearchIndexerSkillset> {\n const { span, updatedOptions } = createSpan(\"SearchIndexerClient-createSkillset\", options);\n try {\n const result = await this.client.skillsets.create(\n utils.publicSkillsetToGeneratedSkillset(skillset),\n updatedOptions,\n );\n return utils.generatedSkillsetToPublicSkillset(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new indexer or modifies an existing one.\n * @param indexer - The information describing the indexer to be created/updated.\n * @param options - Additional optional arguments.\n */\n public async createOrUpdateIndexer(\n indexer: SearchIndexer,\n options: CreateorUpdateIndexerOptions = {},\n ): Promise<SearchIndexer> {\n const { span, updatedOptions } = createSpan(\n \"SearchIndexerClient-createOrUpdateIndexer\",\n options,\n );\n\n const { onlyIfUnchanged, ...restOptions } = updatedOptions;\n try {\n const etag = onlyIfUnchanged ? indexer.etag : undefined;\n\n const result = await this.client.indexers.createOrUpdate(\n indexer.name,\n utils.publicSearchIndexerToGeneratedSearchIndexer(indexer),\n {\n ...restOptions,\n ifMatch: etag,\n },\n );\n return utils.generatedSearchIndexerToPublicSearchIndexer(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new datasource or modifies an existing one.\n * @param dataSourceConnection - The information describing the datasource to be created/updated.\n * @param options - Additional optional arguments.\n */\n public async createOrUpdateDataSourceConnection(\n dataSourceConnection: SearchIndexerDataSourceConnection,\n options: CreateorUpdateDataSourceConnectionOptions = {},\n ): Promise<SearchIndexerDataSourceConnection> {\n const { span, updatedOptions } = createSpan(\n \"SearchIndexerClient-createOrUpdateDataSourceConnection\",\n options,\n );\n try {\n const etag = options.onlyIfUnchanged ? dataSourceConnection.etag : undefined;\n\n const result = await this.client.dataSources.createOrUpdate(\n dataSourceConnection.name,\n utils.publicDataSourceToGeneratedDataSource(dataSourceConnection),\n {\n ...updatedOptions,\n ifMatch: etag,\n },\n );\n return utils.generatedDataSourceToPublicDataSource(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new Skillset or modifies an existing one.\n * @param skillset - The information describing the index to be created.\n * @param options - Additional optional arguments.\n */\n public async createOrUpdateSkillset(\n skillset: SearchIndexerSkillset,\n options: CreateOrUpdateSkillsetOptions = {},\n ): Promise<SearchIndexerSkillset> {\n const { span, updatedOptions } = createSpan(\n \"SearchIndexerClient-createOrUpdateSkillset\",\n options,\n );\n try {\n const etag = options.onlyIfUnchanged ? skillset.etag : undefined;\n\n const result = await this.client.skillsets.createOrUpdate(\n skillset.name,\n utils.publicSkillsetToGeneratedSkillset(skillset),\n {\n ...updatedOptions,\n ifMatch: etag,\n },\n );\n\n return utils.generatedSkillsetToPublicSkillset(result);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deletes an existing indexer.\n * @param indexer - Indexer/Name of the indexer to delete.\n * @param options - Additional optional arguments.\n */\n public async deleteIndexer(\n indexer: string | SearchIndexer,\n options: DeleteIndexerOptions = {},\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\"SearchIndexerClient-deleteIndexer\", options);\n try {\n const indexerName: string = typeof indexer === \"string\" ? indexer : indexer.name;\n const etag =\n typeof indexer === \"string\"\n ? undefined\n : options.onlyIfUnchanged\n ? indexer.etag\n : undefined;\n\n await this.client.indexers.delete(indexerName, {\n ...updatedOptions,\n ifMatch: etag,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deletes an existing datasource.\n * @param dataSource - Datasource/Name of the datasource to delete.\n * @param options - Additional optional arguments.\n */\n public async deleteDataSourceConnection(\n dataSourceConnection: string | SearchIndexerDataSourceConnection,\n options: DeleteDataSourceConnectionOptions = {},\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\n \"SearchIndexerClient-deleteDataSourceConnection\",\n options,\n );\n try {\n const dataSourceConnectionName: string =\n typeof dataSourceConnection === \"string\" ? dataSourceConnection : dataSourceConnection.name;\n const etag =\n typeof dataSourceConnection === \"string\"\n ? undefined\n : options.onlyIfUnchanged\n ? dataSourceConnection.etag\n : undefined;\n\n await this.client.dataSources.delete(dataSourceConnectionName, {\n ...updatedOptions,\n ifMatch: etag,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deletes an existing Skillset.\n * @param skillset - Skillset/Name of the Skillset to delete.\n * @param options - Additional optional arguments.\n */\n public async deleteSkillset(\n skillset: string | SearchIndexerSkillset,\n options: DeleteSkillsetOptions = {},\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\"SearchIndexerClient-deleteSkillset\", options);\n try {\n const skillsetName: string = typeof skillset === \"string\" ? skillset : skillset.name;\n const etag =\n typeof skillset === \"string\"\n ? undefined\n : options.onlyIfUnchanged\n ? skillset.etag\n : undefined;\n\n await this.client.skillsets.delete(skillsetName, {\n ...updatedOptions,\n ifMatch: etag,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Returns the current status and execution history of an indexer.\n * @param indexerName - The name of the indexer.\n * @param options - Additional optional arguments.\n */\n public async getIndexerStatus(\n indexerName: string,\n options: GetIndexerStatusOptions = {},\n ): Promise<SearchIndexerStatus> {\n const { span, updatedOptions } = createSpan(\"SearchIndexerClient-getIndexerStatus\", options);\n try {\n const result = await this.client.indexers.getStatus(indexerName, updatedOptions);\n return result;\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Resets the change tracking state associated with an indexer.\n * @param indexerName - The name of the indexer to reset.\n * @param options - Additional optional arguments.\n */\n public async resetIndexer(indexerName: string, options: ResetIndexerOptions = {}): Promise<void> {\n const { span, updatedOptions } = createSpan(\"SearchIndexerClient-resetIndexer\", options);\n try {\n await this.client.indexers.reset(indexerName, updatedOptions);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Runs an indexer on-demand.\n * @param indexerName - The name of the indexer to run.\n * @param options - Additional optional arguments.\n */\n public async runIndexer(indexerName: string, options: RunIndexerOptions = {}): Promise<void> {\n const { span, updatedOptions } = createSpan(\"SearchIndexerClient-runIndexer\", options);\n try {\n await this.client.indexers.run(indexerName, updatedOptions);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Resets specific documents in the datasource to be selectively re-ingested by the indexer.\n * @param indexerName - The name of the indexer to reset documents for.\n * @param options - Additional optional arguments.\n */\n public async resetDocuments(\n indexerName: string,\n options: ResetDocumentsOptions = {},\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\"SearchIndexerClient-resetDocs\", options);\n try {\n await this.client.indexers.resetDocs(indexerName, {\n ...updatedOptions,\n keysOrIds: {\n documentKeys: updatedOptions.documentKeys,\n datasourceDocumentIds: updatedOptions.datasourceDocumentIds,\n },\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Reset an existing skillset in a search service.\n * @param skillsetName - The name of the skillset to reset.\n * @param skillNames - The names of skills to reset.\n * @param options - The options parameters.\n */\n public async resetSkills(skillsetName: string, options: ResetSkillsOptions = {}): Promise<void> {\n const { span, updatedOptions } = createSpan(\"SearchIndexerClient-resetSkills\", options);\n try {\n await this.client.skillsets.resetSkills(\n skillsetName,\n { skillNames: options.skillNames },\n updatedOptions,\n );\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { OperationOptions } from \"@azure/core-client\";\nimport { RestError } from \"@azure/core-rest-pipeline\";\nimport { delay } from \"@azure/core-util\";\nimport EventEmitter from \"events\";\nimport { IndexDocumentsResult } from \"./generated/data/models\";\nimport { IndexDocumentsBatch } from \"./indexDocumentsBatch\";\nimport {\n IndexDocumentsAction,\n IndexDocumentsOptions,\n SearchIndexingBufferedSenderDeleteDocumentsOptions,\n SearchIndexingBufferedSenderFlushDocumentsOptions,\n SearchIndexingBufferedSenderMergeDocumentsOptions,\n SearchIndexingBufferedSenderMergeOrUploadDocumentsOptions,\n SearchIndexingBufferedSenderOptions,\n SearchIndexingBufferedSenderUploadDocumentsOptions,\n} from \"./indexModels\";\nimport { getRandomIntegerInclusive } from \"./serviceUtils\";\nimport { createSpan } from \"./tracing\";\n\n/**\n * Index Documents Client\n */\nexport interface IndexDocumentsClient<TModel extends object> {\n /**\n * Perform a set of index modifications (upload, merge, mergeOrUpload, delete)\n * for the given set of documents.\n *\n * @param batch - An array of actions to perform on the index.\n * @param options - Additional options.\n */\n indexDocuments(\n batch: IndexDocumentsBatch<TModel>,\n options: IndexDocumentsOptions,\n ): Promise<IndexDocumentsResult>;\n}\n\n/**\n * Default Batch Size\n */\nexport const DEFAULT_BATCH_SIZE: number = 512;\n/**\n * Default window flush interval\n */\nexport const DEFAULT_FLUSH_WINDOW: number = 60000;\n/**\n * Default number of times to retry.\n */\nexport const DEFAULT_RETRY_COUNT: number = 3;\n/**\n * Default Max Delay between retries.\n */\nconst DEFAULT_MAX_RETRY_DELAY: number = 60000;\n\n/**\n * Class used to perform buffered operations against a search index,\n * including adding, updating, and removing them.\n */\nexport class SearchIndexingBufferedSender<TModel extends object> {\n /**\n * Search Client used to call the underlying IndexBatch operations.\n */\n private client: IndexDocumentsClient<TModel>;\n /**\n * Indicates if autoFlush is enabled.\n */\n private autoFlush: boolean;\n /**\n * Interval between flushes (in milliseconds).\n */\n private flushWindowInMs: number;\n /**\n * Delay between retries\n */\n private throttlingDelayInMs: number;\n /**\n * Maximum number of Retries\n */\n private maxRetriesPerAction: number;\n /**\n * Max Delay between retries\n */\n private maxThrottlingDelayInMs: number;\n /**\n * Size of the batch.\n */\n private initialBatchActionCount: number;\n /**\n * Batch object used to complete the service call.\n */\n private batchObject: IndexDocumentsBatch<TModel>;\n /**\n * Clean up for the timer\n */\n private cleanupTimer?: () => void;\n /**\n * Event emitter/publisher used in the Buffered Sender\n */\n private readonly emitter = new EventEmitter();\n /**\n * Method to retrieve the document key\n */\n private documentKeyRetriever: (document: TModel) => string;\n\n /**\n * Creates a new instance of SearchIndexingBufferedSender.\n *\n * @param client - Search Client used to call the underlying IndexBatch operations.\n * @param options - Options to modify auto flush.\n *\n */\n constructor(\n client: IndexDocumentsClient<TModel>,\n documentKeyRetriever: (document: TModel) => string,\n options: SearchIndexingBufferedSenderOptions = {},\n ) {\n this.client = client;\n this.documentKeyRetriever = documentKeyRetriever;\n // General Configuration properties\n this.autoFlush = options.autoFlush ?? true;\n this.initialBatchActionCount = options.initialBatchActionCount ?? DEFAULT_BATCH_SIZE;\n this.flushWindowInMs = options.flushWindowInMs ?? DEFAULT_FLUSH_WINDOW;\n // Retry specific configuration properties\n this.throttlingDelayInMs = options.throttlingDelayInMs ?? DEFAULT_FLUSH_WINDOW;\n this.maxRetriesPerAction = options.maxRetriesPerAction ?? DEFAULT_RETRY_COUNT;\n this.maxThrottlingDelayInMs = options.maxThrottlingDelayInMs ?? DEFAULT_MAX_RETRY_DELAY;\n\n this.batchObject = new IndexDocumentsBatch<TModel>();\n if (this.autoFlush) {\n const interval = setInterval(() => this.flush(), this.flushWindowInMs);\n interval?.unref();\n this.cleanupTimer = () => {\n clearInterval(interval);\n };\n }\n }\n\n /**\n * Uploads the documents/Adds the documents to the upload queue.\n *\n * @param documents - Documents to be uploaded.\n * @param options - Upload options.\n */\n public async uploadDocuments(\n documents: TModel[],\n options: SearchIndexingBufferedSenderUploadDocumentsOptions = {},\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\n \"SearchIndexingBufferedSender-uploadDocuments\",\n options,\n );\n try {\n this.batchObject.upload(documents);\n this.emitter.emit(\"batchAdded\", {\n action: \"upload\",\n documents,\n });\n return this.internalFlush(false, updatedOptions);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Merges the documents/Adds the documents to the merge queue.\n *\n * @param documents - Documents to be merged.\n * @param options - Upload options.\n */\n public async mergeDocuments(\n documents: TModel[],\n options: SearchIndexingBufferedSenderMergeDocumentsOptions = {},\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\n \"SearchIndexingBufferedSender-mergeDocuments\",\n options,\n );\n try {\n this.batchObject.merge(documents);\n this.emitter.emit(\"batchAdded\", {\n action: \"merge\",\n documents,\n });\n return this.internalFlush(false, updatedOptions);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Merges/Uploads the documents/Adds the documents to the merge/upload queue.\n *\n * @param documents - Documents to be merged/uploaded.\n * @param options - Upload options.\n */\n public async mergeOrUploadDocuments(\n documents: TModel[],\n options: SearchIndexingBufferedSenderMergeOrUploadDocumentsOptions = {},\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\n \"SearchIndexingBufferedSender-mergeOrUploadDocuments\",\n options,\n );\n try {\n this.batchObject.mergeOrUpload(documents);\n this.emitter.emit(\"batchAdded\", {\n action: \"mergeOrUpload\",\n documents,\n });\n return this.internalFlush(false, updatedOptions);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Deletes the documents/Adds the documents to the delete queue.\n *\n * @param documents - Documents to be deleted.\n * @param options - Upload options.\n */\n public async deleteDocuments(\n documents: TModel[],\n options: SearchIndexingBufferedSenderDeleteDocumentsOptions = {},\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\n \"SearchIndexingBufferedSender-deleteDocuments\",\n options,\n );\n try {\n this.batchObject.delete(documents);\n this.emitter.emit(\"batchAdded\", {\n action: \"delete\",\n documents,\n });\n return this.internalFlush(false, updatedOptions);\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Flushes the queue manually.\n *\n * @param options - Flush options.\n */\n public async flush(\n options: SearchIndexingBufferedSenderFlushDocumentsOptions = {},\n ): Promise<void> {\n const { span, updatedOptions } = createSpan(\"SearchIndexingBufferedSender-flush\", options);\n try {\n if (this.batchObject.actions.length > 0) {\n return this.internalFlush(true, updatedOptions);\n }\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * If using autoFlush: true, call this to cleanup the autoflush timer.\n */\n public async dispose(): Promise<void> {\n if (this.batchObject.actions.length > 0) {\n await this.internalFlush(true);\n }\n if (this.cleanupTimer) {\n this.cleanupTimer();\n }\n }\n\n /**\n * Attach Batch Added Event\n *\n * @param event - Event to be emitted\n * @param listener - Event Listener\n */\n public on(\n event: \"batchAdded\",\n listener: (e: { action: string; documents: TModel[] }) => void,\n ): void;\n /**\n * Attach Batch Sent Event\n *\n * @param event - Event to be emitted\n * @param listener - Event Listener\n */\n public on(event: \"beforeDocumentSent\", listener: (e: IndexDocumentsAction<TModel>) => void): void;\n /**\n * Attach Batch Succeeded Event\n *\n * @param event - Event to be emitted\n * @param listener - Event Listener\n */\n public on(event: \"batchSucceeded\", listener: (e: IndexDocumentsResult) => void): void;\n /**\n * Attach Batch Failed Event\n *\n * @param event - Event to be emitted\n * @param listener - Event Listener\n */\n public on(event: \"batchFailed\", listener: (e: RestError) => void): void;\n public on(\n event: \"batchAdded\" | \"beforeDocumentSent\" | \"batchSucceeded\" | \"batchFailed\" | \"batchResizing\",\n listener: (e: any) => void,\n ): void {\n this.emitter.on(event, listener);\n }\n\n /**\n * Detach Batch Added Event\n *\n * @param event - Event to be emitted\n * @param listener - Event Listener\n */\n public off(\n event: \"batchAdded\",\n listener: (e: { action: string; documents: TModel[] }) => void,\n ): void;\n /**\n * Detach Batch Sent Event\n *\n * @param event - Event to be emitted\n * @param listener - Event Listener\n */\n public off(\n event: \"beforeDocumentSent\",\n listener: (e: IndexDocumentsAction<TModel>) => void,\n ): void;\n /**\n * Detach Batch Succeeded Event\n *\n * @param event - Event to be emitted\n * @param listener - Event Listener\n */\n public off(event: \"batchSucceeded\", listener: (e: IndexDocumentsResult) => void): void;\n /**\n * Detach Batch Failed Event\n *\n * @param event - Event to be emitted\n * @param listener - Event Listener\n */\n public off(event: \"batchFailed\", listener: (e: RestError) => void): void;\n public off(\n event: \"batchAdded\" | \"beforeDocumentSent\" | \"batchSucceeded\" | \"batchFailed\",\n listener: (e: any) => void,\n ): void {\n this.emitter.removeListener(event, listener);\n }\n\n private isBatchReady(): boolean {\n return this.batchObject.actions.length >= this.initialBatchActionCount;\n }\n\n private async internalFlush(force: boolean, options: OperationOptions = {}): Promise<void> {\n if (force || (this.autoFlush && this.isBatchReady())) {\n // Split it\n const actions: IndexDocumentsAction<TModel>[] = this.batchObject.actions;\n this.batchObject = new IndexDocumentsBatch<TModel>();\n while (actions.length > 0) {\n const actionsToSend = actions.splice(0, this.initialBatchActionCount);\n const { batchToSubmit, submitLater } = this.pruneActions(actionsToSend);\n actions.unshift(...submitLater);\n await this.submitDocuments(batchToSubmit, options);\n }\n }\n }\n\n private pruneActions(batch: IndexDocumentsAction<TModel>[]): {\n batchToSubmit: IndexDocumentsAction<TModel>[];\n submitLater: IndexDocumentsAction<TModel>[];\n } {\n const hashSet: Set<string> = new Set<string>();\n const resultBatch: IndexDocumentsAction<TModel>[] = [];\n const pruned: IndexDocumentsAction<TModel>[] = [];\n\n for (const document of batch) {\n const key = this.documentKeyRetriever(document as unknown as TModel);\n if (hashSet.has(key)) {\n pruned.push(document);\n } else {\n hashSet.add(key);\n resultBatch.push(document);\n }\n }\n return { batchToSubmit: resultBatch, submitLater: pruned };\n }\n\n private async submitDocuments(\n actionsToSend: IndexDocumentsAction<TModel>[],\n options: OperationOptions,\n retryAttempt: number = 1,\n ): Promise<void> {\n try {\n for (const action of actionsToSend) {\n this.emitter.emit(\"beforeDocumentSent\", action);\n }\n const result = await this.client.indexDocuments(\n new IndexDocumentsBatch<TModel>(actionsToSend),\n options,\n );\n // raise success event\n this.emitter.emit(\"batchSucceeded\", result);\n } catch (e: any) {\n if (e.statusCode && e.statusCode === 413 && actionsToSend.length > 1) {\n // Cut the payload size to half\n const splitActionsArray = [\n actionsToSend.slice(0, actionsToSend.length / 2),\n actionsToSend.slice(actionsToSend.length / 2, actionsToSend.length),\n ];\n this.initialBatchActionCount = splitActionsArray[0].length; // So, we do not want 413 happening again and again\n for (const actions of splitActionsArray) {\n await this.submitDocuments(actions, options);\n }\n } else if (this.isRetryAbleError(e) && retryAttempt <= this.maxRetriesPerAction) {\n // Exponentially increase the delay each time\n const exponentialDelay = this.throttlingDelayInMs * Math.pow(2, retryAttempt);\n // Don't let the delay exceed the maximum\n const clampedExponentialDelay = Math.min(this.maxThrottlingDelayInMs, exponentialDelay);\n // Allow the final value to have some \"jitter\" (within 50% of the delay size) so\n // that retries across multiple clients don't occur simultaneously.\n const delayWithJitter =\n clampedExponentialDelay / 2 + getRandomIntegerInclusive(0, clampedExponentialDelay / 2);\n await delay(delayWithJitter);\n await this.submitDocuments(actionsToSend, options, retryAttempt + 1);\n } else {\n this.emitter.emit(\"batchFailed\", e);\n throw e;\n }\n }\n }\n\n private isRetryAbleError(e: any): boolean {\n return e.statusCode && (e.statusCode === 422 || e.statusCode === 409 || e.statusCode === 503);\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport * as fs from \"fs\";\nimport { promisify } from \"util\";\nimport { SynonymMap } from \"./serviceModels\";\nconst readFileAsync = promisify(fs.readFile);\n\n/**\n * Helper method to create a SynonymMap object. This is a NodeJS only method.\n *\n * @param name - Name of the SynonymMap.\n * @param filePath - Path of the file that contains the Synonyms (seperated by new lines)\n * @returns SynonymMap object\n */\nexport async function createSynonymMapFromFile(\n name: string,\n filePath: string,\n): Promise<SynonymMap> {\n const synonyms: string[] = (await readFileAsync(filePath, \"utf-8\"))\n .replace(/\\r/g, \"\")\n .split(\"\\n\")\n .map((line) => line.trim())\n .filter(Boolean);\n\n return {\n name,\n synonyms,\n };\n}\n"],"names":["KnownApiVersion20240901Preview","KnownSemanticErrorMode","KnownQueryDebugMode","KnownQueryLanguage","KnownSpeller","KnownQuerySpellerType","KnownVectorQueryKind","KnownVectorThresholdKind","KnownVectorFilterMode","KnownHybridCountAndFacetMode","KnownSemanticFieldState","KnownSemanticErrorReason","KnownSemanticSearchResultsType","KnownSearchIndexerDataSourceType","KnownBlobIndexerParsingMode","KnownBlobIndexerDataToExtract","KnownBlobIndexerImageAction","KnownBlobIndexerPDFTextRotationAlgorithm","KnownIndexerExecutionEnvironment","KnownIndexerExecutionStatusDetail","KnownIndexingMode","KnownIndexProjectionMode","KnownSearchFieldDataType","KnownLexicalAnalyzerName","KnownLexicalNormalizerName","KnownVectorEncodingFormat","KnownVectorSearchAlgorithmKind","KnownVectorSearchVectorizerKind","KnownVectorSearchCompressionKind","KnownVectorSearchAlgorithmMetric","KnownVectorSearchCompressionTarget","KnownAzureOpenAIModelName","KnownAIStudioModelCatalogName","KnownKeyPhraseExtractionSkillLanguage","KnownOcrSkillLanguage","KnownOcrLineEnding","KnownImageAnalysisSkillLanguage","KnownVisualFeature","KnownImageDetail","KnownEntityCategory","KnownEntityRecognitionSkillLanguage","KnownSentimentSkillLanguage","KnownPIIDetectionSkillMaskingMode","KnownSplitSkillLanguage","KnownTextSplitMode","KnownSplitSkillUnit","KnownSplitSkillEncoderModelName","KnownCustomEntityLookupSkillLanguage","KnownTextTranslationSkillLanguage","KnownRegexFlags","WorldGeodeticSystem1984","KnownSearchAudience","ErrorResponse","ErrorDetail","ErrorAdditionalInfo","discriminators","accept","endpoint","indexName","apiVersion","select","contentType","SearchRequestMapper","SuggestRequestMapper","IndexBatchMapper","AutocompleteRequestMapper","getOperationSpec","serializer","coreClient","Mappers","Mappers.ErrorResponse","Parameters.apiVersion","Parameters.endpoint","Parameters.indexName","Parameters.accept","Mappers.SearchDocumentsResult","Parameters.searchText","Parameters.includeTotalResultCount","Parameters.facets","Parameters.filter","Parameters.highlightFields","Parameters.highlightPostTag","Parameters.highlightPreTag","Parameters.minimumCoverage","Parameters.orderBy","Parameters.queryType","Parameters.scoringParameters","Parameters.scoringProfile","Parameters.searchFields","Parameters.searchMode","Parameters.scoringStatistics","Parameters.sessionId","Parameters.select","Parameters.skip","Parameters.top","Parameters.semanticConfiguration","Parameters.semanticErrorHandling","Parameters.semanticMaxWaitInMilliseconds","Parameters.answers","Parameters.captions","Parameters.semanticQuery","Parameters.debug","Parameters.queryLanguage","Parameters.speller","Parameters.semanticFields","Parameters.searchRequest","Parameters.contentType","Parameters.selectedFields","Parameters.key","Mappers.SuggestDocumentsResult","Parameters.searchText1","Parameters.suggesterName","Parameters.filter1","Parameters.useFuzzyMatching","Parameters.highlightPostTag1","Parameters.highlightPreTag1","Parameters.minimumCoverage1","Parameters.orderBy1","Parameters.searchFields1","Parameters.select1","Parameters.top1","Parameters.suggestRequest","Mappers.IndexDocumentsResult","Parameters.batch","Mappers.AutocompleteResult","Parameters.autocompleteMode","Parameters.filter2","Parameters.useFuzzyMatching1","Parameters.highlightPostTag2","Parameters.highlightPreTag2","Parameters.minimumCoverage2","Parameters.searchFields2","Parameters.top2","Parameters.autocompleteRequest","coreHttpCompat","createClientLogger","isDefined","KnownTokenizerNames","KnownTokenFilterNames","KnownCharFilterNames","KnownAnalyzerNames","__rest","createTracingClient","utils.defaultServiceVersion","GeneratedClient","isTokenCredential","bearerTokenAuthenticationPolicy","utils.generatedSearchResultToPublicSearchResult","__await","__asyncDelegator","__asyncValues","utils.generatedSuggestDocumentsResultToPublicSuggestDocumentsResult","SearchIndexerDataSourceMapper","DocumentKeysOrIdsMapper","SearchIndexerMapper","SearchIndexerSkillsetMapper","SkillNamesMapper","SynonymMapMapper","SearchIndexMapper","AnalyzeRequestMapper","SearchAliasMapper","createOrUpdateOperationSpec","deleteOperationSpec","listOperationSpec","createOperationSpec","Mappers.SearchIndexerDataSource","Parameters.dataSource","Parameters.skipIndexerResetRequirementForCache","Parameters.dataSourceName","Parameters.ifMatch","Parameters.ifNoneMatch","Parameters.prefer","Mappers.ListDataSourcesResult","Parameters.indexerName","Parameters.keysOrIds","Parameters.overwrite","Mappers.SearchIndexer","Parameters.indexer","Parameters.disableCacheReprocessingChangeDetection","Mappers.ListIndexersResult","Mappers.SearchIndexerStatus","Mappers.SearchIndexerSkillset","Parameters.skillset","Parameters.skillsetName","Mappers.ListSkillsetsResult","Parameters.skillNames","Mappers.SynonymMap","Parameters.synonymMap","Parameters.synonymMapName","Mappers.ListSynonymMapsResult","Mappers.SearchIndex","Parameters.index","Mappers.ListIndexesResult","Parameters.allowIndexDowntime","Mappers.GetIndexStatisticsResult","Mappers.AnalyzeResult","Parameters.request","Mappers.SearchAlias","Parameters.alias","Mappers.ListAliasesResult","Parameters.aliasName","Mappers.ServiceStatistics","utils.generatedIndexToPublicIndex","utils.generatedSynonymMapToPublicSynonymMap","utils.publicIndexToGeneratedIndex","utils.publicSynonymMapToGeneratedSynonymMap","utils.generatedSearchIndexerToPublicSearchIndexer","utils.generatedDataSourceToPublicDataSource","utils.generatedSkillsetToPublicSkillset","utils.publicSearchIndexerToGeneratedSearchIndexer","utils.publicDataSourceToGeneratedDataSource","utils.publicSkillsetToGeneratedSkillset","delay","promisify","fs"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;AAMG;AAgtBH;AACA,IAAYA,gCAGX,CAAA;AAHD,CAAA,UAAY,8BAA8B,EAAA;;AAExC,IAAA,8BAAA,CAAA,kCAAA,CAAA,GAAA,oBAAuD,CAAA;AACzD,CAAC,EAHWA,gCAA8B,KAA9BA,gCAA8B,GAGzC,EAAA,CAAA,CAAA,CAAA;AAWD;AACYC,wCAKX;AALD,CAAA,UAAY,sBAAsB,EAAA;;AAEhC,IAAA,sBAAA,CAAA,SAAA,CAAA,GAAA,SAAmB,CAAA;;AAEnB,IAAA,sBAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;AACf,CAAC,EALWA,8BAAsB,KAAtBA,8BAAsB,GAKjC,EAAA,CAAA,CAAA,CAAA;AAYD;AACA,IAAY,oBAKX,CAAA;AALD,CAAA,UAAY,oBAAoB,EAAA;;AAE9B,IAAA,oBAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;;AAEb,IAAA,oBAAA,CAAA,YAAA,CAAA,GAAA,YAAyB,CAAA;AAC3B,CAAC,EALW,oBAAoB,KAApB,oBAAoB,GAK/B,EAAA,CAAA,CAAA,CAAA;AAYD;AACA,IAAY,qBAKX,CAAA;AALD,CAAA,UAAY,qBAAqB,EAAA;;AAE/B,IAAA,qBAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;;AAEb,IAAA,qBAAA,CAAA,YAAA,CAAA,GAAA,YAAyB,CAAA;AAC3B,CAAC,EALW,qBAAqB,KAArB,qBAAqB,GAKhC,EAAA,CAAA,CAAA,CAAA;AAYD;AACYC,qCAKX;AALD,CAAA,UAAY,mBAAmB,EAAA;;AAE7B,IAAA,mBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;;AAErB,IAAA,mBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACvB,CAAC,EALWA,2BAAmB,KAAnBA,2BAAmB,GAK9B,EAAA,CAAA,CAAA,CAAA;AAYD;AACYC,oCAiJX;AAjJD,CAAA,UAAY,kBAAkB,EAAA;;AAE5B,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;;AAEb,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,OAAc,CAAA;;AAEd,I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AA;;AAET,IAAA,qBAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;;AAET,IAAA,qBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;;AAEX,IAAA,qBAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;;AAET,IAAA,qBAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;;AAET,IAAA,qBAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;;AAET,IAAA,qBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;;AAEX,IAAA,qBAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;;AAET,IAAA,qBAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;;AAET,IAAA,qBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;;AAEX,IAAA,qBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;;AAEX,IAAA,qBAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;;AAET,IAAA,qBAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;;AAET,IAAA,qBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;;AAEX,IAAA,qBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;;AAEX,IAAA,qBAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;;AAET,IAAA,qBAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;;AAET,IAAA,qBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;;AAEX,IAAA,qBAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;;AAET,IAAA,qBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;;AAEX,IAAA,qBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;;AAEX,IAAA,qBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;;AAEX,IAAA,qBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;;AAEX,IAAA,qBAAA,CAAA,IAAA,CAAA,GAAA,IAAS,CAAA;;AAET,IAAA,qBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;;AAEX,IAAA,qBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;;AAEX,IAAA,qBAAA,CAAA,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"}
|