diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml
index 347ef0d47d3c..00b3280f479f 100644
--- a/common/config/rush/pnpm-lock.yaml
+++ b/common/config/rush/pnpm-lock.yaml
@@ -1442,6 +1442,16 @@ packages:
tslib: 2.6.2
dev: false
+ /@azure/core-lro@3.0.0-beta.1:
+ resolution: {integrity: sha512-KbkVHWhLnlDQRtIZGCPQFB6y2xgeL7p5iICRYTCDjHBpWX9W/I3HkkvbvK4SordNsKwWbLKfPLrOJKJdsJocEQ==}
+ engines: {node: '>=18.0.0'}
+ dependencies:
+ '@azure/abort-controller': 2.1.2
+ '@azure/core-util': 1.9.0
+ '@azure/logger': 1.1.2
+ tslib: 2.6.2
+ dev: false
+
/@azure/core-paging@1.6.2:
resolution: {integrity: sha512-YKWi9YuCU04B55h25cnOYZHxXYtEvQEbKST5vqRga7hWY9ydd3FZHdeQF8pyh+acWZvppw13M/LMGx0LABUVMA==}
engines: {node: '>=18.0.0'}
@@ -1938,15 +1948,6 @@ packages:
dev: false
optional: true
- /@esbuild/aix-ppc64@0.21.3:
- resolution: {integrity: sha512-yTgnwQpFVYfvvo4SvRFB0SwrW8YjOxEoT7wfMT7Ol5v7v5LDNvSGo67aExmxOb87nQNeWPVvaGBNfQ7BXcrZ9w==}
- engines: {node: '>=12'}
- cpu: [ppc64]
- os: [aix]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/android-arm64@0.20.2:
resolution: {integrity: sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==}
engines: {node: '>=12'}
@@ -1956,15 +1957,6 @@ packages:
dev: false
optional: true
- /@esbuild/android-arm64@0.21.3:
- resolution: {integrity: sha512-c+ty9necz3zB1Y+d/N+mC6KVVkGUUOcm4ZmT5i/Fk5arOaY3i6CA3P5wo/7+XzV8cb4GrI/Zjp8NuOQ9Lfsosw==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [android]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/android-arm@0.20.2:
resolution: {integrity: sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==}
engines: {node: '>=12'}
@@ -1974,15 +1966,6 @@ packages:
dev: false
optional: true
- /@esbuild/android-arm@0.21.3:
- resolution: {integrity: sha512-bviJOLMgurLJtF1/mAoJLxDZDL6oU5/ztMHnJQRejbJrSc9FFu0QoUoFhvi6qSKJEw9y5oGyvr9fuDtzJ30rNQ==}
- engines: {node: '>=12'}
- cpu: [arm]
- os: [android]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/android-x64@0.20.2:
resolution: {integrity: sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==}
engines: {node: '>=12'}
@@ -1992,15 +1975,6 @@ packages:
dev: false
optional: true
- /@esbuild/android-x64@0.21.3:
- resolution: {integrity: sha512-JReHfYCRK3FVX4Ra+y5EBH1b9e16TV2OxrPAvzMsGeES0X2Ndm9ImQRI4Ket757vhc5XBOuGperw63upesclRw==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [android]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/darwin-arm64@0.20.2:
resolution: {integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==}
engines: {node: '>=12'}
@@ -2010,15 +1984,6 @@ packages:
dev: false
optional: true
- /@esbuild/darwin-arm64@0.21.3:
- resolution: {integrity: sha512-U3fuQ0xNiAkXOmQ6w5dKpEvXQRSpHOnbw7gEfHCRXPeTKW9sBzVck6C5Yneb8LfJm0l6le4NQfkNPnWMSlTFUQ==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [darwin]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/darwin-x64@0.20.2:
resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==}
engines: {node: '>=12'}
@@ -2028,15 +1993,6 @@ packages:
dev: false
optional: true
- /@esbuild/darwin-x64@0.21.3:
- resolution: {integrity: sha512-3m1CEB7F07s19wmaMNI2KANLcnaqryJxO1fXHUV5j1rWn+wMxdUYoPyO2TnAbfRZdi7ADRwJClmOwgT13qlP3Q==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [darwin]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/freebsd-arm64@0.20.2:
resolution: {integrity: sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==}
engines: {node: '>=12'}
@@ -2046,15 +2002,6 @@ packages:
dev: false
optional: true
- /@esbuild/freebsd-arm64@0.21.3:
- resolution: {integrity: sha512-fsNAAl5pU6wmKHq91cHWQT0Fz0vtyE1JauMzKotrwqIKAswwP5cpHUCxZNSTuA/JlqtScq20/5KZ+TxQdovU/g==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [freebsd]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/freebsd-x64@0.20.2:
resolution: {integrity: sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==}
engines: {node: '>=12'}
@@ -2064,15 +2011,6 @@ packages:
dev: false
optional: true
- /@esbuild/freebsd-x64@0.21.3:
- resolution: {integrity: sha512-tci+UJ4zP5EGF4rp8XlZIdq1q1a/1h9XuronfxTMCNBslpCtmk97Q/5qqy1Mu4zIc0yswN/yP/BLX+NTUC1bXA==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [freebsd]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/linux-arm64@0.20.2:
resolution: {integrity: sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==}
engines: {node: '>=12'}
@@ -2082,15 +2020,6 @@ packages:
dev: false
optional: true
- /@esbuild/linux-arm64@0.21.3:
- resolution: {integrity: sha512-vvG6R5g5ieB4eCJBQevyDMb31LMHthLpXTc2IGkFnPWS/GzIFDnaYFp558O+XybTmYrVjxnryru7QRleJvmZ6Q==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [linux]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/linux-arm@0.20.2:
resolution: {integrity: sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==}
engines: {node: '>=12'}
@@ -2100,15 +2029,6 @@ packages:
dev: false
optional: true
- /@esbuild/linux-arm@0.21.3:
- resolution: {integrity: sha512-f6kz2QpSuyHHg01cDawj0vkyMwuIvN62UAguQfnNVzbge2uWLhA7TCXOn83DT0ZvyJmBI943MItgTovUob36SQ==}
- engines: {node: '>=12'}
- cpu: [arm]
- os: [linux]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/linux-ia32@0.20.2:
resolution: {integrity: sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==}
engines: {node: '>=12'}
@@ -2118,15 +2038,6 @@ packages:
dev: false
optional: true
- /@esbuild/linux-ia32@0.21.3:
- resolution: {integrity: sha512-HjCWhH7K96Na+66TacDLJmOI9R8iDWDDiqe17C7znGvvE4sW1ECt9ly0AJ3dJH62jHyVqW9xpxZEU1jKdt+29A==}
- engines: {node: '>=12'}
- cpu: [ia32]
- os: [linux]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/linux-loong64@0.20.2:
resolution: {integrity: sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==}
engines: {node: '>=12'}
@@ -2136,15 +2047,6 @@ packages:
dev: false
optional: true
- /@esbuild/linux-loong64@0.21.3:
- resolution: {integrity: sha512-BGpimEccmHBZRcAhdlRIxMp7x9PyJxUtj7apL2IuoG9VxvU/l/v1z015nFs7Si7tXUwEsvjc1rOJdZCn4QTU+Q==}
- engines: {node: '>=12'}
- cpu: [loong64]
- os: [linux]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/linux-mips64el@0.20.2:
resolution: {integrity: sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==}
engines: {node: '>=12'}
@@ -2154,15 +2056,6 @@ packages:
dev: false
optional: true
- /@esbuild/linux-mips64el@0.21.3:
- resolution: {integrity: sha512-5rMOWkp7FQGtAH3QJddP4w3s47iT20hwftqdm7b+loe95o8JU8ro3qZbhgMRy0VuFU0DizymF1pBKkn3YHWtsw==}
- engines: {node: '>=12'}
- cpu: [mips64el]
- os: [linux]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/linux-ppc64@0.20.2:
resolution: {integrity: sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==}
engines: {node: '>=12'}
@@ -2172,15 +2065,6 @@ packages:
dev: false
optional: true
- /@esbuild/linux-ppc64@0.21.3:
- resolution: {integrity: sha512-h0zj1ldel89V5sjPLo5H1SyMzp4VrgN1tPkN29TmjvO1/r0MuMRwJxL8QY05SmfsZRs6TF0c/IDH3u7XYYmbAg==}
- engines: {node: '>=12'}
- cpu: [ppc64]
- os: [linux]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/linux-riscv64@0.20.2:
resolution: {integrity: sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==}
engines: {node: '>=12'}
@@ -2190,15 +2074,6 @@ packages:
dev: false
optional: true
- /@esbuild/linux-riscv64@0.21.3:
- resolution: {integrity: sha512-dkAKcTsTJ+CRX6bnO17qDJbLoW37npd5gSNtSzjYQr0svghLJYGYB0NF1SNcU1vDcjXLYS5pO4qOW4YbFama4A==}
- engines: {node: '>=12'}
- cpu: [riscv64]
- os: [linux]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/linux-s390x@0.20.2:
resolution: {integrity: sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==}
engines: {node: '>=12'}
@@ -2208,15 +2083,6 @@ packages:
dev: false
optional: true
- /@esbuild/linux-s390x@0.21.3:
- resolution: {integrity: sha512-vnD1YUkovEdnZWEuMmy2X2JmzsHQqPpZElXx6dxENcIwTu+Cu5ERax6+Ke1QsE814Zf3c6rxCfwQdCTQ7tPuXA==}
- engines: {node: '>=12'}
- cpu: [s390x]
- os: [linux]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/linux-x64@0.20.2:
resolution: {integrity: sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==}
engines: {node: '>=12'}
@@ -2226,15 +2092,6 @@ packages:
dev: false
optional: true
- /@esbuild/linux-x64@0.21.3:
- resolution: {integrity: sha512-IOXOIm9WaK7plL2gMhsWJd+l2bfrhfilv0uPTptoRoSb2p09RghhQQp9YY6ZJhk/kqmeRt6siRdMSLLwzuT0KQ==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [linux]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/netbsd-x64@0.20.2:
resolution: {integrity: sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==}
engines: {node: '>=12'}
@@ -2244,15 +2101,6 @@ packages:
dev: false
optional: true
- /@esbuild/netbsd-x64@0.21.3:
- resolution: {integrity: sha512-uTgCwsvQ5+vCQnqM//EfDSuomo2LhdWhFPS8VL8xKf+PKTCrcT/2kPPoWMTs22aB63MLdGMJiE3f1PHvCDmUOw==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [netbsd]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/openbsd-x64@0.20.2:
resolution: {integrity: sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==}
engines: {node: '>=12'}
@@ -2262,15 +2110,6 @@ packages:
dev: false
optional: true
- /@esbuild/openbsd-x64@0.21.3:
- resolution: {integrity: sha512-vNAkR17Ub2MgEud2Wag/OE4HTSI6zlb291UYzHez/psiKarp0J8PKGDnAhMBcHFoOHMXHfExzmjMojJNbAStrQ==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [openbsd]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/sunos-x64@0.20.2:
resolution: {integrity: sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==}
engines: {node: '>=12'}
@@ -2280,15 +2119,6 @@ packages:
dev: false
optional: true
- /@esbuild/sunos-x64@0.21.3:
- resolution: {integrity: sha512-W8H9jlGiSBomkgmouaRoTXo49j4w4Kfbl6I1bIdO/vT0+0u4f20ko3ELzV3hPI6XV6JNBVX+8BC+ajHkvffIJA==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [sunos]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/win32-arm64@0.20.2:
resolution: {integrity: sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==}
engines: {node: '>=12'}
@@ -2298,15 +2128,6 @@ packages:
dev: false
optional: true
- /@esbuild/win32-arm64@0.21.3:
- resolution: {integrity: sha512-EjEomwyLSCg8Ag3LDILIqYCZAq/y3diJ04PnqGRgq8/4O3VNlXyMd54j/saShaN4h5o5mivOjAzmU6C3X4v0xw==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [win32]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/win32-ia32@0.20.2:
resolution: {integrity: sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==}
engines: {node: '>=12'}
@@ -2316,15 +2137,6 @@ packages:
dev: false
optional: true
- /@esbuild/win32-ia32@0.21.3:
- resolution: {integrity: sha512-WGiE/GgbsEwR33++5rzjiYsKyHywE8QSZPF7Rfx9EBfK3Qn3xyR6IjyCr5Uk38Kg8fG4/2phN7sXp4NPWd3fcw==}
- engines: {node: '>=12'}
- cpu: [ia32]
- os: [win32]
- requiresBuild: true
- dev: false
- optional: true
-
/@esbuild/win32-x64@0.20.2:
resolution: {integrity: sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==}
engines: {node: '>=12'}
@@ -2334,15 +2146,6 @@ packages:
dev: false
optional: true
- /@esbuild/win32-x64@0.21.3:
- resolution: {integrity: sha512-xRxC0jaJWDLYvcUvjQmHCJSfMrgmUuvsoXgDeU/wTorQ1ngDdUBuFtgY3W1Pc5sprGAvZBtWdJX7RPg/iZZUqA==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [win32]
- requiresBuild: true
- dev: false
- optional: true
-
/@eslint-community/eslint-utils@4.4.0(eslint@8.57.0):
resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -2529,10 +2332,6 @@ packages:
lodash: 4.17.21
dev: false
- /@jspm/core@2.0.1:
- resolution: {integrity: sha512-Lg3PnLp0QXpxwLIAuuJboLeRaIhrgJjeuh797QADg3xz8wGLugQOS5DpsE8A6i6Adgzf+bacllkKZG3J0tGfDw==}
- dev: false
-
/@ljharb/through@2.3.13:
resolution: {integrity: sha512-/gKJun8NNiWGZJkGzI/Ragc53cOdcLNdzjLaIa+GEjguQs0ulsurx8WN0jijdK9yPqDvziX995sMRLyLt1uZMQ==}
engines: {node: '>= 0.4'}
@@ -3125,7 +2924,7 @@ packages:
- supports-color
dev: false
- /@rollup/plugin-commonjs@25.0.7(rollup@4.17.2):
+ /@rollup/plugin-commonjs@25.0.7(rollup@4.18.0):
resolution: {integrity: sha512-nEvcR+LRjEjsaSsc4x3XZfCCvZIaSMenZu/OiwOKGN2UhQpAYI7ru7czFvyWbErlpoGjnSX3D5Ch5FcMA3kRWQ==}
engines: {node: '>=14.0.0'}
peerDependencies:
@@ -3134,16 +2933,16 @@ packages:
rollup:
optional: true
dependencies:
- '@rollup/pluginutils': 5.1.0(rollup@4.17.2)
+ '@rollup/pluginutils': 5.1.0(rollup@4.18.0)
commondir: 1.0.1
estree-walker: 2.0.2
glob: 8.1.0
is-reference: 1.2.1
magic-string: 0.30.10
- rollup: 4.17.2
+ rollup: 4.18.0
dev: false
- /@rollup/plugin-inject@5.0.5(rollup@4.17.2):
+ /@rollup/plugin-inject@5.0.5(rollup@4.18.0):
resolution: {integrity: sha512-2+DEJbNBoPROPkgTDNe8/1YXWcqxbN5DTjASVIOx8HS+pITXushyNiBV56RB08zuptzz8gT3YfkqriTBVycepg==}
engines: {node: '>=14.0.0'}
peerDependencies:
@@ -3152,13 +2951,13 @@ packages:
rollup:
optional: true
dependencies:
- '@rollup/pluginutils': 5.1.0(rollup@4.17.2)
+ '@rollup/pluginutils': 5.1.0(rollup@4.18.0)
estree-walker: 2.0.2
magic-string: 0.30.10
- rollup: 4.17.2
+ rollup: 4.18.0
dev: false
- /@rollup/plugin-json@6.1.0(rollup@4.17.2):
+ /@rollup/plugin-json@6.1.0(rollup@4.18.0):
resolution: {integrity: sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA==}
engines: {node: '>=14.0.0'}
peerDependencies:
@@ -3167,11 +2966,11 @@ packages:
rollup:
optional: true
dependencies:
- '@rollup/pluginutils': 5.1.0(rollup@4.17.2)
- rollup: 4.17.2
+ '@rollup/pluginutils': 5.1.0(rollup@4.18.0)
+ rollup: 4.18.0
dev: false
- /@rollup/plugin-multi-entry@6.0.1(rollup@4.17.2):
+ /@rollup/plugin-multi-entry@6.0.1(rollup@4.18.0):
resolution: {integrity: sha512-AXm6toPyTSfbYZWghQGbom1Uh7dHXlrGa+HoiYNhQtDUE3Q7LqoUYdVQx9E1579QWS1uOiu+cZRSE4okO7ySgw==}
engines: {node: '>=14.0.0'}
peerDependencies:
@@ -3180,12 +2979,12 @@ packages:
rollup:
optional: true
dependencies:
- '@rollup/plugin-virtual': 3.0.2(rollup@4.17.2)
+ '@rollup/plugin-virtual': 3.0.2(rollup@4.18.0)
matched: 5.0.1
- rollup: 4.17.2
+ rollup: 4.18.0
dev: false
- /@rollup/plugin-node-resolve@15.2.3(rollup@4.17.2):
+ /@rollup/plugin-node-resolve@15.2.3(rollup@4.18.0):
resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==}
engines: {node: '>=14.0.0'}
peerDependencies:
@@ -3194,16 +2993,16 @@ packages:
rollup:
optional: true
dependencies:
- '@rollup/pluginutils': 5.1.0(rollup@4.17.2)
+ '@rollup/pluginutils': 5.1.0(rollup@4.18.0)
'@types/resolve': 1.20.2
deepmerge: 4.3.1
is-builtin-module: 3.2.1
is-module: 1.0.0
resolve: 1.22.8
- rollup: 4.17.2
+ rollup: 4.18.0
dev: false
- /@rollup/plugin-virtual@3.0.2(rollup@4.17.2):
+ /@rollup/plugin-virtual@3.0.2(rollup@4.18.0):
resolution: {integrity: sha512-10monEYsBp3scM4/ND4LNH5Rxvh3e/cVeL3jWTgZ2SrQ+BmUoQcopVQvnaMcOnykb1VkxUFuDAN+0FnpTFRy2A==}
engines: {node: '>=14.0.0'}
peerDependencies:
@@ -3212,10 +3011,10 @@ packages:
rollup:
optional: true
dependencies:
- rollup: 4.17.2
+ rollup: 4.18.0
dev: false
- /@rollup/pluginutils@5.1.0(rollup@4.17.2):
+ /@rollup/pluginutils@5.1.0(rollup@4.18.0):
resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==}
engines: {node: '>=14.0.0'}
peerDependencies:
@@ -3227,131 +3026,131 @@ packages:
'@types/estree': 1.0.5
estree-walker: 2.0.2
picomatch: 2.3.1
- rollup: 4.17.2
+ rollup: 4.18.0
dev: false
- /@rollup/rollup-android-arm-eabi@4.17.2:
- resolution: {integrity: sha512-NM0jFxY8bB8QLkoKxIQeObCaDlJKewVlIEkuyYKm5An1tdVZ966w2+MPQ2l8LBZLjR+SgyV+nRkTIunzOYBMLQ==}
+ /@rollup/rollup-android-arm-eabi@4.18.0:
+ resolution: {integrity: sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==}
cpu: [arm]
os: [android]
requiresBuild: true
dev: false
optional: true
- /@rollup/rollup-android-arm64@4.17.2:
- resolution: {integrity: sha512-yeX/Usk7daNIVwkq2uGoq2BYJKZY1JfyLTaHO/jaiSwi/lsf8fTFoQW/n6IdAsx5tx+iotu2zCJwz8MxI6D/Bw==}
+ /@rollup/rollup-android-arm64@4.18.0:
+ resolution: {integrity: sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==}
cpu: [arm64]
os: [android]
requiresBuild: true
dev: false
optional: true
- /@rollup/rollup-darwin-arm64@4.17.2:
- resolution: {integrity: sha512-kcMLpE6uCwls023+kknm71ug7MZOrtXo+y5p/tsg6jltpDtgQY1Eq5sGfHcQfb+lfuKwhBmEURDga9N0ol4YPw==}
+ /@rollup/rollup-darwin-arm64@4.18.0:
+ resolution: {integrity: sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==}
cpu: [arm64]
os: [darwin]
requiresBuild: true
dev: false
optional: true
- /@rollup/rollup-darwin-x64@4.17.2:
- resolution: {integrity: sha512-AtKwD0VEx0zWkL0ZjixEkp5tbNLzX+FCqGG1SvOu993HnSz4qDI6S4kGzubrEJAljpVkhRSlg5bzpV//E6ysTQ==}
+ /@rollup/rollup-darwin-x64@4.18.0:
+ resolution: {integrity: sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==}
cpu: [x64]
os: [darwin]
requiresBuild: true
dev: false
optional: true
- /@rollup/rollup-linux-arm-gnueabihf@4.17.2:
- resolution: {integrity: sha512-3reX2fUHqN7sffBNqmEyMQVj/CKhIHZd4y631duy0hZqI8Qoqf6lTtmAKvJFYa6bhU95B1D0WgzHkmTg33In0A==}
+ /@rollup/rollup-linux-arm-gnueabihf@4.18.0:
+ resolution: {integrity: sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==}
cpu: [arm]
os: [linux]
requiresBuild: true
dev: false
optional: true
- /@rollup/rollup-linux-arm-musleabihf@4.17.2:
- resolution: {integrity: sha512-uSqpsp91mheRgw96xtyAGP9FW5ChctTFEoXP0r5FAzj/3ZRv3Uxjtc7taRQSaQM/q85KEKjKsZuiZM3GyUivRg==}
+ /@rollup/rollup-linux-arm-musleabihf@4.18.0:
+ resolution: {integrity: sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==}
cpu: [arm]
os: [linux]
requiresBuild: true
dev: false
optional: true
- /@rollup/rollup-linux-arm64-gnu@4.17.2:
- resolution: {integrity: sha512-EMMPHkiCRtE8Wdk3Qhtciq6BndLtstqZIroHiiGzB3C5LDJmIZcSzVtLRbwuXuUft1Cnv+9fxuDtDxz3k3EW2A==}
+ /@rollup/rollup-linux-arm64-gnu@4.18.0:
+ resolution: {integrity: sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==}
cpu: [arm64]
os: [linux]
requiresBuild: true
dev: false
optional: true
- /@rollup/rollup-linux-arm64-musl@4.17.2:
- resolution: {integrity: sha512-NMPylUUZ1i0z/xJUIx6VUhISZDRT+uTWpBcjdv0/zkp7b/bQDF+NfnfdzuTiB1G6HTodgoFa93hp0O1xl+/UbA==}
+ /@rollup/rollup-linux-arm64-musl@4.18.0:
+ resolution: {integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==}
cpu: [arm64]
os: [linux]
requiresBuild: true
dev: false
optional: true
- /@rollup/rollup-linux-powerpc64le-gnu@4.17.2:
- resolution: {integrity: sha512-T19My13y8uYXPw/L/k0JYaX1fJKFT/PWdXiHr8mTbXWxjVF1t+8Xl31DgBBvEKclw+1b00Chg0hxE2O7bTG7GQ==}
+ /@rollup/rollup-linux-powerpc64le-gnu@4.18.0:
+ resolution: {integrity: sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==}
cpu: [ppc64]
os: [linux]
requiresBuild: true
dev: false
optional: true
- /@rollup/rollup-linux-riscv64-gnu@4.17.2:
- resolution: {integrity: sha512-BOaNfthf3X3fOWAB+IJ9kxTgPmMqPPH5f5k2DcCsRrBIbWnaJCgX2ll77dV1TdSy9SaXTR5iDXRL8n7AnoP5cg==}
+ /@rollup/rollup-linux-riscv64-gnu@4.18.0:
+ resolution: {integrity: sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==}
cpu: [riscv64]
os: [linux]
requiresBuild: true
dev: false
optional: true
- /@rollup/rollup-linux-s390x-gnu@4.17.2:
- resolution: {integrity: sha512-W0UP/x7bnn3xN2eYMql2T/+wpASLE5SjObXILTMPUBDB/Fg/FxC+gX4nvCfPBCbNhz51C+HcqQp2qQ4u25ok6g==}
+ /@rollup/rollup-linux-s390x-gnu@4.18.0:
+ resolution: {integrity: sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==}
cpu: [s390x]
os: [linux]
requiresBuild: true
dev: false
optional: true
- /@rollup/rollup-linux-x64-gnu@4.17.2:
- resolution: {integrity: sha512-Hy7pLwByUOuyaFC6mAr7m+oMC+V7qyifzs/nW2OJfC8H4hbCzOX07Ov0VFk/zP3kBsELWNFi7rJtgbKYsav9QQ==}
+ /@rollup/rollup-linux-x64-gnu@4.18.0:
+ resolution: {integrity: sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==}
cpu: [x64]
os: [linux]
requiresBuild: true
dev: false
optional: true
- /@rollup/rollup-linux-x64-musl@4.17.2:
- resolution: {integrity: sha512-h1+yTWeYbRdAyJ/jMiVw0l6fOOm/0D1vNLui9iPuqgRGnXA0u21gAqOyB5iHjlM9MMfNOm9RHCQ7zLIzT0x11Q==}
+ /@rollup/rollup-linux-x64-musl@4.18.0:
+ resolution: {integrity: sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==}
cpu: [x64]
os: [linux]
requiresBuild: true
dev: false
optional: true
- /@rollup/rollup-win32-arm64-msvc@4.17.2:
- resolution: {integrity: sha512-tmdtXMfKAjy5+IQsVtDiCfqbynAQE/TQRpWdVataHmhMb9DCoJxp9vLcCBjEQWMiUYxO1QprH/HbY9ragCEFLA==}
+ /@rollup/rollup-win32-arm64-msvc@4.18.0:
+ resolution: {integrity: sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==}
cpu: [arm64]
os: [win32]
requiresBuild: true
dev: false
optional: true
- /@rollup/rollup-win32-ia32-msvc@4.17.2:
- resolution: {integrity: sha512-7II/QCSTAHuE5vdZaQEwJq2ZACkBpQDOmQsE6D6XUbnBHW8IAhm4eTufL6msLJorzrHDFv3CF8oCA/hSIRuZeQ==}
+ /@rollup/rollup-win32-ia32-msvc@4.18.0:
+ resolution: {integrity: sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==}
cpu: [ia32]
os: [win32]
requiresBuild: true
dev: false
optional: true
- /@rollup/rollup-win32-x64-msvc@4.17.2:
- resolution: {integrity: sha512-TGGO7v7qOq4CYmSBVEYpI1Y5xDuCEnbVC5Vth8mOsW0gDSzxNrVERPc790IGHsrT2dQSimgMr9Ub3Y1Jci5/8w==}
+ /@rollup/rollup-win32-x64-msvc@4.18.0:
+ resolution: {integrity: sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==}
cpu: [x64]
os: [win32]
requiresBuild: true
@@ -3531,7 +3330,7 @@ packages:
/@types/bunyan@1.8.9:
resolution: {integrity: sha512-ZqS9JGpBxVOvsawzmVt30sP++gSQMTejCkIAQ3VdadOcRE8izTyW66hufvwLeH+YEGP6Js2AW7Gz+RMyvrEbmw==}
dependencies:
- '@types/node': 20.10.8
+ '@types/node': 18.19.33
dev: false
/@types/chai-as-promised@7.1.8:
@@ -3553,7 +3352,7 @@ packages:
/@types/connect@3.4.38:
resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==}
dependencies:
- '@types/node': 20.10.8
+ '@types/node': 18.19.33
dev: false
/@types/cookie@0.4.1:
@@ -3563,7 +3362,7 @@ packages:
/@types/cors@2.8.17:
resolution: {integrity: sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==}
dependencies:
- '@types/node': 20.10.8
+ '@types/node': 18.19.33
dev: false
/@types/debug@4.1.12:
@@ -3615,6 +3414,15 @@ packages:
'@types/send': 0.17.4
dev: false
+ /@types/express-serve-static-core@4.19.1:
+ resolution: {integrity: sha512-ej0phymbFLoCB26dbbq5PGScsf2JAJ4IJHjG10LalgUV36XKTmA4GdA+PVllKvRk0sEKt64X8975qFnkSi0hqA==}
+ dependencies:
+ '@types/node': 18.19.33
+ '@types/qs': 6.9.15
+ '@types/range-parser': 1.2.7
+ '@types/send': 0.17.4
+ dev: false
+
/@types/express@4.17.21:
resolution: {integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==}
dependencies:
@@ -3730,7 +3538,7 @@ packages:
/@types/mysql@2.15.22:
resolution: {integrity: sha512-wK1pzsJVVAjYCSZWQoWHziQZbNggXFDUEIGf54g4ZM/ERuP86uGdWeKZWMYlqTPMZfHJJvLPyogXGvCOg87yLQ==}
dependencies:
- '@types/node': 20.10.8
+ '@types/node': 18.19.33
dev: false
/@types/node-fetch@2.6.11:
@@ -3765,7 +3573,7 @@ packages:
/@types/pg@8.6.1:
resolution: {integrity: sha512-1Kc4oAGzAl7uqUStZCDvaLFqZrW9qWSjXOmBfdgyBP5La7Us6Mg4GBvRlSoaZMhQF/zSj1C8CtKMBkoiT8eL8w==}
dependencies:
- '@types/node': 20.10.8
+ '@types/node': 18.19.33
pg-protocol: 1.6.1
pg-types: 2.2.0
dev: false
@@ -3876,7 +3684,7 @@ packages:
/@types/ws@8.5.10:
resolution: {integrity: sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==}
dependencies:
- '@types/node': 20.10.8
+ '@types/node': 18.19.33
dev: false
/@types/yargs-parser@21.0.3:
@@ -3893,7 +3701,7 @@ packages:
resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==}
requiresBuild: true
dependencies:
- '@types/node': 20.10.8
+ '@types/node': 18.19.33
dev: false
optional: true
@@ -4279,7 +4087,7 @@ packages:
resolution: {integrity: sha512-wuLJMmIBQYCsGZgYLTy5FIB2pF6Lfb6cXMSF8Qywwk3t20zWnAi7zLcQFdKQmIB8wyZpY5ER38x08GbwtR2cLA==}
engines: {node: '>= 14'}
dependencies:
- glob: 10.3.15
+ glob: 10.3.16
graceful-fs: 4.2.11
is-stream: 2.0.1
lazystream: 1.0.1
@@ -4577,11 +4385,11 @@ packages:
balanced-match: 1.0.2
dev: false
- /braces@3.0.2:
- resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
+ /braces@3.0.3:
+ resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
engines: {node: '>=8'}
dependencies:
- fill-range: 7.0.1
+ fill-range: 7.1.1
dev: false
/brorand@1.1.0:
@@ -4660,8 +4468,8 @@ packages:
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
hasBin: true
dependencies:
- caniuse-lite: 1.0.30001620
- electron-to-chromium: 1.4.774
+ caniuse-lite: 1.0.30001621
+ electron-to-chromium: 1.4.777
node-releases: 2.0.14
update-browserslist-db: 1.0.16(browserslist@4.23.0)
dev: false
@@ -4771,8 +4579,8 @@ packages:
engines: {node: '>=10'}
dev: false
- /caniuse-lite@1.0.30001620:
- resolution: {integrity: sha512-WJvYsOjd1/BYUY6SNGUosK9DUidBPDTnOARHp3fSmFO1ekdxaY6nKRttEVrfMmYi80ctS0kz1wiWmm14fVc3ew==}
+ /caniuse-lite@1.0.30001621:
+ resolution: {integrity: sha512-+NLXZiviFFKX0fk8Piwv3PfLPGtRqJeq2TiNoUff/qB5KJgwecJTvCXDpmlyP/eCI/GUEmp/h/y5j0yckiiZrA==}
dev: false
/catharsis@0.9.0:
@@ -4870,7 +4678,7 @@ packages:
engines: {node: '>= 8.10.0'}
dependencies:
anymatch: 3.1.3
- braces: 3.0.2
+ braces: 3.0.3
glob-parent: 5.1.2
is-binary-path: 2.1.0
is-glob: 4.0.3
@@ -4885,7 +4693,7 @@ packages:
engines: {node: '>= 8.10.0'}
dependencies:
anymatch: 3.1.3
- braces: 3.0.2
+ braces: 3.0.3
glob-parent: 5.1.2
is-binary-path: 2.1.0
is-glob: 4.0.3
@@ -5570,8 +5378,8 @@ packages:
resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
dev: false
- /electron-to-chromium@1.4.774:
- resolution: {integrity: sha512-132O1XCd7zcTkzS3FgkAzKmnBuNJjK8WjcTtNuoylj7MYbqw5eXehjQ5OK91g0zm7OTKIPeaAG4CPoRfD9M1Mg==}
+ /electron-to-chromium@1.4.777:
+ resolution: {integrity: sha512-n02NCwLJ3wexLfK/yQeqfywCblZqLcXphzmid5e8yVPdtEcida7li0A5WQKghHNG0FeOMCzeFOzEbtAh5riXFw==}
dev: false
/elliptic@6.5.5:
@@ -5620,7 +5428,7 @@ packages:
dependencies:
'@types/cookie': 0.4.1
'@types/cors': 2.8.17
- '@types/node': 20.10.8
+ '@types/node': 18.19.33
accepts: 1.3.8
base64id: 2.0.0
cookie: 0.4.2
@@ -5757,16 +5565,6 @@ packages:
resolution: {integrity: sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==}
dev: false
- /esbuild-plugin-polyfill-node@0.3.0(esbuild@0.21.3):
- resolution: {integrity: sha512-SHG6CKUfWfYyYXGpW143NEZtcVVn8S/WHcEOxk62LuDXnY4Zpmc+WmxJKN6GMTgTClXJXhEM5KQlxKY6YjbucQ==}
- peerDependencies:
- esbuild: '*'
- dependencies:
- '@jspm/core': 2.0.1
- esbuild: 0.21.3
- import-meta-resolve: 3.1.1
- dev: false
-
/esbuild@0.20.2:
resolution: {integrity: sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==}
engines: {node: '>=12'}
@@ -5798,37 +5596,6 @@ packages:
'@esbuild/win32-x64': 0.20.2
dev: false
- /esbuild@0.21.3:
- resolution: {integrity: sha512-Kgq0/ZsAPzKrbOjCQcjoSmPoWhlcVnGAUo7jvaLHoxW1Drto0KGkR1xBNg2Cp43b9ImvxmPEJZ9xkfcnqPsfBw==}
- engines: {node: '>=12'}
- hasBin: true
- requiresBuild: true
- optionalDependencies:
- '@esbuild/aix-ppc64': 0.21.3
- '@esbuild/android-arm': 0.21.3
- '@esbuild/android-arm64': 0.21.3
- '@esbuild/android-x64': 0.21.3
- '@esbuild/darwin-arm64': 0.21.3
- '@esbuild/darwin-x64': 0.21.3
- '@esbuild/freebsd-arm64': 0.21.3
- '@esbuild/freebsd-x64': 0.21.3
- '@esbuild/linux-arm': 0.21.3
- '@esbuild/linux-arm64': 0.21.3
- '@esbuild/linux-ia32': 0.21.3
- '@esbuild/linux-loong64': 0.21.3
- '@esbuild/linux-mips64el': 0.21.3
- '@esbuild/linux-ppc64': 0.21.3
- '@esbuild/linux-riscv64': 0.21.3
- '@esbuild/linux-s390x': 0.21.3
- '@esbuild/linux-x64': 0.21.3
- '@esbuild/netbsd-x64': 0.21.3
- '@esbuild/openbsd-x64': 0.21.3
- '@esbuild/sunos-x64': 0.21.3
- '@esbuild/win32-arm64': 0.21.3
- '@esbuild/win32-ia32': 0.21.3
- '@esbuild/win32-x64': 0.21.3
- dev: false
-
/escalade@3.1.2:
resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==}
engines: {node: '>=6'}
@@ -6294,7 +6061,7 @@ packages:
'@nodelib/fs.walk': 1.2.8
glob-parent: 5.1.2
merge2: 1.4.1
- micromatch: 4.0.5
+ micromatch: 4.0.7
dev: false
/fast-json-stable-stringify@2.1.0:
@@ -6354,8 +6121,8 @@ packages:
engines: {node: '>=4'}
dev: false
- /fill-range@7.0.1:
- resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
+ /fill-range@7.1.1:
+ resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
engines: {node: '>=8'}
dependencies:
to-regex-range: 5.0.1
@@ -6665,13 +6432,13 @@ packages:
is-glob: 4.0.3
dev: false
- /glob@10.3.15:
- resolution: {integrity: sha512-0c6RlJt1TICLyvJYIApxb8GsXoai0KUP7AxKKAtsYXdgJR1mGEUa7DgwShbdk1nly0PYoZj01xd4hzbq3fsjpw==}
+ /glob@10.3.16:
+ resolution: {integrity: sha512-JDKXl1DiuuHJ6fVS2FXjownaavciiHNUU4mOvV/B793RLh05vZL1rcPnCSaOgv1hDT6RDlY7AB7ZUvFYAtPgAw==}
engines: {node: '>=16 || 14 >=14.18'}
hasBin: true
dependencies:
foreground-child: 3.1.1
- jackspeak: 2.3.6
+ jackspeak: 3.1.2
minimatch: 9.0.4
minipass: 7.1.1
path-scurry: 1.11.1
@@ -6973,10 +6740,6 @@ packages:
engines: {node: '>=8'}
dev: false
- /import-meta-resolve@3.1.1:
- resolution: {integrity: sha512-qeywsE/KC3w9Fd2ORrRDUw6nS/nLwZpXgfrOc2IILvZYnCaEMd+D56Vfg9k4G29gIeVi3XKql1RQatME8iYsiw==}
- dev: false
-
/imurmurhash@0.1.4:
resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
engines: {node: '>=0.8.19'}
@@ -7431,8 +7194,8 @@ packages:
istanbul-lib-report: 3.0.1
dev: false
- /jackspeak@2.3.6:
- resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==}
+ /jackspeak@3.1.2:
+ resolution: {integrity: sha512-kWmLKn2tRtfYMF/BakihVVRzBKOxz4gJMiL2Rj91WnAB5TPZumSH99R/Yf1qE1u4uRimvCSJfm6hnxohXeEXjQ==}
engines: {node: '>=14'}
dependencies:
'@isaacs/cliui': 8.0.2
@@ -7746,7 +7509,7 @@ packages:
dependencies:
'@colors/colors': 1.5.0
body-parser: 1.20.2
- braces: 3.0.2
+ braces: 3.0.3
chokidar: 3.6.0
connect: 3.7.0
di: 0.0.1
@@ -8120,11 +7883,11 @@ packages:
- supports-color
dev: false
- /micromatch@4.0.5:
- resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
+ /micromatch@4.0.7:
+ resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==}
engines: {node: '>=8.6'}
dependencies:
- braces: 3.0.2
+ braces: 3.0.3
picomatch: 2.3.1
dev: false
@@ -9433,7 +9196,7 @@ packages:
resolution: {integrity: sha512-HXb4YqODuuXT7Icq1Z++0g2JmhgbUHSs3VT2xR83gqvAPUikYT2Xk+562KHQgiaNkbBOlPddYrDLsC44qQggzw==}
engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20}
dependencies:
- glob: 10.3.15
+ glob: 10.3.16
walk-up-path: 3.0.1
dev: false
@@ -9504,7 +9267,7 @@ packages:
engines: {node: '>=14.18'}
hasBin: true
dependencies:
- glob: 10.3.15
+ glob: 10.3.16
dev: false
/ripemd160@2.0.2:
@@ -9514,16 +9277,16 @@ packages:
inherits: 2.0.4
dev: false
- /rollup-plugin-polyfill-node@0.13.0(rollup@4.17.2):
+ /rollup-plugin-polyfill-node@0.13.0(rollup@4.18.0):
resolution: {integrity: sha512-FYEvpCaD5jGtyBuBFcQImEGmTxDTPbiHjJdrYIp+mFIwgXiXabxvKUK7ZT9P31ozu2Tqm9llYQMRWsfvTMTAOw==}
peerDependencies:
rollup: ^1.20.0 || ^2.0.0 || ^3.0.0 || ^4.0.0
dependencies:
- '@rollup/plugin-inject': 5.0.5(rollup@4.17.2)
- rollup: 4.17.2
+ '@rollup/plugin-inject': 5.0.5(rollup@4.18.0)
+ rollup: 4.18.0
dev: false
- /rollup-plugin-visualizer@5.12.0(rollup@4.17.2):
+ /rollup-plugin-visualizer@5.12.0(rollup@4.18.0):
resolution: {integrity: sha512-8/NU9jXcHRs7Nnj07PF2o4gjxmm9lXIrZ8r175bT9dK8qoLlvKTwRMArRCMgpMGlq8CTLugRvEmyMeMXIU2pNQ==}
engines: {node: '>=14'}
hasBin: true
@@ -9535,34 +9298,34 @@ packages:
dependencies:
open: 8.4.2
picomatch: 2.3.1
- rollup: 4.17.2
+ rollup: 4.18.0
source-map: 0.7.4
yargs: 17.7.2
dev: false
- /rollup@4.17.2:
- resolution: {integrity: sha512-/9ClTJPByC0U4zNLowV1tMBe8yMEAxewtR3cUNX5BoEpGH3dQEWpJLr6CLp0fPdYRF/fzVOgvDb1zXuakwF5kQ==}
+ /rollup@4.18.0:
+ resolution: {integrity: sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==}
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
hasBin: true
dependencies:
'@types/estree': 1.0.5
optionalDependencies:
- '@rollup/rollup-android-arm-eabi': 4.17.2
- '@rollup/rollup-android-arm64': 4.17.2
- '@rollup/rollup-darwin-arm64': 4.17.2
- '@rollup/rollup-darwin-x64': 4.17.2
- '@rollup/rollup-linux-arm-gnueabihf': 4.17.2
- '@rollup/rollup-linux-arm-musleabihf': 4.17.2
- '@rollup/rollup-linux-arm64-gnu': 4.17.2
- '@rollup/rollup-linux-arm64-musl': 4.17.2
- '@rollup/rollup-linux-powerpc64le-gnu': 4.17.2
- '@rollup/rollup-linux-riscv64-gnu': 4.17.2
- '@rollup/rollup-linux-s390x-gnu': 4.17.2
- '@rollup/rollup-linux-x64-gnu': 4.17.2
- '@rollup/rollup-linux-x64-musl': 4.17.2
- '@rollup/rollup-win32-arm64-msvc': 4.17.2
- '@rollup/rollup-win32-ia32-msvc': 4.17.2
- '@rollup/rollup-win32-x64-msvc': 4.17.2
+ '@rollup/rollup-android-arm-eabi': 4.18.0
+ '@rollup/rollup-android-arm64': 4.18.0
+ '@rollup/rollup-darwin-arm64': 4.18.0
+ '@rollup/rollup-darwin-x64': 4.18.0
+ '@rollup/rollup-linux-arm-gnueabihf': 4.18.0
+ '@rollup/rollup-linux-arm-musleabihf': 4.18.0
+ '@rollup/rollup-linux-arm64-gnu': 4.18.0
+ '@rollup/rollup-linux-arm64-musl': 4.18.0
+ '@rollup/rollup-linux-powerpc64le-gnu': 4.18.0
+ '@rollup/rollup-linux-riscv64-gnu': 4.18.0
+ '@rollup/rollup-linux-s390x-gnu': 4.18.0
+ '@rollup/rollup-linux-x64-gnu': 4.18.0
+ '@rollup/rollup-linux-x64-musl': 4.18.0
+ '@rollup/rollup-win32-arm64-msvc': 4.18.0
+ '@rollup/rollup-win32-ia32-msvc': 4.18.0
+ '@rollup/rollup-win32-x64-msvc': 4.18.0
fsevents: 2.3.3
dev: false
@@ -10156,7 +9919,7 @@ packages:
engines: {node: '>=14'}
hasBin: true
dependencies:
- glob: 10.3.15
+ glob: 10.3.16
mkdirp: 3.0.1
path-scurry: 1.11.1
rimraf: 5.0.7
@@ -10807,7 +10570,7 @@ packages:
peerDependencies:
vite: ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0
dependencies:
- '@rollup/plugin-inject': 5.0.5(rollup@4.17.2)
+ '@rollup/plugin-inject': 5.0.5(rollup@4.18.0)
node-stdlib-browser: 1.2.0
vite: 5.2.11(@types/node@18.19.33)
transitivePeerDependencies:
@@ -10845,7 +10608,7 @@ packages:
'@types/node': 18.19.33
esbuild: 0.20.2
postcss: 8.4.38
- rollup: 4.17.2
+ rollup: 4.18.0
optionalDependencies:
fsevents: 2.3.3
dev: false
@@ -11538,7 +11301,7 @@ packages:
'@azure/core-lro': 2.7.2
'@azure/identity': 4.2.0
'@microsoft/api-extractor': 7.43.7(@types/node@18.19.33)
- '@rollup/plugin-node-resolve': 15.2.3(rollup@4.17.2)
+ '@rollup/plugin-node-resolve': 15.2.3(rollup@4.18.0)
'@types/chai': 4.3.16
'@types/mocha': 10.0.6
'@types/node': 18.19.33
@@ -11562,7 +11325,7 @@ packages:
nyc: 15.1.0
prettier: 3.2.5
rimraf: 5.0.7
- rollup: 4.17.2
+ rollup: 4.18.0
sinon: 17.0.1
ts-node: 10.9.2(@types/node@18.19.33)(typescript@5.4.5)
tslib: 2.6.2
@@ -11841,13 +11604,12 @@ packages:
dev: false
file:projects/ai-vision-face.tgz:
- resolution: {integrity: sha512-MSxrXH46y77Vn7DU26EJAGrJC1s103JsoEI1EBVxa7c0CR33/H6ZkXRoDt8SRWW6pE5AFdqEKG8YShN2DMh2Ug==, tarball: file:projects/ai-vision-face.tgz}
+ resolution: {integrity: sha512-LWudf7lKl88RNyLHOr5ExrksdBjzVyQ8xDZah1Aw+1Tm0tdJz0RLOPizwqo0zfoIscEU3+nB+CmVQVFCtmKQOA==, tarball: file:projects/ai-vision-face.tgz}
name: '@rush-temp/ai-vision-face'
version: 0.0.0
dependencies:
'@azure-tools/test-credential': 1.1.0
- '@azure/abort-controller': 1.1.0
- '@azure/core-lro': 2.7.2
+ '@azure/core-lro': 3.0.0-beta.1
'@azure/identity': 4.2.0
'@microsoft/api-extractor': 7.43.7(@types/node@18.19.33)
'@types/node': 18.19.33
@@ -11929,7 +11691,7 @@ packages:
name: '@rush-temp/api-management-custom-widgets-scaffolder'
version: 0.0.0
dependencies:
- '@rollup/plugin-node-resolve': 15.2.3(rollup@4.17.2)
+ '@rollup/plugin-node-resolve': 15.2.3(rollup@4.18.0)
'@types/inquirer': 9.0.7
'@types/mustache': 4.2.5
'@types/node': 18.19.33
@@ -11938,13 +11700,13 @@ packages:
'@vitest/coverage-istanbul': 1.6.0(vitest@1.6.0)
chalk: 4.1.2
eslint: 8.57.0
- glob: 10.3.15
+ glob: 10.3.16
inquirer: 9.2.22
magic-string: 0.30.10
mustache: 4.2.0
prettier: 3.2.5
rimraf: 5.0.7
- rollup: 4.17.2
+ rollup: 4.18.0
tshy: 1.14.0
tslib: 2.6.2
typescript: 5.3.3
@@ -13502,7 +13264,7 @@ packages:
dev: false
file:projects/arm-containerservicefleet.tgz:
- resolution: {integrity: sha512-SwL5MEYHqVIS52ZwjCeumsnAKEr4swmPkkFzuVCt5WrTS0pSr4r8rd7UiQ4VddiE7HxRTawmy75L+um9YM0oug==, tarball: file:projects/arm-containerservicefleet.tgz}
+ resolution: {integrity: sha512-Cnu4qtNd8Ac7bC0Hz6iYfW4kbaMOSUdykobQER2UKfJEbxWbBCt39xujI0DUCl6xRldNkq4Vr2xOK8vwf6tprw==, tarball: file:projects/arm-containerservicefleet.tgz}
name: '@rush-temp/arm-containerservicefleet'
version: 0.0.0
dependencies:
@@ -15684,7 +15446,7 @@ packages:
dev: false
file:projects/arm-maintenance.tgz:
- resolution: {integrity: sha512-uWAdoC+TPAOMUsLfkbmojphe+9hx/EiU6OMs7L5u5FhXKj5kkLurJ++JeYHoFgqKWg+19sch+6/cIPVHmPhIRg==, tarball: file:projects/arm-maintenance.tgz}
+ resolution: {integrity: sha512-hbHRUZj5M0xrJTPhD0alFfmvcCylwflT+/kvdK3PEKcc8RgzdquUJTL7xVzIuZfENPcW+22w7tYb8sHtJYR/Ag==, tarball: file:projects/arm-maintenance.tgz}
name: '@rush-temp/arm-maintenance'
version: 0.0.0
dependencies:
@@ -17136,7 +16898,7 @@ packages:
dev: false
file:projects/arm-recoveryservices.tgz:
- resolution: {integrity: sha512-H9OANkU6/grQPxD2kzV3MESRUGXGwHFAw4LlFGHF0ICxbWd2bJRMiUihzXLv/mO0SVxGrxgm8SOursqwS6hDtg==, tarball: file:projects/arm-recoveryservices.tgz}
+ resolution: {integrity: sha512-AQUuw6VmRac8IIQpWQWy20N7BUnU7OqYjRpHiaSgfdeuHgCzH6ZbRXzwfvG/gp8Ogl6qJMOXc+f2c6gCLDZ7Fw==, tarball: file:projects/arm-recoveryservices.tgz}
name: '@rush-temp/arm-recoveryservices'
version: 0.0.0
dependencies:
@@ -19793,8 +19555,6 @@ packages:
'@vitest/coverage-istanbul': 1.6.0(vitest@1.6.0)
buffer: 6.0.3
debug: 4.3.4(supports-color@8.1.1)
- esbuild: 0.21.3
- esbuild-plugin-polyfill-node: 0.3.0(esbuild@0.21.3)
eslint: 8.57.0
events: 3.3.0
playwright: 1.44.0
@@ -20325,11 +20085,11 @@ packages:
'@_ts/min': /typescript@4.2.4
'@azure/identity': 4.2.0
'@microsoft/api-extractor': 7.43.7(@types/node@18.19.33)
- '@rollup/plugin-commonjs': 25.0.7(rollup@4.17.2)
- '@rollup/plugin-inject': 5.0.5(rollup@4.17.2)
- '@rollup/plugin-json': 6.1.0(rollup@4.17.2)
- '@rollup/plugin-multi-entry': 6.0.1(rollup@4.17.2)
- '@rollup/plugin-node-resolve': 15.2.3(rollup@4.17.2)
+ '@rollup/plugin-commonjs': 25.0.7(rollup@4.18.0)
+ '@rollup/plugin-inject': 5.0.5(rollup@4.18.0)
+ '@rollup/plugin-json': 6.1.0(rollup@4.18.0)
+ '@rollup/plugin-multi-entry': 6.0.1(rollup@4.18.0)
+ '@rollup/plugin-node-resolve': 15.2.3(rollup@4.18.0)
'@types/archiver': 6.0.2
'@types/decompress': 4.2.7
'@types/express': 4.17.21
@@ -20355,9 +20115,9 @@ packages:
mkdirp: 3.0.1
prettier: 3.2.5
rimraf: 5.0.7
- rollup: 4.17.2
- rollup-plugin-polyfill-node: 0.13.0(rollup@4.17.2)
- rollup-plugin-visualizer: 5.12.0(rollup@4.17.2)
+ rollup: 4.18.0
+ rollup-plugin-polyfill-node: 0.13.0(rollup@4.18.0)
+ rollup-plugin-visualizer: 5.12.0(rollup@4.18.0)
semver: 7.6.2
strip-json-comments: 3.1.1
ts-morph: 22.0.0
@@ -20384,7 +20144,7 @@ packages:
dev: false
file:projects/developer-devcenter.tgz:
- resolution: {integrity: sha512-4z+opZKRojUiqm+wZuHN/9doh7MIKVD82NND6jhIktQcRhdtstrb5WKeJ4i3A/PVAWaN+925xo7Wze6NRG69cQ==, tarball: file:projects/developer-devcenter.tgz}
+ resolution: {integrity: sha512-wslzkw8iSADqg3l0cBRPkXOgv20hUZbu9fNn/+ejt3YQYRL0rElOKnKaptx4cZ4aYRrktBLxd7QNb7716511qg==, tarball: file:projects/developer-devcenter.tgz}
name: '@rush-temp/developer-devcenter'
version: 0.0.0
dependencies:
@@ -20508,7 +20268,7 @@ packages:
eslint-plugin-no-only-tests: 3.1.0
eslint-plugin-promise: 6.1.1(eslint@8.57.0)
eslint-plugin-tsdoc: 0.2.17
- glob: 10.3.15
+ glob: 10.3.16
tslib: 2.6.2
typescript: 5.4.5
typescript-eslint: 7.8.0(eslint@8.57.0)(typescript@5.4.5)
@@ -20542,7 +20302,7 @@ packages:
eslint-plugin-no-only-tests: 3.1.0
eslint-plugin-promise: 6.1.1(eslint@8.57.0)
eslint-plugin-tsdoc: 0.2.17
- glob: 10.3.15
+ glob: 10.3.16
prettier: 3.2.5
rimraf: 5.0.7
source-map-support: 0.5.21
@@ -22021,7 +21781,6 @@ packages:
name: '@rush-temp/notification-hubs'
version: 0.0.0
dependencies:
- '@azure-rest/core-client': 1.4.0
'@azure/core-lro': 2.7.2
'@microsoft/api-extractor': 7.43.7(@types/node@18.19.33)
'@types/node': 18.19.33
@@ -24047,7 +23806,7 @@ packages:
'@types/chai': 4.3.16
'@types/chai-as-promised': 7.1.8
'@types/express': 4.17.21
- '@types/express-serve-static-core': 4.19.0
+ '@types/express-serve-static-core': 4.19.1
'@types/jsonwebtoken': 9.0.6
'@types/mocha': 10.0.6
'@types/node': 18.19.33
@@ -24080,7 +23839,7 @@ packages:
protobufjs-cli: 1.1.2(protobufjs@7.3.0)
puppeteer: 22.9.0(typescript@5.4.5)
rimraf: 5.0.7
- rollup: 4.17.2
+ rollup: 4.18.0
sinon: 17.0.1
source-map-support: 0.5.21
ts-node: 10.9.2(@types/node@18.19.33)(typescript@5.4.5)
@@ -24106,7 +23865,7 @@ packages:
'@types/chai': 4.3.16
'@types/chai-as-promised': 7.1.8
'@types/express': 4.17.21
- '@types/express-serve-static-core': 4.19.0
+ '@types/express-serve-static-core': 4.19.1
'@types/jsonwebtoken': 9.0.6
'@types/mocha': 10.0.6
'@types/node': 18.19.33
@@ -24158,7 +23917,7 @@ packages:
'@microsoft/api-extractor': 7.43.7(@types/node@18.19.33)
'@types/chai': 4.3.16
'@types/express': 4.17.21
- '@types/express-serve-static-core': 4.19.0
+ '@types/express-serve-static-core': 4.19.1
'@types/jsonwebtoken': 9.0.6
'@types/mocha': 10.0.6
'@types/node': 18.19.33
diff --git a/sdk/face/ai-vision-face-rest/CHANGELOG.md b/sdk/face/ai-vision-face-rest/CHANGELOG.md
index cb0e0051b669..499f7c48b06a 100644
--- a/sdk/face/ai-vision-face-rest/CHANGELOG.md
+++ b/sdk/face/ai-vision-face-rest/CHANGELOG.md
@@ -1,6 +1,6 @@
# Release History
-## 1.0.0-beta.1 (2024-05-10)
+## 1.0.0-beta.1 (2024-05-23)
This is the first preview of the Azure Face Service client library `@azure-rest/ai-vision-face` that follows the [TypeScript Azure SDK Design Guidelines](https://azure.github.io/azure-sdk/typescript_introduction.html).
This library replaces the package [@azure/cognitiveservices-face](https://www.npmjs.com/package/@azure/cognitiveservices-face).
diff --git a/sdk/face/ai-vision-face-rest/api-extractor.json b/sdk/face/ai-vision-face-rest/api-extractor.json
index 425547da04a3..cd138c9cf45d 100644
--- a/sdk/face/ai-vision-face-rest/api-extractor.json
+++ b/sdk/face/ai-vision-face-rest/api-extractor.json
@@ -1,31 +1,18 @@
{
"$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json",
"mainEntryPointFilePath": "./dist/esm/index.d.ts",
- "docModel": {
- "enabled": true
- },
- "apiReport": {
- "enabled": true,
- "reportFolder": "./review"
- },
+ "docModel": { "enabled": true },
+ "apiReport": { "enabled": true, "reportFolder": "./review" },
"dtsRollup": {
"enabled": true,
"untrimmedFilePath": "",
"publicTrimmedFilePath": "./types/ai-vision-face.d.ts"
},
"messages": {
- "tsdocMessageReporting": {
- "default": {
- "logLevel": "none"
- }
- },
+ "tsdocMessageReporting": { "default": { "logLevel": "none" } },
"extractorMessageReporting": {
- "ae-missing-release-tag": {
- "logLevel": "none"
- },
- "ae-unresolved-link": {
- "logLevel": "none"
- }
+ "ae-missing-release-tag": { "logLevel": "none" },
+ "ae-unresolved-link": { "logLevel": "none" }
}
}
}
diff --git a/sdk/face/ai-vision-face-rest/package.json b/sdk/face/ai-vision-face-rest/package.json
index 43fa6b490c65..ba055f1be0a9 100644
--- a/sdk/face/ai-vision-face-rest/package.json
+++ b/sdk/face/ai-vision-face-rest/package.json
@@ -60,8 +60,8 @@
"@azure/core-rest-pipeline": "^1.5.0",
"@azure/logger": "^1.0.0",
"tslib": "^2.6.2",
- "@azure/core-lro": "^2.5.4",
- "@azure/abort-controller": "^1.0.0"
+ "@azure/core-lro": "3.0.0-beta.1",
+ "@azure/abort-controller": "^2.0.0"
},
"devDependencies": {
"dotenv": "^16.0.0",
@@ -115,7 +115,21 @@
"azure"
],
"disableDocsMs": true,
- "apiRefLink": "https://aka.ms/azsdk-javascript-face-ref"
+ "apiRefLink": "https://aka.ms/azsdk-javascript-face-ref",
+ "extraFiles": {
+ "./samples-dev/data/detection1.jpg": [
+ "javascript/data/detection1.jpg",
+ "typescript/src/data/detection1.jpg"
+ ],
+ "./samples-dev/data/detection5.jpg": [
+ "javascript/data/detection5.jpg",
+ "typescript/src/data/detection5.jpg"
+ ],
+ "./samples-dev/data/nine-faces.png": [
+ "javascript/data/nine-faces.png",
+ "typescript/src/data/nine-faces.png"
+ ]
+ }
},
"exports": {
"./package.json": "./package.json",
diff --git a/sdk/face/ai-vision-face-rest/review/ai-vision-face.api.md b/sdk/face/ai-vision-face-rest/review/ai-vision-face.api.md
index 6199867d1c80..2204875abd32 100644
--- a/sdk/face/ai-vision-face-rest/review/ai-vision-face.api.md
+++ b/sdk/face/ai-vision-face-rest/review/ai-vision-face.api.md
@@ -6,6 +6,8 @@
///
+import { AbortSignalLike } from '@azure/abort-controller';
+import { CancelOnProgress } from '@azure/core-lro';
import { Client } from '@azure-rest/core-client';
import { ClientOptions } from '@azure-rest/core-client';
import { CreateHttpPollerOptions } from '@azure/core-lro';
@@ -14,7 +16,6 @@ import { KeyCredential } from '@azure/core-auth';
import { OperationState } from '@azure/core-lro';
import { RawHttpHeaders } from '@azure/core-rest-pipeline';
import { RequestParameters } from '@azure-rest/core-client';
-import { SimplePollerLike } from '@azure/core-lro';
import { StreamableMethod } from '@azure-rest/core-client';
import { TokenCredential } from '@azure/core-auth';
@@ -896,15 +897,6 @@ export interface CreateLivenessSessionContent {
sendResultsToClient?: boolean;
}
-// @public
-export interface CreateLivenessSessionContentForMultipart {
- authTokenTimeToLiveInSeconds?: number;
- deviceCorrelationId?: string;
- deviceCorrelationIdSetInClient?: boolean;
- livenessOperationMode: LivenessOperationMode;
- sendResultsToClient?: boolean;
-}
-
// @public (undocumented)
export interface CreateLivenessSessionDefaultHeaders {
"x-ms-error-code"?: string;
@@ -949,7 +941,7 @@ export type CreateLivenessWithVerifySessionContent = FormData | Array, TResult> {
+ getOperationState(): TState;
+ getResult(): TResult | undefined;
+ isDone(): boolean;
+ isStopped(): boolean;
+ onProgress(callback: (state: TState) => void): CancelOnProgress;
+ poll(options?: {
+ abortSignal?: AbortSignalLike;
+ }): Promise;
+ pollUntilDone(pollOptions?: {
+ abortSignal?: AbortSignalLike;
+ }): Promise;
+ serialize(): Promise;
+ // @deprecated
+ stopPolling(): void;
+ submitted(): Promise;
+ // @deprecated
+ toString(): string;
}
// @public
diff --git a/sdk/face/ai-vision-face-rest/src/clientDefinitions.ts b/sdk/face/ai-vision-face-rest/src/clientDefinitions.ts
index b48817910312..a64def7170f8 100644
--- a/sdk/face/ai-vision-face-rest/src/clientDefinitions.ts
+++ b/sdk/face/ai-vision-face-rest/src/clientDefinitions.ts
@@ -17,6 +17,17 @@ import {
VerifyFromLargePersonGroupParameters,
VerifyFromPersonDirectoryParameters,
GroupParameters,
+ CreateLivenessSessionParameters,
+ GetLivenessSessionsParameters,
+ DeleteLivenessSessionParameters,
+ GetLivenessSessionResultParameters,
+ GetLivenessSessionAuditEntriesParameters,
+ CreateLivenessWithVerifySessionWithVerifyImageParameters,
+ CreateLivenessWithVerifySessionParameters,
+ GetLivenessWithVerifySessionsParameters,
+ DeleteLivenessWithVerifySessionParameters,
+ GetLivenessWithVerifySessionResultParameters,
+ GetLivenessWithVerifySessionAuditEntriesParameters,
CreateFaceListParameters,
DeleteFaceListParameters,
GetFaceListParameters,
@@ -38,6 +49,26 @@ import {
DeleteLargeFaceListFaceParameters,
GetLargeFaceListFaceParameters,
UpdateLargeFaceListFaceParameters,
+ CreatePersonParameters,
+ GetPersonsParameters,
+ DeletePersonParameters,
+ GetPersonParameters,
+ UpdatePersonParameters,
+ GetDynamicPersonGroupReferencesParameters,
+ AddPersonFaceParameters,
+ AddPersonFaceFromUrlParameters,
+ GetPersonFacesParameters,
+ DeletePersonFaceParameters,
+ GetPersonFaceParameters,
+ UpdatePersonFaceParameters,
+ CreateDynamicPersonGroupWithPersonParameters,
+ CreateDynamicPersonGroupParameters,
+ DeleteDynamicPersonGroupParameters,
+ GetDynamicPersonGroupParameters,
+ UpdateDynamicPersonGroupWithPersonChangesParameters,
+ UpdateDynamicPersonGroupParameters,
+ GetDynamicPersonGroupsParameters,
+ GetDynamicPersonGroupPersonsParameters,
CreatePersonGroupParameters,
DeletePersonGroupParameters,
GetPersonGroupParameters,
@@ -72,37 +103,6 @@ import {
DeleteLargePersonGroupPersonFaceParameters,
GetLargePersonGroupPersonFaceParameters,
UpdateLargePersonGroupPersonFaceParameters,
- CreatePersonParameters,
- GetPersonsParameters,
- DeletePersonParameters,
- GetPersonParameters,
- UpdatePersonParameters,
- GetDynamicPersonGroupReferencesParameters,
- AddPersonFaceParameters,
- AddPersonFaceFromUrlParameters,
- GetPersonFacesParameters,
- DeletePersonFaceParameters,
- GetPersonFaceParameters,
- UpdatePersonFaceParameters,
- CreateDynamicPersonGroupWithPersonParameters,
- CreateDynamicPersonGroupParameters,
- DeleteDynamicPersonGroupParameters,
- GetDynamicPersonGroupParameters,
- UpdateDynamicPersonGroupWithPersonChangesParameters,
- UpdateDynamicPersonGroupParameters,
- GetDynamicPersonGroupsParameters,
- GetDynamicPersonGroupPersonsParameters,
- CreateLivenessSessionParameters,
- GetLivenessSessionsParameters,
- DeleteLivenessSessionParameters,
- GetLivenessSessionResultParameters,
- GetLivenessSessionAuditEntriesParameters,
- CreateLivenessWithVerifySessionWithVerifyImageParameters,
- CreateLivenessWithVerifySessionParameters,
- GetLivenessWithVerifySessionsParameters,
- DeleteLivenessWithVerifySessionParameters,
- GetLivenessWithVerifySessionResultParameters,
- GetLivenessWithVerifySessionAuditEntriesParameters,
} from "./parameters.js";
import {
GetOperationResult200Response,
@@ -135,6 +135,28 @@ import {
VerifyFromPersonDirectoryDefaultResponse,
Group200Response,
GroupDefaultResponse,
+ CreateLivenessSession200Response,
+ CreateLivenessSessionDefaultResponse,
+ GetLivenessSessions200Response,
+ GetLivenessSessionsDefaultResponse,
+ DeleteLivenessSession200Response,
+ DeleteLivenessSessionDefaultResponse,
+ GetLivenessSessionResult200Response,
+ GetLivenessSessionResultDefaultResponse,
+ GetLivenessSessionAuditEntries200Response,
+ GetLivenessSessionAuditEntriesDefaultResponse,
+ CreateLivenessWithVerifySessionWithVerifyImage200Response,
+ CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse,
+ CreateLivenessWithVerifySession200Response,
+ CreateLivenessWithVerifySessionDefaultResponse,
+ GetLivenessWithVerifySessions200Response,
+ GetLivenessWithVerifySessionsDefaultResponse,
+ DeleteLivenessWithVerifySession200Response,
+ DeleteLivenessWithVerifySessionDefaultResponse,
+ GetLivenessWithVerifySessionResult200Response,
+ GetLivenessWithVerifySessionResultDefaultResponse,
+ GetLivenessWithVerifySessionAuditEntries200Response,
+ GetLivenessWithVerifySessionAuditEntriesDefaultResponse,
CreateFaceList200Response,
CreateFaceListDefaultResponse,
DeleteFaceList200Response,
@@ -177,6 +199,46 @@ import {
GetLargeFaceListFaceDefaultResponse,
UpdateLargeFaceListFace200Response,
UpdateLargeFaceListFaceDefaultResponse,
+ CreatePerson202Response,
+ CreatePersonDefaultResponse,
+ GetPersons200Response,
+ GetPersonsDefaultResponse,
+ DeletePerson202Response,
+ DeletePersonDefaultResponse,
+ GetPerson200Response,
+ GetPersonDefaultResponse,
+ UpdatePerson200Response,
+ UpdatePersonDefaultResponse,
+ GetDynamicPersonGroupReferences200Response,
+ GetDynamicPersonGroupReferencesDefaultResponse,
+ AddPersonFace202Response,
+ AddPersonFaceDefaultResponse,
+ AddPersonFaceFromUrl202Response,
+ AddPersonFaceFromUrlDefaultResponse,
+ GetPersonFaces200Response,
+ GetPersonFacesDefaultResponse,
+ DeletePersonFace202Response,
+ DeletePersonFaceDefaultResponse,
+ GetPersonFace200Response,
+ GetPersonFaceDefaultResponse,
+ UpdatePersonFace200Response,
+ UpdatePersonFaceDefaultResponse,
+ CreateDynamicPersonGroupWithPerson202Response,
+ CreateDynamicPersonGroupWithPersonDefaultResponse,
+ CreateDynamicPersonGroup200Response,
+ CreateDynamicPersonGroupDefaultResponse,
+ DeleteDynamicPersonGroup202Response,
+ DeleteDynamicPersonGroupDefaultResponse,
+ GetDynamicPersonGroup200Response,
+ GetDynamicPersonGroupDefaultResponse,
+ UpdateDynamicPersonGroupWithPersonChanges202Response,
+ UpdateDynamicPersonGroupWithPersonChangesDefaultResponse,
+ UpdateDynamicPersonGroup200Response,
+ UpdateDynamicPersonGroupDefaultResponse,
+ GetDynamicPersonGroups200Response,
+ GetDynamicPersonGroupsDefaultResponse,
+ GetDynamicPersonGroupPersons200Response,
+ GetDynamicPersonGroupPersonsDefaultResponse,
CreatePersonGroup200Response,
CreatePersonGroupDefaultResponse,
DeletePersonGroup200Response,
@@ -245,68 +307,6 @@ import {
GetLargePersonGroupPersonFaceDefaultResponse,
UpdateLargePersonGroupPersonFace200Response,
UpdateLargePersonGroupPersonFaceDefaultResponse,
- CreatePerson202Response,
- CreatePersonDefaultResponse,
- GetPersons200Response,
- GetPersonsDefaultResponse,
- DeletePerson202Response,
- DeletePersonDefaultResponse,
- GetPerson200Response,
- GetPersonDefaultResponse,
- UpdatePerson200Response,
- UpdatePersonDefaultResponse,
- GetDynamicPersonGroupReferences200Response,
- GetDynamicPersonGroupReferencesDefaultResponse,
- AddPersonFace202Response,
- AddPersonFaceDefaultResponse,
- AddPersonFaceFromUrl202Response,
- AddPersonFaceFromUrlDefaultResponse,
- GetPersonFaces200Response,
- GetPersonFacesDefaultResponse,
- DeletePersonFace202Response,
- DeletePersonFaceDefaultResponse,
- GetPersonFace200Response,
- GetPersonFaceDefaultResponse,
- UpdatePersonFace200Response,
- UpdatePersonFaceDefaultResponse,
- CreateDynamicPersonGroupWithPerson202Response,
- CreateDynamicPersonGroupWithPersonDefaultResponse,
- CreateDynamicPersonGroup200Response,
- CreateDynamicPersonGroupDefaultResponse,
- DeleteDynamicPersonGroup202Response,
- DeleteDynamicPersonGroupDefaultResponse,
- GetDynamicPersonGroup200Response,
- GetDynamicPersonGroupDefaultResponse,
- UpdateDynamicPersonGroupWithPersonChanges202Response,
- UpdateDynamicPersonGroupWithPersonChangesDefaultResponse,
- UpdateDynamicPersonGroup200Response,
- UpdateDynamicPersonGroupDefaultResponse,
- GetDynamicPersonGroups200Response,
- GetDynamicPersonGroupsDefaultResponse,
- GetDynamicPersonGroupPersons200Response,
- GetDynamicPersonGroupPersonsDefaultResponse,
- CreateLivenessSession200Response,
- CreateLivenessSessionDefaultResponse,
- GetLivenessSessions200Response,
- GetLivenessSessionsDefaultResponse,
- DeleteLivenessSession200Response,
- DeleteLivenessSessionDefaultResponse,
- GetLivenessSessionResult200Response,
- GetLivenessSessionResultDefaultResponse,
- GetLivenessSessionAuditEntries200Response,
- GetLivenessSessionAuditEntriesDefaultResponse,
- CreateLivenessWithVerifySessionWithVerifyImage200Response,
- CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse,
- CreateLivenessWithVerifySession200Response,
- CreateLivenessWithVerifySessionDefaultResponse,
- GetLivenessWithVerifySessions200Response,
- GetLivenessWithVerifySessionsDefaultResponse,
- DeleteLivenessWithVerifySession200Response,
- DeleteLivenessWithVerifySessionDefaultResponse,
- GetLivenessWithVerifySessionResult200Response,
- GetLivenessWithVerifySessionResultDefaultResponse,
- GetLivenessWithVerifySessionAuditEntries200Response,
- GetLivenessWithVerifySessionAuditEntriesDefaultResponse,
} from "./responses.js";
import { RecognitionModel } from "./models.js";
import { Client, StreamableMethod } from "@azure-rest/core-client";
@@ -321,7 +321,7 @@ export interface GetOperationResult {
export interface DetectFromUrl {
/**
* > [!IMPORTANT]
- * > To mitigate potential misuse that can subject people to stereotyping, discrimination, or unfair denial of services, we are retiring Face API attributes that predict emotion, gender, age, smile, facial hair, hair, and makeup. Read more about this decision https://azure.microsoft.com/en-us/blog/responsible-ai-investments-and-safeguards-for-facial-recognition/.
+ * > To mitigate potential misuse that can subject people to stereotyping, discrimination, or unfair denial of services, we are retiring Face API attributes that predict emotion, gender, age, smile, facial hair, hair, and makeup. Read more about this decision https://azure.microsoft.com/blog/responsible-ai-investments-and-safeguards-for-facial-recognition/.
*
* *
* * No image will be stored. Only the extracted face feature(s) will be stored on server. The faceId is an identifier of the face feature and will be used in "Identify", "Verify", and "Find Similar". The stored face features will expire and be deleted at the time specified by faceIdTimeToLive after the original detection call.
@@ -330,17 +330,17 @@ export interface DetectFromUrl {
* * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.
* * Up to 100 faces can be returned for an image. Faces are ranked by face rectangle size from large to small.
* * For optimal results when querying "Identify", "Verify", and "Find Similar" ('returnFaceId' is true), please use faces that are: frontal, clear, and with a minimum size of 200x200 pixels (100 pixels between eyes).
- * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/specify-detection-model
+ * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model
* * 'detection_02': Face attributes and landmarks are disabled if you choose this detection model.
- * * 'detection_03': Face attributes (mask and headPose only) and landmarks are supported if you choose this detection model.
- * * Different 'recognitionModel' values are provided. If follow-up operations like "Verify", "Identify", "Find Similar" are needed, please specify the recognition model with 'recognitionModel' parameter. The default value for 'recognitionModel' is 'recognition_01', if latest model needed, please explicitly specify the model you need in this parameter. Once specified, the detected faceIds will be associated with the specified recognition model. More details, please refer to https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/specify-recognition-model.
+ * * 'detection_03': Face attributes (mask, blur, and headPose) and landmarks are supported if you choose this detection model.
+ * * Different 'recognitionModel' values are provided. If follow-up operations like "Verify", "Identify", "Find Similar" are needed, please specify the recognition model with 'recognitionModel' parameter. The default value for 'recognitionModel' is 'recognition_01', if latest model needed, please explicitly specify the model you need in this parameter. Once specified, the detected faceIds will be associated with the specified recognition model. More details, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-recognition-model.
*/
post(
options: DetectFromUrlParameters,
): StreamableMethod;
/**
* > [!IMPORTANT]
- * > To mitigate potential misuse that can subject people to stereotyping, discrimination, or unfair denial of services, we are retiring Face API attributes that predict emotion, gender, age, smile, facial hair, hair, and makeup. Read more about this decision https://azure.microsoft.com/en-us/blog/responsible-ai-investments-and-safeguards-for-facial-recognition/.
+ * > To mitigate potential misuse that can subject people to stereotyping, discrimination, or unfair denial of services, we are retiring Face API attributes that predict emotion, gender, age, smile, facial hair, hair, and makeup. Read more about this decision https://azure.microsoft.com/blog/responsible-ai-investments-and-safeguards-for-facial-recognition/.
*
* *
* * No image will be stored. Only the extracted face feature(s) will be stored on server. The faceId is an identifier of the face feature and will be used in "Identify", "Verify", and "Find Similar". The stored face features will expire and be deleted at the time specified by faceIdTimeToLive after the original detection call.
@@ -349,10 +349,10 @@ export interface DetectFromUrl {
* * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.
* * Up to 100 faces can be returned for an image. Faces are ranked by face rectangle size from large to small.
* * For optimal results when querying "Identify", "Verify", and "Find Similar" ('returnFaceId' is true), please use faces that are: frontal, clear, and with a minimum size of 200x200 pixels (100 pixels between eyes).
- * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/specify-detection-model
+ * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model
* * 'detection_02': Face attributes and landmarks are disabled if you choose this detection model.
- * * 'detection_03': Face attributes (mask and headPose only) and landmarks are supported if you choose this detection model.
- * * Different 'recognitionModel' values are provided. If follow-up operations like "Verify", "Identify", "Find Similar" are needed, please specify the recognition model with 'recognitionModel' parameter. The default value for 'recognitionModel' is 'recognition_01', if latest model needed, please explicitly specify the model you need in this parameter. Once specified, the detected faceIds will be associated with the specified recognition model. More details, please refer to https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/specify-recognition-model.
+ * * 'detection_03': Face attributes (mask, blur, and headPose) and landmarks are supported if you choose this detection model.
+ * * Different 'recognitionModel' values are provided. If follow-up operations like "Verify", "Identify", "Find Similar" are needed, please specify the recognition model with 'recognitionModel' parameter. The default value for 'recognitionModel' is 'recognition_01', if latest model needed, please explicitly specify the model you need in this parameter. Once specified, the detected faceIds will be associated with the specified recognition model. More details, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-recognition-model.
*/
post(options: DetectParameters): StreamableMethod;
}
@@ -427,6 +427,7 @@ export interface IdentifyFromPersonGroup {
>;
/**
* For each face in the faceIds array, Face Identify will compute similarities between the query face and all the faces in the Person Directory Persons (given by personIds), and return candidate person(s) for that face ranked by similarity confidence.
+ * Passing personIds with an array with one element "*" can perform the operation over entire person directory.
* > [!NOTE]
* >
* > *
@@ -522,51 +523,193 @@ export interface Group {
post(options?: GroupParameters): StreamableMethod;
}
-export interface CreateFaceList {
+export interface CreateLivenessSession {
/**
- * Up to 64 Face Lists are allowed in one subscription.
- *
- * Face List is a list of faces, up to 1,000 faces, and used by "Find Similar From Face List".
+ * A session is best for client device scenarios where developers want to authorize a client device to perform only a liveness detection without granting full access to their resource. Created sessions have a limited life span and only authorize clients to perform the desired action before access is expired.
*
- * After creation, user should use "Add Face List Face" to import the faces. No image will be stored. Only the extracted face feature(s) will be stored on server until "Delete Face List" is called.
+ * Permissions includes...
+ * >
+ * *
+ * * Ability to call /detectLiveness/singleModal for up to 3 retries.
+ * * A token lifetime of 10 minutes.
*
- * "Find Similar" is used for scenario like finding celebrity-like faces, similar face filtering, or as a light way face identification. But if the actual use is to identify person, please use Person Group / Large Person Group and "Identify".
+ * > [!NOTE]
+ * > Client access can be revoked by deleting the session using the Delete Liveness Session operation. To retrieve a result, use the Get Liveness Session. To audit the individual requests that a client has made to your resource, use the List Liveness Session Audit Entries.
+ */
+ post(
+ options?: CreateLivenessSessionParameters,
+ ): StreamableMethod;
+ /**
+ * List sessions from the last sessionId greater than the 'start'.
*
- * Please consider Large Face List when the face number is large. It can support up to 1,000,000 faces.
+ * The result should be ordered by sessionId in ascending order.
*/
- put(
- options?: CreateFaceListParameters,
- ): StreamableMethod;
- /** Delete a specified Face List. */
- delete(
- options?: DeleteFaceListParameters,
- ): StreamableMethod;
- /** Retrieve a Face List's faceListId, name, userData, recognitionModel and faces in the Face List. */
get(
- options?: GetFaceListParameters,
- ): StreamableMethod;
- /** Update information of a Face List, including name and userData. */
- patch(
- options?: UpdateFaceListParameters,
- ): StreamableMethod;
+ options?: GetLivenessSessionsParameters,
+ ): StreamableMethod;
}
-export interface GetFaceLists {
+export interface DeleteLivenessSession {
/**
- * List Face Lists' faceListId, name, userData and recognitionModel.
- *
- * To get face information inside Face List use "Get Face List".
+ * > [!NOTE]
+ * > Deleting a session deactivates the Session Auth Token by blocking future API calls made with that Auth Token. While this can be used to remove any access for that token, those requests will still count towards overall resource rate limits. It's best to leverage TokenTTL to limit length of tokens in the case that it is misused.
*/
+ delete(
+ options?: DeleteLivenessSessionParameters,
+ ): StreamableMethod;
+ /** Get session result of detectLiveness/singleModal call. */
get(
- options?: GetFaceListsParameters,
- ): StreamableMethod;
+ options?: GetLivenessSessionResultParameters,
+ ): StreamableMethod<
+ GetLivenessSessionResult200Response | GetLivenessSessionResultDefaultResponse
+ >;
}
-export interface AddFaceListFaceFromUrl {
+export interface GetLivenessSessionAuditEntries {
+ /** Gets session requests and response body for the session. */
+ get(
+ options?: GetLivenessSessionAuditEntriesParameters,
+ ): StreamableMethod<
+ GetLivenessSessionAuditEntries200Response | GetLivenessSessionAuditEntriesDefaultResponse
+ >;
+}
+
+export interface CreateLivenessWithVerifySessionWithVerifyImage {
/**
- * To deal with an image containing multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature(s) will be stored on server until "Delete Face List Face" or "Delete Face List" is called.
+ * A session is best for client device scenarios where developers want to authorize a client device to perform only a liveness detection without granting full access to their resource. Created sessions have a limited life span and only authorize clients to perform the desired action before access is expired.
*
- * Note that persistedFaceId is different from faceId generated by "Detect".
+ * Permissions includes...
+ * >
+ * *
+ * * Ability to call /detectLivenessWithVerify/singleModal for up to 3 retries.
+ * * A token lifetime of 10 minutes.
+ *
+ * > [!NOTE]
+ * >
+ * > *
+ * > * Client access can be revoked by deleting the session using the Delete Liveness With Verify Session operation.
+ * > * To retrieve a result, use the Get Liveness With Verify Session.
+ * > * To audit the individual requests that a client has made to your resource, use the List Liveness With Verify Session Audit Entries.
+ *
+ * Recommended Option: VerifyImage is provided during session creation.
+ */
+ post(
+ options: CreateLivenessWithVerifySessionWithVerifyImageParameters,
+ ): StreamableMethod<
+ | CreateLivenessWithVerifySessionWithVerifyImage200Response
+ | CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse
+ >;
+ /**
+ * A session is best for client device scenarios where developers want to authorize a client device to perform only a liveness detection without granting full access to their resource. Created sessions have a limited life span and only authorize clients to perform the desired action before access is expired.
+ *
+ * Permissions includes...
+ * >
+ * *
+ * * Ability to call /detectLivenessWithVerify/singleModal for up to 3 retries.
+ * * A token lifetime of 10 minutes.
+ *
+ * > [!NOTE]
+ * >
+ * > *
+ * > * Client access can be revoked by deleting the session using the Delete Liveness With Verify Session operation.
+ * > * To retrieve a result, use the Get Liveness With Verify Session.
+ * > * To audit the individual requests that a client has made to your resource, use the List Liveness With Verify Session Audit Entries.
+ *
+ * Alternative Option: Client device submits VerifyImage during the /detectLivenessWithVerify/singleModal call.
+ * > [!NOTE]
+ * > Extra measures should be taken to validate that the client is sending the expected VerifyImage.
+ */
+ post(
+ options?: CreateLivenessWithVerifySessionParameters,
+ ): StreamableMethod<
+ CreateLivenessWithVerifySession200Response | CreateLivenessWithVerifySessionDefaultResponse
+ >;
+ /**
+ * List sessions from the last sessionId greater than the "start".
+ *
+ * The result should be ordered by sessionId in ascending order.
+ */
+ get(
+ options?: GetLivenessWithVerifySessionsParameters,
+ ): StreamableMethod<
+ GetLivenessWithVerifySessions200Response | GetLivenessWithVerifySessionsDefaultResponse
+ >;
+}
+
+export interface DeleteLivenessWithVerifySession {
+ /**
+ * > [!NOTE]
+ * > Deleting a session deactivates the Session Auth Token by blocking future API calls made with that Auth Token. While this can be used to remove any access for that token, those requests will still count towards overall resource rate limits. It's best to leverage TokenTTL to limit length of tokens in the case that it is misused.
+ */
+ delete(
+ options?: DeleteLivenessWithVerifySessionParameters,
+ ): StreamableMethod<
+ DeleteLivenessWithVerifySession200Response | DeleteLivenessWithVerifySessionDefaultResponse
+ >;
+ /** Get session result of detectLivenessWithVerify/singleModal call. */
+ get(
+ options?: GetLivenessWithVerifySessionResultParameters,
+ ): StreamableMethod<
+ | GetLivenessWithVerifySessionResult200Response
+ | GetLivenessWithVerifySessionResultDefaultResponse
+ >;
+}
+
+export interface GetLivenessWithVerifySessionAuditEntries {
+ /** Gets session requests and response body for the session. */
+ get(
+ options?: GetLivenessWithVerifySessionAuditEntriesParameters,
+ ): StreamableMethod<
+ | GetLivenessWithVerifySessionAuditEntries200Response
+ | GetLivenessWithVerifySessionAuditEntriesDefaultResponse
+ >;
+}
+
+export interface CreateFaceList {
+ /**
+ * Up to 64 Face Lists are allowed in one subscription.
+ *
+ * Face List is a list of faces, up to 1,000 faces, and used by "Find Similar From Face List".
+ *
+ * After creation, user should use "Add Face List Face" to import the faces. No image will be stored. Only the extracted face feature(s) will be stored on server until "Delete Face List" is called.
+ *
+ * "Find Similar" is used for scenario like finding celebrity-like faces, similar face filtering, or as a light way face identification. But if the actual use is to identify person, please use Person Group / Large Person Group and "Identify".
+ *
+ * Please consider Large Face List when the face number is large. It can support up to 1,000,000 faces.
+ */
+ put(
+ options?: CreateFaceListParameters,
+ ): StreamableMethod;
+ /** Delete a specified Face List. */
+ delete(
+ options?: DeleteFaceListParameters,
+ ): StreamableMethod;
+ /** Retrieve a Face List's faceListId, name, userData, recognitionModel and faces in the Face List. */
+ get(
+ options?: GetFaceListParameters,
+ ): StreamableMethod;
+ /** Update information of a Face List, including name and userData. */
+ patch(
+ options?: UpdateFaceListParameters,
+ ): StreamableMethod;
+}
+
+export interface GetFaceLists {
+ /**
+ * List Face Lists' faceListId, name, userData and recognitionModel.
+ *
+ * To get face information inside Face List use "Get Face List".
+ */
+ get(
+ options?: GetFaceListsParameters,
+ ): StreamableMethod;
+}
+
+export interface AddFaceListFaceFromUrl {
+ /**
+ * To deal with an image containing multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature(s) will be stored on server until "Delete Face List Face" or "Delete Face List" is called.
+ *
+ * Note that persistedFaceId is different from faceId generated by "Detect".
* >
* *
* * Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.
@@ -575,7 +718,7 @@ export interface AddFaceListFaceFromUrl {
* * "targetFace" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided "targetFace" rectangle is not returned from "Detect", there's no guarantee to detect and add the face successfully.
* * Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.
* * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.
- * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/specify-detection-model
+ * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model
*/
post(
options?: AddFaceListFaceFromUrlParameters,
@@ -592,7 +735,7 @@ export interface AddFaceListFaceFromUrl {
* * "targetFace" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided "targetFace" rectangle is not returned from "Detect", there's no guarantee to detect and add the face successfully.
* * Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.
* * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.
- * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/specify-detection-model
+ * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model
*/
post(
options: AddFaceListFaceParameters,
@@ -696,7 +839,7 @@ export interface AddLargeFaceListFaceFromUrl {
* * "targetFace" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided "targetFace" rectangle is not returned from "Detect", there's no guarantee to detect and add the face successfully.
* * Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.
* * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.
- * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/specify-detection-model
+ * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model
*
* > [!NOTE]
* >
@@ -721,7 +864,7 @@ export interface AddLargeFaceListFaceFromUrl {
* * "targetFace" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided "targetFace" rectangle is not returned from "Detect", there's no guarantee to detect and add the face successfully.
* * Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.
* * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.
- * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/specify-detection-model
+ * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model
*
* > [!NOTE]
* >
@@ -766,43 +909,13 @@ export interface DeleteLargeFaceListFace {
): StreamableMethod;
}
-export interface CreatePersonGroup {
- /**
- * A Person Group is a container holding the uploaded person data, including face recognition features.
- *
- * After creation, use "Create Person Group Person" to add persons into the group, and then call "Train Person Group" to get this group ready for "Identify From Person Group".
- *
- * No image will be stored. Only the person's extracted face feature(s) and userData will be stored on server until "Delete Person Group Person" or "Delete Person Group" is called.
- *
- * 'recognitionModel' should be specified to associate with this Person Group. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing Person Group will use the recognition model that's already associated with the collection. Existing face feature(s) in a Person Group can't be updated to features extracted by another version of recognition model.
- *
- * > [!NOTE]
- * >
- * > *
- * > * Free-tier subscription quota: 1,000 Person Groups. Each holds up to 1,000 persons.
- * > * S0-tier subscription quota: 1,000,000 Person Groups. Each holds up to 10,000 persons.
- * > * to handle larger scale face identification problem, please consider using Large Person Group.
- */
- put(
- options?: CreatePersonGroupParameters,
- ): StreamableMethod;
- /** Delete an existing Person Group with specified personGroupId. Persisted data in this Person Group will be deleted. */
- delete(
- options?: DeletePersonGroupParameters,
- ): StreamableMethod;
- /** Retrieve Person Group name, userData and recognitionModel. To get person information under this personGroup, use "Get Person Group Persons". */
- get(
- options?: GetPersonGroupParameters,
- ): StreamableMethod;
- /** Update an existing Person Group's name and userData. The properties keep unchanged if they are not in request body. */
- patch(
- options?: UpdatePersonGroupParameters,
- ): StreamableMethod;
-}
-
-export interface GetPersonGroups {
+export interface CreatePerson {
+ /** Creates a new person in a Person Directory. To add face to this person, please call Person Directory "Add Person Face". */
+ post(
+ options?: CreatePersonParameters,
+ ): StreamableMethod;
/**
- * Person Groups are stored in alphabetical order of personGroupId.
+ * Persons are stored in alphabetical order of personId created in Person Directory "Create Person".
* >
* *
* * "start" parameter (string, optional) specifies an ID value from which returned entries will have larger IDs based on string comparison. Setting "start" to an empty value indicates that entries should be returned starting from the first item.
@@ -816,43 +929,28 @@ export interface GetPersonGroups {
* > * "start=itemId2&top=3" will return "itemId3", "itemId4", "itemId5".
*/
get(
- options?: GetPersonGroupsParameters,
- ): StreamableMethod;
+ options?: GetPersonsParameters,
+ ): StreamableMethod;
}
-export interface GetPersonGroupTrainingStatus {
- /** To check Person Group training status completed or still ongoing. Person Group training is an asynchronous operation triggered by "Train Person Group" API. */
+export interface DeletePerson {
+ /** Delete an existing person from Person Directory. The persistedFaceId(s), userData, person name and face feature(s) in the person entry will all be deleted. */
+ delete(
+ options?: DeletePersonParameters,
+ ): StreamableMethod;
+ /** Retrieve a person's name and userData from Person Directory. */
get(
- options?: GetPersonGroupTrainingStatusParameters,
- ): StreamableMethod<
- GetPersonGroupTrainingStatus200Response | GetPersonGroupTrainingStatusDefaultResponse
- >;
-}
-
-export interface TrainPersonGroup {
- /** The training task is an asynchronous task. Training time depends on the number of person entries, and their faces in a Person Group. It could be several seconds to minutes. To check training status, please use "Get Person Group Training Status". */
- post(
- options?: TrainPersonGroupParameters,
- ): StreamableMethod;
+ options?: GetPersonParameters,
+ ): StreamableMethod;
+ /** Update name or userData of a person. */
+ patch(
+ options?: UpdatePersonParameters,
+ ): StreamableMethod;
}
-export interface CreatePersonGroupPerson {
- /**
- * > [!NOTE]
- * >
- * > *
- * > * Free-tier subscription quota:
- * > * 1,000 persons in all Person Groups.
- * > * S0-tier subscription quota:
- * > * 10,000 persons per Person Group.
- * > * 1,000,000 Person Groups.
- * > * 100,000,000 persons in all Person Groups.
- */
- post(
- options?: CreatePersonGroupPersonParameters,
- ): StreamableMethod;
+export interface GetDynamicPersonGroupReferences {
/**
- * Persons are stored in alphabetical order of personId created in "Create Person Group Person".
+ * Dynamic Person Groups are stored in alphabetical order of Dynamic Person Group ID created in Person Directory "Create Dynamic Person Group".
* >
* *
* * "start" parameter (string, optional) specifies an ID value from which returned entries will have larger IDs based on string comparison. Setting "start" to an empty value indicates that entries should be returned starting from the first item.
@@ -866,28 +964,15 @@ export interface CreatePersonGroupPerson {
* > * "start=itemId2&top=3" will return "itemId3", "itemId4", "itemId5".
*/
get(
- options?: GetPersonGroupPersonsParameters,
- ): StreamableMethod;
-}
-
-export interface DeletePersonGroupPerson {
- /** Delete an existing person from a Person Group. The persistedFaceId, userData, person name and face feature(s) in the person entry will all be deleted. */
- delete(
- options?: DeletePersonGroupPersonParameters,
- ): StreamableMethod;
- /** Retrieve a person's name and userData, and the persisted faceIds representing the registered person face feature(s). */
- get(
- options?: GetPersonGroupPersonParameters,
- ): StreamableMethod;
- /** Update name or userData of a person. */
- patch(
- options?: UpdatePersonGroupPersonParameters,
- ): StreamableMethod;
+ options?: GetDynamicPersonGroupReferencesParameters,
+ ): StreamableMethod<
+ GetDynamicPersonGroupReferences200Response | GetDynamicPersonGroupReferencesDefaultResponse
+ >;
}
-export interface AddPersonGroupPersonFaceFromUrl {
+export interface AddPersonFace {
/**
- * To deal with an image containing multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature(s) will be stored on server until "Delete Person Group Person Face", "Delete Person Group Person" or "Delete Person Group" is called.
+ * To deal with an image containing multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature(s) will be stored on server until Person Directory "Delete Person Face" or "Delete Person" is called.
*
* Note that persistedFaceId is different from faceId generated by "Detect".
* >
@@ -898,15 +983,16 @@ export interface AddPersonGroupPersonFaceFromUrl {
* * "targetFace" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided "targetFace" rectangle is not returned from "Detect", there's no guarantee to detect and add the face successfully.
* * Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.
* * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.
- * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/specify-detection-model
+ * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model
+ * *
+ * * Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.
+ * * This is a long running operation. Use Response Header "Operation-Location" to determine when the AddFace operation has successfully propagated for future requests to "Identify". For further information about Operation-Locations see "Get Face Operation Status".
*/
post(
- options?: AddPersonGroupPersonFaceFromUrlParameters,
- ): StreamableMethod<
- AddPersonGroupPersonFaceFromUrl200Response | AddPersonGroupPersonFaceFromUrlDefaultResponse
- >;
+ options: AddPersonFaceParameters,
+ ): StreamableMethod;
/**
- * To deal with an image containing multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature(s) will be stored on server until "Delete Person Group Person Face", "Delete Person Group Person" or "Delete Person Group" is called.
+ * To deal with an image containing multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature(s) will be stored on server until Person Directory "Delete Person Face" or "Delete Person" is called.
*
* Note that persistedFaceId is different from faceId generated by "Detect".
* >
@@ -917,72 +1003,93 @@ export interface AddPersonGroupPersonFaceFromUrl {
* * "targetFace" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided "targetFace" rectangle is not returned from "Detect", there's no guarantee to detect and add the face successfully.
* * Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.
* * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.
- * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/specify-detection-model
+ * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model
+ * *
+ * * Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.
+ * * This is a long running operation. Use Response Header "Operation-Location" to determine when the AddFace operation has successfully propagated for future requests to "Identify". For further information about Operation-Locations see "Get Face Operation Status".
*/
post(
- options: AddPersonGroupPersonFaceParameters,
- ): StreamableMethod<
- AddPersonGroupPersonFace200Response | AddPersonGroupPersonFaceDefaultResponse
- >;
+ options?: AddPersonFaceFromUrlParameters,
+ ): StreamableMethod;
+ /** Retrieve a person's persistedFaceIds representing the registered person face feature(s). */
+ get(
+ options?: GetPersonFacesParameters,
+ ): StreamableMethod;
}
-export interface DeletePersonGroupPersonFace {
+export interface DeletePersonFace {
/** Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel. */
delete(
- options?: DeletePersonGroupPersonFaceParameters,
- ): StreamableMethod<
- DeletePersonGroupPersonFace200Response | DeletePersonGroupPersonFaceDefaultResponse
- >;
- /** Retrieve person face information. The persisted person face is specified by its personGroupId, personId and persistedFaceId. */
+ options?: DeletePersonFaceParameters,
+ ): StreamableMethod;
+ /** Retrieve person face information. The persisted person face is specified by its personId. recognitionModel, and persistedFaceId. */
get(
- options?: GetPersonGroupPersonFaceParameters,
- ): StreamableMethod<
- GetPersonGroupPersonFace200Response | GetPersonGroupPersonFaceDefaultResponse
- >;
- /** Update a person persisted face's userData field. */
+ options?: GetPersonFaceParameters,
+ ): StreamableMethod;
+ /** Update a persisted face's userData field of a person. */
patch(
- options?: UpdatePersonGroupPersonFaceParameters,
- ): StreamableMethod<
- UpdatePersonGroupPersonFace200Response | UpdatePersonGroupPersonFaceDefaultResponse
- >;
+ options?: UpdatePersonFaceParameters,
+ ): StreamableMethod;
}
-export interface CreateLargePersonGroup {
+export interface CreateDynamicPersonGroupWithPerson {
/**
- * A Large Person Group is a container holding the uploaded person data, including the face recognition features. It can hold up to 1,000,000 entities.
+ * A Dynamic Person Group is a container that references Person Directory "Create Person". After creation, use Person Directory "Update Dynamic Person Group" to add/remove persons to/from the Dynamic Person Group.
*
- * After creation, use "Create Large Person Group Person" to add person into the group, and call "Train Large Person Group" to get this group ready for "Identify From Large Person Group".
+ * Dynamic Person Group and user data will be stored on server until Person Directory "Delete Dynamic Person Group" is called. Use "Identify From Dynamic Person Group" with the dynamicPersonGroupId parameter to identify against persons.
*
- * No image will be stored. Only the person's extracted face feature(s) and userData will be stored on server until "Delete Large Person Group Person" or "Delete Large Person Group" is called.
+ * No image will be stored. Only the person's extracted face feature(s) and userData will be stored on server until Person Directory "Delete Person" or "Delete Person Face" is called.
*
- * 'recognitionModel' should be specified to associate with this Large Person Group. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing Large Person Group will use the recognition model that's already associated with the collection. Existing face feature(s) in a Large Person Group can't be updated to features extracted by another version of recognition model.
+ * 'recognitionModel' does not need to be specified with Dynamic Person Groups. Dynamic Person Groups are references to Person Directory "Create Person" and therefore work with most all 'recognitionModels'. The faceId's provided during "Identify" determine the 'recognitionModel' used.
+ */
+ put(
+ options?: CreateDynamicPersonGroupWithPersonParameters,
+ ): StreamableMethod<
+ | CreateDynamicPersonGroupWithPerson202Response
+ | CreateDynamicPersonGroupWithPersonDefaultResponse
+ >;
+ /**
+ * A Dynamic Person Group is a container that references Person Directory "Create Person". After creation, use Person Directory "Update Dynamic Person Group" to add/remove persons to/from the Dynamic Person Group.
*
- * > [!NOTE]
- * >
- * > *
- * > * Free-tier subscription quota: 1,000 Large Person Groups.
- * > * S0-tier subscription quota: 1,000,000 Large Person Groups.
+ * Dynamic Person Group and user data will be stored on server until Person Directory "Delete Dynamic Person Group" is called. Use "Identify From Dynamic Person Group" with the dynamicPersonGroupId parameter to identify against persons.
+ *
+ * No image will be stored. Only the person's extracted face feature(s) and userData will be stored on server until Person Directory "Delete Person" or "Delete Person Face" is called.
+ *
+ * 'recognitionModel' does not need to be specified with Dynamic Person Groups. Dynamic Person Groups are references to Person Directory "Create Person" and therefore work with most all 'recognitionModels'. The faceId's provided during "Identify" determine the 'recognitionModel' used.
*/
put(
- options?: CreateLargePersonGroupParameters,
- ): StreamableMethod;
- /** Delete an existing Large Person Group with specified personGroupId. Persisted data in this Large Person Group will be deleted. */
+ options?: CreateDynamicPersonGroupParameters,
+ ): StreamableMethod<
+ CreateDynamicPersonGroup200Response | CreateDynamicPersonGroupDefaultResponse
+ >;
+ /** Deleting this Dynamic Person Group only delete the references to persons data. To delete actual person see Person Directory "Delete Person". */
delete(
- options?: DeleteLargePersonGroupParameters,
- ): StreamableMethod;
- /** Retrieve the information of a Large Person Group, including its name, userData and recognitionModel. This API returns Large Person Group information only, use "Get Large Person Group Persons" instead to retrieve person information under the Large Person Group. */
+ options?: DeleteDynamicPersonGroupParameters,
+ ): StreamableMethod<
+ DeleteDynamicPersonGroup202Response | DeleteDynamicPersonGroupDefaultResponse
+ >;
+ /** This API returns Dynamic Person Group information only, use Person Directory "Get Dynamic Person Group Persons" instead to retrieve person information under the Dynamic Person Group. */
get(
- options?: GetLargePersonGroupParameters,
- ): StreamableMethod;
- /** Update an existing Large Person Group's name and userData. The properties keep unchanged if they are not in request body. */
+ options?: GetDynamicPersonGroupParameters,
+ ): StreamableMethod;
+ /** The properties keep unchanged if they are not in request body. */
patch(
- options?: UpdateLargePersonGroupParameters,
- ): StreamableMethod;
+ options?: UpdateDynamicPersonGroupWithPersonChangesParameters,
+ ): StreamableMethod<
+ | UpdateDynamicPersonGroupWithPersonChanges202Response
+ | UpdateDynamicPersonGroupWithPersonChangesDefaultResponse
+ >;
+ /** The properties keep unchanged if they are not in request body. */
+ patch(
+ options?: UpdateDynamicPersonGroupParameters,
+ ): StreamableMethod<
+ UpdateDynamicPersonGroup200Response | UpdateDynamicPersonGroupDefaultResponse
+ >;
}
-export interface GetLargePersonGroups {
+export interface GetDynamicPersonGroups {
/**
- * Large Person Groups are stored in alphabetical order of largePersonGroupId.
+ * Dynamic Person Groups are stored in alphabetical order of dynamicPersonGroupId.
* >
* *
* * "start" parameter (string, optional) specifies an ID value from which returned entries will have larger IDs based on string comparison. Setting "start" to an empty value indicates that entries should be returned starting from the first item.
@@ -996,45 +1103,13 @@ export interface GetLargePersonGroups {
* > * "start=itemId2&top=3" will return "itemId3", "itemId4", "itemId5".
*/
get(
- options?: GetLargePersonGroupsParameters,
- ): StreamableMethod;
-}
-
-export interface GetLargePersonGroupTrainingStatus {
- /** Training time depends on the number of person entries, and their faces in a Large Person Group. It could be in seconds, or up to half an hour for 1,000,000 persons. */
- get(
- options?: GetLargePersonGroupTrainingStatusParameters,
- ): StreamableMethod<
- GetLargePersonGroupTrainingStatus200Response | GetLargePersonGroupTrainingStatusDefaultResponse
- >;
-}
-
-export interface TrainLargePersonGroup {
- /** The training task is an asynchronous task. Training time depends on the number of person entries, and their faces in a Large Person Group. It could be in several seconds, or up to half a hour for 1,000,000 persons. To check training status, please use "Get Large Person Group Training Status". */
- post(
- options?: TrainLargePersonGroupParameters,
- ): StreamableMethod;
+ options?: GetDynamicPersonGroupsParameters,
+ ): StreamableMethod;
}
-export interface CreateLargePersonGroupPerson {
- /**
- * > [!NOTE]
- * >
- * > *
- * > * Free-tier subscription quota:
- * > * 1,000 persons in all Large Person Groups.
- * > * S0-tier subscription quota:
- * > * 1,000,000 persons per Large Person Group.
- * > * 1,000,000 Large Person Groups.
- * > * 1,000,000,000 persons in all Large Person Groups.
- */
- post(
- options?: CreateLargePersonGroupPersonParameters,
- ): StreamableMethod<
- CreateLargePersonGroupPerson200Response | CreateLargePersonGroupPersonDefaultResponse
- >;
+export interface GetDynamicPersonGroupPersons {
/**
- * Persons are stored in alphabetical order of personId created in "Create Large Person Group Person".
+ * Persons are stored in alphabetical order of personId created in Person Directory "Create Person".
* >
* *
* * "start" parameter (string, optional) specifies an ID value from which returned entries will have larger IDs based on string comparison. Setting "start" to an empty value indicates that entries should be returned starting from the first item.
@@ -1048,103 +1123,49 @@ export interface CreateLargePersonGroupPerson {
* > * "start=itemId2&top=3" will return "itemId3", "itemId4", "itemId5".
*/
get(
- options?: GetLargePersonGroupPersonsParameters,
- ): StreamableMethod<
- GetLargePersonGroupPersons200Response | GetLargePersonGroupPersonsDefaultResponse
- >;
-}
-
-export interface DeleteLargePersonGroupPerson {
- /** Delete an existing person from a Large Person Group. The persistedFaceId, userData, person name and face feature(s) in the person entry will all be deleted. */
- delete(
- options?: DeleteLargePersonGroupPersonParameters,
- ): StreamableMethod<
- DeleteLargePersonGroupPerson200Response | DeleteLargePersonGroupPersonDefaultResponse
- >;
- /** Retrieve a person's name and userData, and the persisted faceIds representing the registered person face feature(s). */
- get(
- options?: GetLargePersonGroupPersonParameters,
- ): StreamableMethod<
- GetLargePersonGroupPerson200Response | GetLargePersonGroupPersonDefaultResponse
- >;
- /** Update name or userData of a person. */
- patch(
- options?: UpdateLargePersonGroupPersonParameters,
+ options?: GetDynamicPersonGroupPersonsParameters,
): StreamableMethod<
- UpdateLargePersonGroupPerson200Response | UpdateLargePersonGroupPersonDefaultResponse
+ GetDynamicPersonGroupPersons200Response | GetDynamicPersonGroupPersonsDefaultResponse
>;
}
-export interface AddLargePersonGroupPersonFaceFromUrl {
+export interface CreatePersonGroup {
/**
- * To deal with an image containing multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature(s) will be stored on server until "Delete Large Person Group Person Face", "Delete Large Person Group Person" or "Delete Large Person Group" is called.
+ * A Person Group is a container holding the uploaded person data, including face recognition features.
*
- * Note that persistedFaceId is different from faceId generated by "Detect".
- * >
- * *
- * * Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.
- * * Each person entry can hold up to 248 faces.
- * * JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.
- * * "targetFace" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided "targetFace" rectangle is not returned from "Detect", there's no guarantee to detect and add the face successfully.
- * * Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.
- * * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.
- * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/specify-detection-model
- */
- post(
- options?: AddLargePersonGroupPersonFaceFromUrlParameters,
- ): StreamableMethod<
- | AddLargePersonGroupPersonFaceFromUrl200Response
- | AddLargePersonGroupPersonFaceFromUrlDefaultResponse
- >;
- /**
- * To deal with an image containing multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature(s) will be stored on server until "Delete Large Person Group Person Face", "Delete Large Person Group Person" or "Delete Large Person Group" is called.
+ * After creation, use "Create Person Group Person" to add persons into the group, and then call "Train Person Group" to get this group ready for "Identify From Person Group".
*
- * Note that persistedFaceId is different from faceId generated by "Detect".
+ * No image will be stored. Only the person's extracted face feature(s) and userData will be stored on server until "Delete Person Group Person" or "Delete Person Group" is called.
+ *
+ * 'recognitionModel' should be specified to associate with this Person Group. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing Person Group will use the recognition model that's already associated with the collection. Existing face feature(s) in a Person Group can't be updated to features extracted by another version of recognition model.
+ *
+ * > [!NOTE]
* >
- * *
- * * Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.
- * * Each person entry can hold up to 248 faces.
- * * JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.
- * * "targetFace" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided "targetFace" rectangle is not returned from "Detect", there's no guarantee to detect and add the face successfully.
- * * Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.
- * * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.
- * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/specify-detection-model
+ * > *
+ * > * Free-tier subscription quota: 1,000 Person Groups. Each holds up to 1,000 persons.
+ * > * S0-tier subscription quota: 1,000,000 Person Groups. Each holds up to 10,000 persons.
+ * > * to handle larger scale face identification problem, please consider using Large Person Group.
*/
- post(
- options: AddLargePersonGroupPersonFaceParameters,
- ): StreamableMethod<
- AddLargePersonGroupPersonFace200Response | AddLargePersonGroupPersonFaceDefaultResponse
- >;
-}
-
-export interface DeleteLargePersonGroupPersonFace {
- /** Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel. */
+ put(
+ options?: CreatePersonGroupParameters,
+ ): StreamableMethod;
+ /** Delete an existing Person Group with specified personGroupId. Persisted data in this Person Group will be deleted. */
delete(
- options?: DeleteLargePersonGroupPersonFaceParameters,
- ): StreamableMethod<
- DeleteLargePersonGroupPersonFace200Response | DeleteLargePersonGroupPersonFaceDefaultResponse
- >;
- /** Retrieve person face information. The persisted person face is specified by its largePersonGroupId, personId and persistedFaceId. */
+ options?: DeletePersonGroupParameters,
+ ): StreamableMethod;
+ /** Retrieve Person Group name, userData and recognitionModel. To get person information under this personGroup, use "Get Person Group Persons". */
get(
- options?: GetLargePersonGroupPersonFaceParameters,
- ): StreamableMethod<
- GetLargePersonGroupPersonFace200Response | GetLargePersonGroupPersonFaceDefaultResponse
- >;
- /** Update a person persisted face's userData field. */
+ options?: GetPersonGroupParameters,
+ ): StreamableMethod;
+ /** Update an existing Person Group's name and userData. The properties keep unchanged if they are not in request body. */
patch(
- options?: UpdateLargePersonGroupPersonFaceParameters,
- ): StreamableMethod<
- UpdateLargePersonGroupPersonFace200Response | UpdateLargePersonGroupPersonFaceDefaultResponse
- >;
+ options?: UpdatePersonGroupParameters,
+ ): StreamableMethod;
}
-export interface CreatePerson {
- /** Creates a new person in a Person Directory. To add face to this person, please call Person Directory "Add Person Face". */
- post(
- options?: CreatePersonParameters,
- ): StreamableMethod;
+export interface GetPersonGroups {
/**
- * Persons are stored in alphabetical order of personId created in Person Directory "Create Person".
+ * Person Groups are stored in alphabetical order of personGroupId.
* >
* *
* * "start" parameter (string, optional) specifies an ID value from which returned entries will have larger IDs based on string comparison. Setting "start" to an empty value indicates that entries should be returned starting from the first item.
@@ -1158,28 +1179,43 @@ export interface CreatePerson {
* > * "start=itemId2&top=3" will return "itemId3", "itemId4", "itemId5".
*/
get(
- options?: GetPersonsParameters,
- ): StreamableMethod;
+ options?: GetPersonGroupsParameters,
+ ): StreamableMethod;
}
-export interface DeletePerson {
- /** Delete an existing person from Person Directory. The persistedFaceId(s), userData, person name and face feature(s) in the person entry will all be deleted. */
- delete(
- options?: DeletePersonParameters,
- ): StreamableMethod;
- /** Retrieve a person's name and userData from Person Directory. */
+export interface GetPersonGroupTrainingStatus {
+ /** To check Person Group training status completed or still ongoing. Person Group training is an asynchronous operation triggered by "Train Person Group" API. */
get(
- options?: GetPersonParameters,
- ): StreamableMethod;
- /** Update name or userData of a person. */
- patch(
- options?: UpdatePersonParameters,
- ): StreamableMethod;
+ options?: GetPersonGroupTrainingStatusParameters,
+ ): StreamableMethod<
+ GetPersonGroupTrainingStatus200Response | GetPersonGroupTrainingStatusDefaultResponse
+ >;
}
-export interface GetDynamicPersonGroupReferences {
+export interface TrainPersonGroup {
+ /** The training task is an asynchronous task. Training time depends on the number of person entries, and their faces in a Person Group. It could be several seconds to minutes. To check training status, please use "Get Person Group Training Status". */
+ post(
+ options?: TrainPersonGroupParameters,
+ ): StreamableMethod;
+}
+
+export interface CreatePersonGroupPerson {
/**
- * Dynamic Person Groups are stored in alphabetical order of Dynamic Person Group ID created in Person Directory "Create Dynamic Person Group".
+ * > [!NOTE]
+ * >
+ * > *
+ * > * Free-tier subscription quota:
+ * > * 1,000 persons in all Person Groups.
+ * > * S0-tier subscription quota:
+ * > * 10,000 persons per Person Group.
+ * > * 1,000,000 Person Groups.
+ * > * 100,000,000 persons in all Person Groups.
+ */
+ post(
+ options?: CreatePersonGroupPersonParameters,
+ ): StreamableMethod;
+ /**
+ * Persons are stored in alphabetical order of personId created in "Create Person Group Person".
* >
* *
* * "start" parameter (string, optional) specifies an ID value from which returned entries will have larger IDs based on string comparison. Setting "start" to an empty value indicates that entries should be returned starting from the first item.
@@ -1193,15 +1229,28 @@ export interface GetDynamicPersonGroupReferences {
* > * "start=itemId2&top=3" will return "itemId3", "itemId4", "itemId5".
*/
get(
- options?: GetDynamicPersonGroupReferencesParameters,
- ): StreamableMethod<
- GetDynamicPersonGroupReferences200Response | GetDynamicPersonGroupReferencesDefaultResponse
- >;
+ options?: GetPersonGroupPersonsParameters,
+ ): StreamableMethod;
}
-export interface AddPersonFace {
+export interface DeletePersonGroupPerson {
+ /** Delete an existing person from a Person Group. The persistedFaceId, userData, person name and face feature(s) in the person entry will all be deleted. */
+ delete(
+ options?: DeletePersonGroupPersonParameters,
+ ): StreamableMethod;
+ /** Retrieve a person's name and userData, and the persisted faceIds representing the registered person face feature(s). */
+ get(
+ options?: GetPersonGroupPersonParameters,
+ ): StreamableMethod;
+ /** Update name or userData of a person. */
+ patch(
+ options?: UpdatePersonGroupPersonParameters,
+ ): StreamableMethod;
+}
+
+export interface AddPersonGroupPersonFaceFromUrl {
/**
- * To deal with an image containing multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature(s) will be stored on server until Person Directory "Delete Person Face" or "Delete Person" is called.
+ * To deal with an image containing multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature(s) will be stored on server until "Delete Person Group Person Face", "Delete Person Group Person" or "Delete Person Group" is called.
*
* Note that persistedFaceId is different from faceId generated by "Detect".
* >
@@ -1212,16 +1261,15 @@ export interface AddPersonFace {
* * "targetFace" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided "targetFace" rectangle is not returned from "Detect", there's no guarantee to detect and add the face successfully.
* * Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.
* * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.
- * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/specify-detection-model
- * *
- * * Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.
- * * This is a long running operation. Use Response Header "Operation-Location" to determine when the AddFace operation has successfully propagated for future requests to "Identify". For further information about Operation-Locations see "Get Face Operation Status".
+ * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model
*/
post(
- options: AddPersonFaceParameters,
- ): StreamableMethod;
+ options?: AddPersonGroupPersonFaceFromUrlParameters,
+ ): StreamableMethod<
+ AddPersonGroupPersonFaceFromUrl200Response | AddPersonGroupPersonFaceFromUrlDefaultResponse
+ >;
/**
- * To deal with an image containing multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature(s) will be stored on server until Person Directory "Delete Person Face" or "Delete Person" is called.
+ * To deal with an image containing multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature(s) will be stored on server until "Delete Person Group Person Face", "Delete Person Group Person" or "Delete Person Group" is called.
*
* Note that persistedFaceId is different from faceId generated by "Detect".
* >
@@ -1232,93 +1280,72 @@ export interface AddPersonFace {
* * "targetFace" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided "targetFace" rectangle is not returned from "Detect", there's no guarantee to detect and add the face successfully.
* * Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.
* * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.
- * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/en-us/azure/ai-services/computer-vision/how-to/specify-detection-model
- * *
- * * Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel.
- * * This is a long running operation. Use Response Header "Operation-Location" to determine when the AddFace operation has successfully propagated for future requests to "Identify". For further information about Operation-Locations see "Get Face Operation Status".
+ * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model
*/
post(
- options?: AddPersonFaceFromUrlParameters,
- ): StreamableMethod;
- /** Retrieve a person's persistedFaceIds representing the registered person face feature(s). */
- get(
- options?: GetPersonFacesParameters,
- ): StreamableMethod;
+ options: AddPersonGroupPersonFaceParameters,
+ ): StreamableMethod<
+ AddPersonGroupPersonFace200Response | AddPersonGroupPersonFaceDefaultResponse
+ >;
}
-export interface DeletePersonFace {
+export interface DeletePersonGroupPersonFace {
/** Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel. */
delete(
- options?: DeletePersonFaceParameters,
- ): StreamableMethod;
- /** Retrieve person face information. The persisted person face is specified by its personId. recognitionModel, and persistedFaceId. */
+ options?: DeletePersonGroupPersonFaceParameters,
+ ): StreamableMethod<
+ DeletePersonGroupPersonFace200Response | DeletePersonGroupPersonFaceDefaultResponse
+ >;
+ /** Retrieve person face information. The persisted person face is specified by its personGroupId, personId and persistedFaceId. */
get(
- options?: GetPersonFaceParameters,
- ): StreamableMethod;
- /** Update a persisted face's userData field of a person. */
+ options?: GetPersonGroupPersonFaceParameters,
+ ): StreamableMethod<
+ GetPersonGroupPersonFace200Response | GetPersonGroupPersonFaceDefaultResponse
+ >;
+ /** Update a person persisted face's userData field. */
patch(
- options?: UpdatePersonFaceParameters,
- ): StreamableMethod;
+ options?: UpdatePersonGroupPersonFaceParameters,
+ ): StreamableMethod<
+ UpdatePersonGroupPersonFace200Response | UpdatePersonGroupPersonFaceDefaultResponse
+ >;
}
-export interface CreateDynamicPersonGroupWithPerson {
+export interface CreateLargePersonGroup {
/**
- * A Dynamic Person Group is a container that references Person Directory "Create Person". After creation, use Person Directory "Update Dynamic Person Group" to add/remove persons to/from the Dynamic Person Group.
- *
- * Dynamic Person Group and user data will be stored on server until Person Directory "Delete Dynamic Person Group" is called. Use "Identify From Dynamic Person Group" with the dynamicPersonGroupId parameter to identify against persons.
- *
- * No image will be stored. Only the person's extracted face feature(s) and userData will be stored on server until Person Directory "Delete Person" or "Delete Person Face" is called.
+ * A Large Person Group is a container holding the uploaded person data, including the face recognition features. It can hold up to 1,000,000 entities.
*
- * 'recognitionModel' does not need to be specified with Dynamic Person Groups. Dynamic Person Groups are references to Person Directory "Create Person" and therefore work with most all 'recognitionModels'. The faceId's provided during "Identify" determine the 'recognitionModel' used.
- */
- put(
- options?: CreateDynamicPersonGroupWithPersonParameters,
- ): StreamableMethod<
- | CreateDynamicPersonGroupWithPerson202Response
- | CreateDynamicPersonGroupWithPersonDefaultResponse
- >;
- /**
- * A Dynamic Person Group is a container that references Person Directory "Create Person". After creation, use Person Directory "Update Dynamic Person Group" to add/remove persons to/from the Dynamic Person Group.
+ * After creation, use "Create Large Person Group Person" to add person into the group, and call "Train Large Person Group" to get this group ready for "Identify From Large Person Group".
*
- * Dynamic Person Group and user data will be stored on server until Person Directory "Delete Dynamic Person Group" is called. Use "Identify From Dynamic Person Group" with the dynamicPersonGroupId parameter to identify against persons.
+ * No image will be stored. Only the person's extracted face feature(s) and userData will be stored on server until "Delete Large Person Group Person" or "Delete Large Person Group" is called.
*
- * No image will be stored. Only the person's extracted face feature(s) and userData will be stored on server until Person Directory "Delete Person" or "Delete Person Face" is called.
+ * 'recognitionModel' should be specified to associate with this Large Person Group. The default value for 'recognitionModel' is 'recognition_01', if the latest model needed, please explicitly specify the model you need in this parameter. New faces that are added to an existing Large Person Group will use the recognition model that's already associated with the collection. Existing face feature(s) in a Large Person Group can't be updated to features extracted by another version of recognition model.
*
- * 'recognitionModel' does not need to be specified with Dynamic Person Groups. Dynamic Person Groups are references to Person Directory "Create Person" and therefore work with most all 'recognitionModels'. The faceId's provided during "Identify" determine the 'recognitionModel' used.
+ * > [!NOTE]
+ * >
+ * > *
+ * > * Free-tier subscription quota: 1,000 Large Person Groups.
+ * > * S0-tier subscription quota: 1,000,000 Large Person Groups.
*/
put(
- options?: CreateDynamicPersonGroupParameters,
- ): StreamableMethod<
- CreateDynamicPersonGroup200Response | CreateDynamicPersonGroupDefaultResponse
- >;
- /** Deleting this Dynamic Person Group only delete the references to persons data. To delete actual person see Person Directory "Delete Person". */
+ options?: CreateLargePersonGroupParameters,
+ ): StreamableMethod;
+ /** Delete an existing Large Person Group with specified personGroupId. Persisted data in this Large Person Group will be deleted. */
delete(
- options?: DeleteDynamicPersonGroupParameters,
- ): StreamableMethod<
- DeleteDynamicPersonGroup202Response | DeleteDynamicPersonGroupDefaultResponse
- >;
- /** This API returns Dynamic Person Group information only, use Person Directory "Get Dynamic Person Group Persons" instead to retrieve person information under the Dynamic Person Group. */
+ options?: DeleteLargePersonGroupParameters,
+ ): StreamableMethod;
+ /** Retrieve the information of a Large Person Group, including its name, userData and recognitionModel. This API returns Large Person Group information only, use "Get Large Person Group Persons" instead to retrieve person information under the Large Person Group. */
get(
- options?: GetDynamicPersonGroupParameters,
- ): StreamableMethod;
- /** The properties keep unchanged if they are not in request body. */
- patch(
- options?: UpdateDynamicPersonGroupWithPersonChangesParameters,
- ): StreamableMethod<
- | UpdateDynamicPersonGroupWithPersonChanges202Response
- | UpdateDynamicPersonGroupWithPersonChangesDefaultResponse
- >;
- /** The properties keep unchanged if they are not in request body. */
+ options?: GetLargePersonGroupParameters,
+ ): StreamableMethod;
+ /** Update an existing Large Person Group's name and userData. The properties keep unchanged if they are not in request body. */
patch(
- options?: UpdateDynamicPersonGroupParameters,
- ): StreamableMethod<
- UpdateDynamicPersonGroup200Response | UpdateDynamicPersonGroupDefaultResponse
- >;
+ options?: UpdateLargePersonGroupParameters,
+ ): StreamableMethod;
}
-export interface GetDynamicPersonGroups {
+export interface GetLargePersonGroups {
/**
- * Dynamic Person Groups are stored in alphabetical order of dynamicPersonGroupId.
+ * Large Person Groups are stored in alphabetical order of largePersonGroupId.
* >
* *
* * "start" parameter (string, optional) specifies an ID value from which returned entries will have larger IDs based on string comparison. Setting "start" to an empty value indicates that entries should be returned starting from the first item.
@@ -1332,171 +1359,145 @@ export interface GetDynamicPersonGroups {
* > * "start=itemId2&top=3" will return "itemId3", "itemId4", "itemId5".
*/
get(
- options?: GetDynamicPersonGroupsParameters,
- ): StreamableMethod;
+ options?: GetLargePersonGroupsParameters,
+ ): StreamableMethod;
}
-export interface GetDynamicPersonGroupPersons {
- /**
- * Persons are stored in alphabetical order of personId created in Person Directory "Create Person".
- * >
- * *
- * * "start" parameter (string, optional) specifies an ID value from which returned entries will have larger IDs based on string comparison. Setting "start" to an empty value indicates that entries should be returned starting from the first item.
- * * "top" parameter (int, optional) determines the maximum number of entries to be returned, with a limit of up to 1000 entries per call. To retrieve additional entries beyond this limit, specify "start" with the personId of the last entry returned in the current call.
- *
- * > [!TIP]
- * >
- * > * For example, there are total 5 items with their IDs: "itemId1", ..., "itemId5".
- * > * "start=&top=" will return all 5 items.
- * > * "start=&top=2" will return "itemId1", "itemId2".
- * > * "start=itemId2&top=3" will return "itemId3", "itemId4", "itemId5".
- */
+export interface GetLargePersonGroupTrainingStatus {
+ /** Training time depends on the number of person entries, and their faces in a Large Person Group. It could be in seconds, or up to half an hour for 1,000,000 persons. */
get(
- options?: GetDynamicPersonGroupPersonsParameters,
+ options?: GetLargePersonGroupTrainingStatusParameters,
): StreamableMethod<
- GetDynamicPersonGroupPersons200Response | GetDynamicPersonGroupPersonsDefaultResponse
+ GetLargePersonGroupTrainingStatus200Response | GetLargePersonGroupTrainingStatusDefaultResponse
>;
}
-export interface CreateLivenessSession {
+export interface TrainLargePersonGroup {
+ /** The training task is an asynchronous task. Training time depends on the number of person entries, and their faces in a Large Person Group. It could be in several seconds, or up to half a hour for 1,000,000 persons. To check training status, please use "Get Large Person Group Training Status". */
+ post(
+ options?: TrainLargePersonGroupParameters,
+ ): StreamableMethod;
+}
+
+export interface CreateLargePersonGroupPerson {
/**
- * A session is best for client device scenarios where developers want to authorize a client device to perform only a liveness detection without granting full access to their resource. Created sessions have a limited life span and only authorize clients to perform the desired action before access is expired.
- *
- * Permissions includes...
- * >
- * *
- * * Ability to call /detectLiveness/singleModal for up to 3 retries.
- * * A token lifetime of 10 minutes.
- *
* > [!NOTE]
- * > Client access can be revoked by deleting the session using the Delete Liveness Session operation. To retrieve a result, use the Get Liveness Session. To audit the individual requests that a client has made to your resource, use the List Liveness Session Audit Entries.
+ * >
+ * > *
+ * > * Free-tier subscription quota:
+ * > * 1,000 persons in all Large Person Groups.
+ * > * S0-tier subscription quota:
+ * > * 1,000,000 persons per Large Person Group.
+ * > * 1,000,000 Large Person Groups.
+ * > * 1,000,000,000 persons in all Large Person Groups.
*/
post(
- options?: CreateLivenessSessionParameters,
- ): StreamableMethod;
+ options?: CreateLargePersonGroupPersonParameters,
+ ): StreamableMethod<
+ CreateLargePersonGroupPerson200Response | CreateLargePersonGroupPersonDefaultResponse
+ >;
/**
- * List sessions from the last sessionId greater than the 'start'.
+ * Persons are stored in alphabetical order of personId created in "Create Large Person Group Person".
+ * >
+ * *
+ * * "start" parameter (string, optional) specifies an ID value from which returned entries will have larger IDs based on string comparison. Setting "start" to an empty value indicates that entries should be returned starting from the first item.
+ * * "top" parameter (int, optional) determines the maximum number of entries to be returned, with a limit of up to 1000 entries per call. To retrieve additional entries beyond this limit, specify "start" with the personId of the last entry returned in the current call.
*
- * The result should be ordered by sessionId in ascending order.
+ * > [!TIP]
+ * >
+ * > * For example, there are total 5 items with their IDs: "itemId1", ..., "itemId5".
+ * > * "start=&top=" will return all 5 items.
+ * > * "start=&top=2" will return "itemId1", "itemId2".
+ * > * "start=itemId2&top=3" will return "itemId3", "itemId4", "itemId5".
*/
get(
- options?: GetLivenessSessionsParameters,
- ): StreamableMethod;
+ options?: GetLargePersonGroupPersonsParameters,
+ ): StreamableMethod<
+ GetLargePersonGroupPersons200Response | GetLargePersonGroupPersonsDefaultResponse
+ >;
}
-export interface DeleteLivenessSession {
- /**
- * > [!NOTE]
- * > Deleting a session deactivates the Session Auth Token by blocking future API calls made with that Auth Token. While this can be used to remove any access for that token, those requests will still count towards overall resource rate limits. It's best to leverage TokenTTL to limit length of tokens in the case that it is misused.
- */
+export interface DeleteLargePersonGroupPerson {
+ /** Delete an existing person from a Large Person Group. The persistedFaceId, userData, person name and face feature(s) in the person entry will all be deleted. */
delete(
- options?: DeleteLivenessSessionParameters,
- ): StreamableMethod;
- /** Get session result of detectLiveness/singleModal call. */
- get(
- options?: GetLivenessSessionResultParameters,
+ options?: DeleteLargePersonGroupPersonParameters,
): StreamableMethod<
- GetLivenessSessionResult200Response | GetLivenessSessionResultDefaultResponse
+ DeleteLargePersonGroupPerson200Response | DeleteLargePersonGroupPersonDefaultResponse
>;
-}
-
-export interface GetLivenessSessionAuditEntries {
- /** Gets session requests and response body for the session. */
+ /** Retrieve a person's name and userData, and the persisted faceIds representing the registered person face feature(s). */
get(
- options?: GetLivenessSessionAuditEntriesParameters,
+ options?: GetLargePersonGroupPersonParameters,
): StreamableMethod<
- GetLivenessSessionAuditEntries200Response | GetLivenessSessionAuditEntriesDefaultResponse
+ GetLargePersonGroupPerson200Response | GetLargePersonGroupPersonDefaultResponse
+ >;
+ /** Update name or userData of a person. */
+ patch(
+ options?: UpdateLargePersonGroupPersonParameters,
+ ): StreamableMethod<
+ UpdateLargePersonGroupPerson200Response | UpdateLargePersonGroupPersonDefaultResponse
>;
}
-export interface CreateLivenessWithVerifySessionWithVerifyImage {
+export interface AddLargePersonGroupPersonFaceFromUrl {
/**
- * A session is best for client device scenarios where developers want to authorize a client device to perform only a liveness detection without granting full access to their resource. Created sessions have a limited life span and only authorize clients to perform the desired action before access is expired.
+ * To deal with an image containing multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature(s) will be stored on server until "Delete Large Person Group Person Face", "Delete Large Person Group Person" or "Delete Large Person Group" is called.
*
- * Permissions includes...
+ * Note that persistedFaceId is different from faceId generated by "Detect".
* >
* *
- * * Ability to call /detectLivenessWithVerify/singleModal for up to 3 retries.
- * * A token lifetime of 10 minutes.
- *
- * > [!NOTE]
- * >
- * > *
- * > * Client access can be revoked by deleting the session using the Delete Liveness With Verify Session operation.
- * > * To retrieve a result, use the Get Liveness With Verify Session.
- * > * To audit the individual requests that a client has made to your resource, use the List Liveness With Verify Session Audit Entries.
- *
- * Recommended Option: VerifyImage is provided during session creation.
+ * * Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.
+ * * Each person entry can hold up to 248 faces.
+ * * JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.
+ * * "targetFace" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided "targetFace" rectangle is not returned from "Detect", there's no guarantee to detect and add the face successfully.
+ * * Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.
+ * * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.
+ * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model
*/
post(
- options: CreateLivenessWithVerifySessionWithVerifyImageParameters,
+ options?: AddLargePersonGroupPersonFaceFromUrlParameters,
): StreamableMethod<
- | CreateLivenessWithVerifySessionWithVerifyImage200Response
- | CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse
+ | AddLargePersonGroupPersonFaceFromUrl200Response
+ | AddLargePersonGroupPersonFaceFromUrlDefaultResponse
>;
/**
- * A session is best for client device scenarios where developers want to authorize a client device to perform only a liveness detection without granting full access to their resource. Created sessions have a limited life span and only authorize clients to perform the desired action before access is expired.
+ * To deal with an image containing multiple faces, input face can be specified as an image with a targetFace rectangle. It returns a persistedFaceId representing the added face. No image will be stored. Only the extracted face feature(s) will be stored on server until "Delete Large Person Group Person Face", "Delete Large Person Group Person" or "Delete Large Person Group" is called.
*
- * Permissions includes...
+ * Note that persistedFaceId is different from faceId generated by "Detect".
* >
* *
- * * Ability to call /detectLivenessWithVerify/singleModal for up to 3 retries.
- * * A token lifetime of 10 minutes.
- *
- * > [!NOTE]
- * >
- * > *
- * > * Client access can be revoked by deleting the session using the Delete Liveness With Verify Session operation.
- * > * To retrieve a result, use the Get Liveness With Verify Session.
- * > * To audit the individual requests that a client has made to your resource, use the List Liveness With Verify Session Audit Entries.
- *
- * Alternative Option: Client device submits VerifyImage during the /detectLivenessWithVerify/singleModal call.
- * > [!NOTE]
- * > Extra measures should be taken to validate that the client is sending the expected VerifyImage.
+ * * Higher face image quality means better recognition precision. Please consider high-quality faces: frontal, clear, and face size is 200x200 pixels (100 pixels between eyes) or bigger.
+ * * Each person entry can hold up to 248 faces.
+ * * JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB.
+ * * "targetFace" rectangle should contain one face. Zero or multiple faces will be regarded as an error. If the provided "targetFace" rectangle is not returned from "Detect", there's no guarantee to detect and add the face successfully.
+ * * Out of detectable face size (36x36 - 4096x4096 pixels), large head-pose, or large occlusions will cause failures.
+ * * The minimum detectable face size is 36x36 pixels in an image no larger than 1920x1080 pixels. Images with dimensions higher than 1920x1080 pixels will need a proportionally larger minimum face size.
+ * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model
*/
post(
- options?: CreateLivenessWithVerifySessionParameters,
- ): StreamableMethod<
- CreateLivenessWithVerifySession200Response | CreateLivenessWithVerifySessionDefaultResponse
- >;
- /**
- * List sessions from the last sessionId greater than the "start".
- *
- * The result should be ordered by sessionId in ascending order.
- */
- get(
- options?: GetLivenessWithVerifySessionsParameters,
+ options: AddLargePersonGroupPersonFaceParameters,
): StreamableMethod<
- GetLivenessWithVerifySessions200Response | GetLivenessWithVerifySessionsDefaultResponse
+ AddLargePersonGroupPersonFace200Response | AddLargePersonGroupPersonFaceDefaultResponse
>;
}
-export interface DeleteLivenessWithVerifySession {
- /**
- * > [!NOTE]
- * > Deleting a session deactivates the Session Auth Token by blocking future API calls made with that Auth Token. While this can be used to remove any access for that token, those requests will still count towards overall resource rate limits. It's best to leverage TokenTTL to limit length of tokens in the case that it is misused.
- */
+export interface DeleteLargePersonGroupPersonFace {
+ /** Adding/deleting faces to/from a same person will be processed sequentially. Adding/deleting faces to/from different persons are processed in parallel. */
delete(
- options?: DeleteLivenessWithVerifySessionParameters,
+ options?: DeleteLargePersonGroupPersonFaceParameters,
): StreamableMethod<
- DeleteLivenessWithVerifySession200Response | DeleteLivenessWithVerifySessionDefaultResponse
+ DeleteLargePersonGroupPersonFace200Response | DeleteLargePersonGroupPersonFaceDefaultResponse
>;
- /** Get session result of detectLivenessWithVerify/singleModal call. */
+ /** Retrieve person face information. The persisted person face is specified by its largePersonGroupId, personId and persistedFaceId. */
get(
- options?: GetLivenessWithVerifySessionResultParameters,
+ options?: GetLargePersonGroupPersonFaceParameters,
): StreamableMethod<
- | GetLivenessWithVerifySessionResult200Response
- | GetLivenessWithVerifySessionResultDefaultResponse
+ GetLargePersonGroupPersonFace200Response | GetLargePersonGroupPersonFaceDefaultResponse
>;
-}
-
-export interface GetLivenessWithVerifySessionAuditEntries {
- /** Gets session requests and response body for the session. */
- get(
- options?: GetLivenessWithVerifySessionAuditEntriesParameters,
+ /** Update a person persisted face's userData field. */
+ patch(
+ options?: UpdateLargePersonGroupPersonFaceParameters,
): StreamableMethod<
- | GetLivenessWithVerifySessionAuditEntries200Response
- | GetLivenessWithVerifySessionAuditEntriesDefaultResponse
+ UpdateLargePersonGroupPersonFace200Response | UpdateLargePersonGroupPersonFaceDefaultResponse
>;
}
@@ -1513,6 +1514,32 @@ export interface Routes {
(path: "/verify"): VerifyFaceToFace;
/** Resource for '/group' has methods for the following verbs: post */
(path: "/group"): Group;
+ /** Resource for '/detectLiveness/singleModal/sessions' has methods for the following verbs: post, get */
+ (path: "/detectLiveness/singleModal/sessions"): CreateLivenessSession;
+ /** Resource for '/detectLiveness/singleModal/sessions/\{sessionId\}' has methods for the following verbs: delete, get */
+ (
+ path: "/detectLiveness/singleModal/sessions/{sessionId}",
+ sessionId: string,
+ ): DeleteLivenessSession;
+ /** Resource for '/detectLiveness/singleModal/sessions/\{sessionId\}/audit' has methods for the following verbs: get */
+ (
+ path: "/detectLiveness/singleModal/sessions/{sessionId}/audit",
+ sessionId: string,
+ ): GetLivenessSessionAuditEntries;
+ /** Resource for '/detectLivenessWithVerify/singleModal/sessions' has methods for the following verbs: post, get */
+ (
+ path: "/detectLivenessWithVerify/singleModal/sessions",
+ ): CreateLivenessWithVerifySessionWithVerifyImage;
+ /** Resource for '/detectLivenessWithVerify/singleModal/sessions/\{sessionId\}' has methods for the following verbs: delete, get */
+ (
+ path: "/detectLivenessWithVerify/singleModal/sessions/{sessionId}",
+ sessionId: string,
+ ): DeleteLivenessWithVerifySession;
+ /** Resource for '/detectLivenessWithVerify/singleModal/sessions/\{sessionId\}/audit' has methods for the following verbs: get */
+ (
+ path: "/detectLivenessWithVerify/singleModal/sessions/{sessionId}/audit",
+ sessionId: string,
+ ): GetLivenessWithVerifySessionAuditEntries;
/** Resource for '/facelists/\{faceListId\}' has methods for the following verbs: put, delete, get, patch */
(path: "/facelists/{faceListId}", faceListId: string): CreateFaceList;
/** Resource for '/facelists' has methods for the following verbs: get */
@@ -1547,6 +1574,40 @@ export interface Routes {
largeFaceListId: string,
persistedFaceId: string,
): DeleteLargeFaceListFace;
+ /** Resource for '/persons' has methods for the following verbs: post, get */
+ (path: "/persons"): CreatePerson;
+ /** Resource for '/persons/\{personId\}' has methods for the following verbs: delete, get, patch */
+ (path: "/persons/{personId}", personId: string): DeletePerson;
+ /** Resource for '/persons/\{personId\}/dynamicPersonGroupReferences' has methods for the following verbs: get */
+ (
+ path: "/persons/{personId}/dynamicPersonGroupReferences",
+ personId: string,
+ ): GetDynamicPersonGroupReferences;
+ /** Resource for '/persons/\{personId\}/recognitionModels/\{recognitionModel\}/persistedfaces' has methods for the following verbs: post, get */
+ (
+ path: "/persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces",
+ personId: string,
+ recognitionModel: RecognitionModel,
+ ): AddPersonFace;
+ /** Resource for '/persons/\{personId\}/recognitionModels/\{recognitionModel\}/persistedfaces/\{persistedFaceId\}' has methods for the following verbs: delete, get, patch */
+ (
+ path: "/persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces/{persistedFaceId}",
+ personId: string,
+ recognitionModel: RecognitionModel,
+ persistedFaceId: string,
+ ): DeletePersonFace;
+ /** Resource for '/dynamicpersongroups/\{dynamicPersonGroupId\}' has methods for the following verbs: put, delete, get, patch */
+ (
+ path: "/dynamicpersongroups/{dynamicPersonGroupId}",
+ dynamicPersonGroupId: string,
+ ): CreateDynamicPersonGroupWithPerson;
+ /** Resource for '/dynamicpersongroups' has methods for the following verbs: get */
+ (path: "/dynamicpersongroups"): GetDynamicPersonGroups;
+ /** Resource for '/dynamicpersongroups/\{dynamicPersonGroupId\}/persons' has methods for the following verbs: get */
+ (
+ path: "/dynamicpersongroups/{dynamicPersonGroupId}/persons",
+ dynamicPersonGroupId: string,
+ ): GetDynamicPersonGroupPersons;
/** Resource for '/persongroups/\{personGroupId\}' has methods for the following verbs: put, delete, get, patch */
(path: "/persongroups/{personGroupId}", personGroupId: string): CreatePersonGroup;
/** Resource for '/persongroups' has methods for the following verbs: get */
@@ -1620,66 +1681,6 @@ export interface Routes {
personId: string,
persistedFaceId: string,
): DeleteLargePersonGroupPersonFace;
- /** Resource for '/persons' has methods for the following verbs: post, get */
- (path: "/persons"): CreatePerson;
- /** Resource for '/persons/\{personId\}' has methods for the following verbs: delete, get, patch */
- (path: "/persons/{personId}", personId: string): DeletePerson;
- /** Resource for '/persons/\{personId\}/dynamicPersonGroupReferences' has methods for the following verbs: get */
- (
- path: "/persons/{personId}/dynamicPersonGroupReferences",
- personId: string,
- ): GetDynamicPersonGroupReferences;
- /** Resource for '/persons/\{personId\}/recognitionModels/\{recognitionModel\}/persistedfaces' has methods for the following verbs: post, get */
- (
- path: "/persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces",
- personId: string,
- recognitionModel: RecognitionModel,
- ): AddPersonFace;
- /** Resource for '/persons/\{personId\}/recognitionModels/\{recognitionModel\}/persistedfaces/\{persistedFaceId\}' has methods for the following verbs: delete, get, patch */
- (
- path: "/persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces/{persistedFaceId}",
- personId: string,
- recognitionModel: RecognitionModel,
- persistedFaceId: string,
- ): DeletePersonFace;
- /** Resource for '/dynamicpersongroups/\{dynamicPersonGroupId\}' has methods for the following verbs: put, delete, get, patch */
- (
- path: "/dynamicpersongroups/{dynamicPersonGroupId}",
- dynamicPersonGroupId: string,
- ): CreateDynamicPersonGroupWithPerson;
- /** Resource for '/dynamicpersongroups' has methods for the following verbs: get */
- (path: "/dynamicpersongroups"): GetDynamicPersonGroups;
- /** Resource for '/dynamicpersongroups/\{dynamicPersonGroupId\}/persons' has methods for the following verbs: get */
- (
- path: "/dynamicpersongroups/{dynamicPersonGroupId}/persons",
- dynamicPersonGroupId: string,
- ): GetDynamicPersonGroupPersons;
- /** Resource for '/detectLiveness/singleModal/sessions' has methods for the following verbs: post, get */
- (path: "/detectLiveness/singleModal/sessions"): CreateLivenessSession;
- /** Resource for '/detectLiveness/singleModal/sessions/\{sessionId\}' has methods for the following verbs: delete, get */
- (
- path: "/detectLiveness/singleModal/sessions/{sessionId}",
- sessionId: string,
- ): DeleteLivenessSession;
- /** Resource for '/detectLiveness/singleModal/sessions/\{sessionId\}/audit' has methods for the following verbs: get */
- (
- path: "/detectLiveness/singleModal/sessions/{sessionId}/audit",
- sessionId: string,
- ): GetLivenessSessionAuditEntries;
- /** Resource for '/detectLivenessWithVerify/singleModal/sessions' has methods for the following verbs: post, get */
- (
- path: "/detectLivenessWithVerify/singleModal/sessions",
- ): CreateLivenessWithVerifySessionWithVerifyImage;
- /** Resource for '/detectLivenessWithVerify/singleModal/sessions/\{sessionId\}' has methods for the following verbs: delete, get */
- (
- path: "/detectLivenessWithVerify/singleModal/sessions/{sessionId}",
- sessionId: string,
- ): DeleteLivenessWithVerifySession;
- /** Resource for '/detectLivenessWithVerify/singleModal/sessions/\{sessionId\}/audit' has methods for the following verbs: get */
- (
- path: "/detectLivenessWithVerify/singleModal/sessions/{sessionId}/audit",
- sessionId: string,
- ): GetLivenessWithVerifySessionAuditEntries;
}
export type FaceClient = Client & {
diff --git a/sdk/face/ai-vision-face-rest/src/faceClient.ts b/sdk/face/ai-vision-face-rest/src/faceClient.ts
index 442bef3da5d8..7e85506c4c56 100644
--- a/sdk/face/ai-vision-face-rest/src/faceClient.ts
+++ b/sdk/face/ai-vision-face-rest/src/faceClient.ts
@@ -53,7 +53,12 @@ export default function createClient(
name: "VerifyImageFilenamePolicy",
sendRequest: (request, next) => {
for (const part of request.multipartBody?.parts ?? []) {
- if (part.headers.get("content-disposition")?.includes(`name="VerifyImage"`)) {
+ const contentDisposition = part.headers.get("content-disposition");
+ if (
+ contentDisposition &&
+ contentDisposition.includes(`name="VerifyImage"`) &&
+ !contentDisposition.includes("filename=")
+ ) {
part.headers.set("content-disposition", `form-data; name="VerifyImage"; filename="blob"`);
}
}
diff --git a/sdk/face/ai-vision-face-rest/src/isUnexpected.ts b/sdk/face/ai-vision-face-rest/src/isUnexpected.ts
index 1073be23f009..9394448cd5dc 100644
--- a/sdk/face/ai-vision-face-rest/src/isUnexpected.ts
+++ b/sdk/face/ai-vision-face-rest/src/isUnexpected.ts
@@ -32,6 +32,28 @@ import {
VerifyFromPersonDirectoryDefaultResponse,
Group200Response,
GroupDefaultResponse,
+ CreateLivenessSession200Response,
+ CreateLivenessSessionDefaultResponse,
+ GetLivenessSessions200Response,
+ GetLivenessSessionsDefaultResponse,
+ DeleteLivenessSession200Response,
+ DeleteLivenessSessionDefaultResponse,
+ GetLivenessSessionResult200Response,
+ GetLivenessSessionResultDefaultResponse,
+ GetLivenessSessionAuditEntries200Response,
+ GetLivenessSessionAuditEntriesDefaultResponse,
+ CreateLivenessWithVerifySessionWithVerifyImage200Response,
+ CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse,
+ CreateLivenessWithVerifySession200Response,
+ CreateLivenessWithVerifySessionDefaultResponse,
+ GetLivenessWithVerifySessions200Response,
+ GetLivenessWithVerifySessionsDefaultResponse,
+ DeleteLivenessWithVerifySession200Response,
+ DeleteLivenessWithVerifySessionDefaultResponse,
+ GetLivenessWithVerifySessionResult200Response,
+ GetLivenessWithVerifySessionResultDefaultResponse,
+ GetLivenessWithVerifySessionAuditEntries200Response,
+ GetLivenessWithVerifySessionAuditEntriesDefaultResponse,
CreateFaceList200Response,
CreateFaceListDefaultResponse,
DeleteFaceList200Response,
@@ -75,6 +97,54 @@ import {
GetLargeFaceListFaceDefaultResponse,
UpdateLargeFaceListFace200Response,
UpdateLargeFaceListFaceDefaultResponse,
+ CreatePerson202Response,
+ CreatePersonLogicalResponse,
+ CreatePersonDefaultResponse,
+ GetPersons200Response,
+ GetPersonsDefaultResponse,
+ DeletePerson202Response,
+ DeletePersonLogicalResponse,
+ DeletePersonDefaultResponse,
+ GetPerson200Response,
+ GetPersonDefaultResponse,
+ UpdatePerson200Response,
+ UpdatePersonDefaultResponse,
+ GetDynamicPersonGroupReferences200Response,
+ GetDynamicPersonGroupReferencesDefaultResponse,
+ AddPersonFace202Response,
+ AddPersonFaceLogicalResponse,
+ AddPersonFaceDefaultResponse,
+ AddPersonFaceFromUrl202Response,
+ AddPersonFaceFromUrlLogicalResponse,
+ AddPersonFaceFromUrlDefaultResponse,
+ GetPersonFaces200Response,
+ GetPersonFacesDefaultResponse,
+ DeletePersonFace202Response,
+ DeletePersonFaceLogicalResponse,
+ DeletePersonFaceDefaultResponse,
+ GetPersonFace200Response,
+ GetPersonFaceDefaultResponse,
+ UpdatePersonFace200Response,
+ UpdatePersonFaceDefaultResponse,
+ CreateDynamicPersonGroupWithPerson202Response,
+ CreateDynamicPersonGroupWithPersonLogicalResponse,
+ CreateDynamicPersonGroupWithPersonDefaultResponse,
+ CreateDynamicPersonGroup200Response,
+ CreateDynamicPersonGroupDefaultResponse,
+ DeleteDynamicPersonGroup202Response,
+ DeleteDynamicPersonGroupLogicalResponse,
+ DeleteDynamicPersonGroupDefaultResponse,
+ GetDynamicPersonGroup200Response,
+ GetDynamicPersonGroupDefaultResponse,
+ UpdateDynamicPersonGroupWithPersonChanges202Response,
+ UpdateDynamicPersonGroupWithPersonChangesLogicalResponse,
+ UpdateDynamicPersonGroupWithPersonChangesDefaultResponse,
+ UpdateDynamicPersonGroup200Response,
+ UpdateDynamicPersonGroupDefaultResponse,
+ GetDynamicPersonGroups200Response,
+ GetDynamicPersonGroupsDefaultResponse,
+ GetDynamicPersonGroupPersons200Response,
+ GetDynamicPersonGroupPersonsDefaultResponse,
CreatePersonGroup200Response,
CreatePersonGroupDefaultResponse,
DeletePersonGroup200Response,
@@ -145,76 +215,6 @@ import {
GetLargePersonGroupPersonFaceDefaultResponse,
UpdateLargePersonGroupPersonFace200Response,
UpdateLargePersonGroupPersonFaceDefaultResponse,
- CreatePerson202Response,
- CreatePersonLogicalResponse,
- CreatePersonDefaultResponse,
- GetPersons200Response,
- GetPersonsDefaultResponse,
- DeletePerson202Response,
- DeletePersonLogicalResponse,
- DeletePersonDefaultResponse,
- GetPerson200Response,
- GetPersonDefaultResponse,
- UpdatePerson200Response,
- UpdatePersonDefaultResponse,
- GetDynamicPersonGroupReferences200Response,
- GetDynamicPersonGroupReferencesDefaultResponse,
- AddPersonFace202Response,
- AddPersonFaceLogicalResponse,
- AddPersonFaceDefaultResponse,
- AddPersonFaceFromUrl202Response,
- AddPersonFaceFromUrlLogicalResponse,
- AddPersonFaceFromUrlDefaultResponse,
- GetPersonFaces200Response,
- GetPersonFacesDefaultResponse,
- DeletePersonFace202Response,
- DeletePersonFaceLogicalResponse,
- DeletePersonFaceDefaultResponse,
- GetPersonFace200Response,
- GetPersonFaceDefaultResponse,
- UpdatePersonFace200Response,
- UpdatePersonFaceDefaultResponse,
- CreateDynamicPersonGroupWithPerson202Response,
- CreateDynamicPersonGroupWithPersonLogicalResponse,
- CreateDynamicPersonGroupWithPersonDefaultResponse,
- CreateDynamicPersonGroup200Response,
- CreateDynamicPersonGroupDefaultResponse,
- DeleteDynamicPersonGroup202Response,
- DeleteDynamicPersonGroupLogicalResponse,
- DeleteDynamicPersonGroupDefaultResponse,
- GetDynamicPersonGroup200Response,
- GetDynamicPersonGroupDefaultResponse,
- UpdateDynamicPersonGroupWithPersonChanges202Response,
- UpdateDynamicPersonGroupWithPersonChangesLogicalResponse,
- UpdateDynamicPersonGroupWithPersonChangesDefaultResponse,
- UpdateDynamicPersonGroup200Response,
- UpdateDynamicPersonGroupDefaultResponse,
- GetDynamicPersonGroups200Response,
- GetDynamicPersonGroupsDefaultResponse,
- GetDynamicPersonGroupPersons200Response,
- GetDynamicPersonGroupPersonsDefaultResponse,
- CreateLivenessSession200Response,
- CreateLivenessSessionDefaultResponse,
- GetLivenessSessions200Response,
- GetLivenessSessionsDefaultResponse,
- DeleteLivenessSession200Response,
- DeleteLivenessSessionDefaultResponse,
- GetLivenessSessionResult200Response,
- GetLivenessSessionResultDefaultResponse,
- GetLivenessSessionAuditEntries200Response,
- GetLivenessSessionAuditEntriesDefaultResponse,
- CreateLivenessWithVerifySessionWithVerifyImage200Response,
- CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse,
- CreateLivenessWithVerifySession200Response,
- CreateLivenessWithVerifySessionDefaultResponse,
- GetLivenessWithVerifySessions200Response,
- GetLivenessWithVerifySessionsDefaultResponse,
- DeleteLivenessWithVerifySession200Response,
- DeleteLivenessWithVerifySessionDefaultResponse,
- GetLivenessWithVerifySessionResult200Response,
- GetLivenessWithVerifySessionResultDefaultResponse,
- GetLivenessWithVerifySessionAuditEntries200Response,
- GetLivenessWithVerifySessionAuditEntriesDefaultResponse,
} from "./responses.js";
const responseMap: Record = {
@@ -224,6 +224,16 @@ const responseMap: Record = {
"POST /identify": ["200"],
"POST /verify": ["200"],
"POST /group": ["200"],
+ "POST /detectLiveness/singleModal/sessions": ["200"],
+ "GET /detectLiveness/singleModal/sessions": ["200"],
+ "DELETE /detectLiveness/singleModal/sessions/{sessionId}": ["200"],
+ "GET /detectLiveness/singleModal/sessions/{sessionId}": ["200"],
+ "GET /detectLiveness/singleModal/sessions/{sessionId}/audit": ["200"],
+ "POST /detectLivenessWithVerify/singleModal/sessions": ["200"],
+ "GET /detectLivenessWithVerify/singleModal/sessions": ["200"],
+ "DELETE /detectLivenessWithVerify/singleModal/sessions/{sessionId}": ["200"],
+ "GET /detectLivenessWithVerify/singleModal/sessions/{sessionId}": ["200"],
+ "GET /detectLivenessWithVerify/singleModal/sessions/{sessionId}/audit": ["200"],
"PUT /facelists/{faceListId}": ["200"],
"DELETE /facelists/{faceListId}": ["200"],
"GET /facelists/{faceListId}": ["200"],
@@ -244,6 +254,27 @@ const responseMap: Record = {
"DELETE /largefacelists/{largeFaceListId}/persistedfaces/{persistedFaceId}": ["200"],
"GET /largefacelists/{largeFaceListId}/persistedfaces/{persistedFaceId}": ["200"],
"PATCH /largefacelists/{largeFaceListId}/persistedfaces/{persistedFaceId}": ["200"],
+ "GET /persons": ["200"],
+ "POST /persons": ["202"],
+ "GET /persons/{personId}": ["200"],
+ "DELETE /persons/{personId}": ["202"],
+ "PATCH /persons/{personId}": ["200"],
+ "GET /persons/{personId}/dynamicPersonGroupReferences": ["200"],
+ "GET /persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces": ["200"],
+ "POST /persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces": ["202"],
+ "GET /persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces/{persistedFaceId}": [
+ "200",
+ ],
+ "DELETE /persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces/{persistedFaceId}":
+ ["202"],
+ "PATCH /persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces/{persistedFaceId}":
+ ["200"],
+ "GET /dynamicpersongroups/{dynamicPersonGroupId}": ["200"],
+ "PUT /dynamicpersongroups/{dynamicPersonGroupId}": ["202", "200"],
+ "DELETE /dynamicpersongroups/{dynamicPersonGroupId}": ["202"],
+ "PATCH /dynamicpersongroups/{dynamicPersonGroupId}": ["202", "200"],
+ "GET /dynamicpersongroups": ["200"],
+ "GET /dynamicpersongroups/{dynamicPersonGroupId}/persons": ["200"],
"PUT /persongroups/{personGroupId}": ["200"],
"DELETE /persongroups/{personGroupId}": ["200"],
"GET /persongroups/{personGroupId}": ["200"],
@@ -285,37 +316,6 @@ const responseMap: Record = {
["200"],
"PATCH /largepersongroups/{largePersonGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}":
["200"],
- "GET /persons": ["200"],
- "POST /persons": ["202"],
- "GET /persons/{personId}": ["200"],
- "DELETE /persons/{personId}": ["202"],
- "PATCH /persons/{personId}": ["200"],
- "GET /persons/{personId}/dynamicPersonGroupReferences": ["200"],
- "GET /persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces": ["200"],
- "POST /persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces": ["202"],
- "GET /persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces/{persistedFaceId}": [
- "200",
- ],
- "DELETE /persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces/{persistedFaceId}":
- ["202"],
- "PATCH /persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces/{persistedFaceId}":
- ["200"],
- "GET /dynamicpersongroups/{dynamicPersonGroupId}": ["200"],
- "PUT /dynamicpersongroups/{dynamicPersonGroupId}": ["202", "200"],
- "DELETE /dynamicpersongroups/{dynamicPersonGroupId}": ["202"],
- "PATCH /dynamicpersongroups/{dynamicPersonGroupId}": ["202", "200"],
- "GET /dynamicpersongroups": ["200"],
- "GET /dynamicpersongroups/{dynamicPersonGroupId}/persons": ["200"],
- "POST /detectLiveness/singleModal/sessions": ["200"],
- "GET /detectLiveness/singleModal/sessions": ["200"],
- "DELETE /detectLiveness/singleModal/sessions/{sessionId}": ["200"],
- "GET /detectLiveness/singleModal/sessions/{sessionId}": ["200"],
- "GET /detectLiveness/singleModal/sessions/{sessionId}/audit": ["200"],
- "POST /detectLivenessWithVerify/singleModal/sessions": ["200"],
- "GET /detectLivenessWithVerify/singleModal/sessions": ["200"],
- "DELETE /detectLivenessWithVerify/singleModal/sessions/{sessionId}": ["200"],
- "GET /detectLivenessWithVerify/singleModal/sessions/{sessionId}": ["200"],
- "GET /detectLivenessWithVerify/singleModal/sessions/{sessionId}/audit": ["200"],
};
export function isUnexpected(
@@ -365,6 +365,51 @@ export function isUnexpected(
export function isUnexpected(
response: Group200Response | GroupDefaultResponse,
): response is GroupDefaultResponse;
+export function isUnexpected(
+ response: CreateLivenessSession200Response | CreateLivenessSessionDefaultResponse,
+): response is CreateLivenessSessionDefaultResponse;
+export function isUnexpected(
+ response: GetLivenessSessions200Response | GetLivenessSessionsDefaultResponse,
+): response is GetLivenessSessionsDefaultResponse;
+export function isUnexpected(
+ response: DeleteLivenessSession200Response | DeleteLivenessSessionDefaultResponse,
+): response is DeleteLivenessSessionDefaultResponse;
+export function isUnexpected(
+ response: GetLivenessSessionResult200Response | GetLivenessSessionResultDefaultResponse,
+): response is GetLivenessSessionResultDefaultResponse;
+export function isUnexpected(
+ response:
+ | GetLivenessSessionAuditEntries200Response
+ | GetLivenessSessionAuditEntriesDefaultResponse,
+): response is GetLivenessSessionAuditEntriesDefaultResponse;
+export function isUnexpected(
+ response:
+ | CreateLivenessWithVerifySessionWithVerifyImage200Response
+ | CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse,
+): response is CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse;
+export function isUnexpected(
+ response:
+ | CreateLivenessWithVerifySession200Response
+ | CreateLivenessWithVerifySessionDefaultResponse,
+): response is CreateLivenessWithVerifySessionDefaultResponse;
+export function isUnexpected(
+ response: GetLivenessWithVerifySessions200Response | GetLivenessWithVerifySessionsDefaultResponse,
+): response is GetLivenessWithVerifySessionsDefaultResponse;
+export function isUnexpected(
+ response:
+ | DeleteLivenessWithVerifySession200Response
+ | DeleteLivenessWithVerifySessionDefaultResponse,
+): response is DeleteLivenessWithVerifySessionDefaultResponse;
+export function isUnexpected(
+ response:
+ | GetLivenessWithVerifySessionResult200Response
+ | GetLivenessWithVerifySessionResultDefaultResponse,
+): response is GetLivenessWithVerifySessionResultDefaultResponse;
+export function isUnexpected(
+ response:
+ | GetLivenessWithVerifySessionAuditEntries200Response
+ | GetLivenessWithVerifySessionAuditEntriesDefaultResponse,
+): response is GetLivenessWithVerifySessionAuditEntriesDefaultResponse;
export function isUnexpected(
response: CreateFaceList200Response | CreateFaceListDefaultResponse,
): response is CreateFaceListDefaultResponse;
@@ -434,13 +479,90 @@ export function isUnexpected(
response: UpdateLargeFaceListFace200Response | UpdateLargeFaceListFaceDefaultResponse,
): response is UpdateLargeFaceListFaceDefaultResponse;
export function isUnexpected(
- response: CreatePersonGroup200Response | CreatePersonGroupDefaultResponse,
-): response is CreatePersonGroupDefaultResponse;
+ response: CreatePerson202Response | CreatePersonLogicalResponse | CreatePersonDefaultResponse,
+): response is CreatePersonDefaultResponse;
export function isUnexpected(
- response: DeletePersonGroup200Response | DeletePersonGroupDefaultResponse,
-): response is DeletePersonGroupDefaultResponse;
+ response: GetPersons200Response | GetPersonsDefaultResponse,
+): response is GetPersonsDefaultResponse;
export function isUnexpected(
- response: GetPersonGroup200Response | GetPersonGroupDefaultResponse,
+ response: DeletePerson202Response | DeletePersonLogicalResponse | DeletePersonDefaultResponse,
+): response is DeletePersonDefaultResponse;
+export function isUnexpected(
+ response: GetPerson200Response | GetPersonDefaultResponse,
+): response is GetPersonDefaultResponse;
+export function isUnexpected(
+ response: UpdatePerson200Response | UpdatePersonDefaultResponse,
+): response is UpdatePersonDefaultResponse;
+export function isUnexpected(
+ response:
+ | GetDynamicPersonGroupReferences200Response
+ | GetDynamicPersonGroupReferencesDefaultResponse,
+): response is GetDynamicPersonGroupReferencesDefaultResponse;
+export function isUnexpected(
+ response: AddPersonFace202Response | AddPersonFaceLogicalResponse | AddPersonFaceDefaultResponse,
+): response is AddPersonFaceDefaultResponse;
+export function isUnexpected(
+ response:
+ | AddPersonFaceFromUrl202Response
+ | AddPersonFaceFromUrlLogicalResponse
+ | AddPersonFaceFromUrlDefaultResponse,
+): response is AddPersonFaceFromUrlDefaultResponse;
+export function isUnexpected(
+ response: GetPersonFaces200Response | GetPersonFacesDefaultResponse,
+): response is GetPersonFacesDefaultResponse;
+export function isUnexpected(
+ response:
+ | DeletePersonFace202Response
+ | DeletePersonFaceLogicalResponse
+ | DeletePersonFaceDefaultResponse,
+): response is DeletePersonFaceDefaultResponse;
+export function isUnexpected(
+ response: GetPersonFace200Response | GetPersonFaceDefaultResponse,
+): response is GetPersonFaceDefaultResponse;
+export function isUnexpected(
+ response: UpdatePersonFace200Response | UpdatePersonFaceDefaultResponse,
+): response is UpdatePersonFaceDefaultResponse;
+export function isUnexpected(
+ response:
+ | CreateDynamicPersonGroupWithPerson202Response
+ | CreateDynamicPersonGroupWithPersonLogicalResponse
+ | CreateDynamicPersonGroupWithPersonDefaultResponse,
+): response is CreateDynamicPersonGroupWithPersonDefaultResponse;
+export function isUnexpected(
+ response: CreateDynamicPersonGroup200Response | CreateDynamicPersonGroupDefaultResponse,
+): response is CreateDynamicPersonGroupDefaultResponse;
+export function isUnexpected(
+ response:
+ | DeleteDynamicPersonGroup202Response
+ | DeleteDynamicPersonGroupLogicalResponse
+ | DeleteDynamicPersonGroupDefaultResponse,
+): response is DeleteDynamicPersonGroupDefaultResponse;
+export function isUnexpected(
+ response: GetDynamicPersonGroup200Response | GetDynamicPersonGroupDefaultResponse,
+): response is GetDynamicPersonGroupDefaultResponse;
+export function isUnexpected(
+ response:
+ | UpdateDynamicPersonGroupWithPersonChanges202Response
+ | UpdateDynamicPersonGroupWithPersonChangesLogicalResponse
+ | UpdateDynamicPersonGroupWithPersonChangesDefaultResponse,
+): response is UpdateDynamicPersonGroupWithPersonChangesDefaultResponse;
+export function isUnexpected(
+ response: UpdateDynamicPersonGroup200Response | UpdateDynamicPersonGroupDefaultResponse,
+): response is UpdateDynamicPersonGroupDefaultResponse;
+export function isUnexpected(
+ response: GetDynamicPersonGroups200Response | GetDynamicPersonGroupsDefaultResponse,
+): response is GetDynamicPersonGroupsDefaultResponse;
+export function isUnexpected(
+ response: GetDynamicPersonGroupPersons200Response | GetDynamicPersonGroupPersonsDefaultResponse,
+): response is GetDynamicPersonGroupPersonsDefaultResponse;
+export function isUnexpected(
+ response: CreatePersonGroup200Response | CreatePersonGroupDefaultResponse,
+): response is CreatePersonGroupDefaultResponse;
+export function isUnexpected(
+ response: DeletePersonGroup200Response | DeletePersonGroupDefaultResponse,
+): response is DeletePersonGroupDefaultResponse;
+export function isUnexpected(
+ response: GetPersonGroup200Response | GetPersonGroupDefaultResponse,
): response is GetPersonGroupDefaultResponse;
export function isUnexpected(
response: UpdatePersonGroup200Response | UpdatePersonGroupDefaultResponse,
@@ -551,128 +673,6 @@ export function isUnexpected(
| UpdateLargePersonGroupPersonFace200Response
| UpdateLargePersonGroupPersonFaceDefaultResponse,
): response is UpdateLargePersonGroupPersonFaceDefaultResponse;
-export function isUnexpected(
- response: CreatePerson202Response | CreatePersonLogicalResponse | CreatePersonDefaultResponse,
-): response is CreatePersonDefaultResponse;
-export function isUnexpected(
- response: GetPersons200Response | GetPersonsDefaultResponse,
-): response is GetPersonsDefaultResponse;
-export function isUnexpected(
- response: DeletePerson202Response | DeletePersonLogicalResponse | DeletePersonDefaultResponse,
-): response is DeletePersonDefaultResponse;
-export function isUnexpected(
- response: GetPerson200Response | GetPersonDefaultResponse,
-): response is GetPersonDefaultResponse;
-export function isUnexpected(
- response: UpdatePerson200Response | UpdatePersonDefaultResponse,
-): response is UpdatePersonDefaultResponse;
-export function isUnexpected(
- response:
- | GetDynamicPersonGroupReferences200Response
- | GetDynamicPersonGroupReferencesDefaultResponse,
-): response is GetDynamicPersonGroupReferencesDefaultResponse;
-export function isUnexpected(
- response: AddPersonFace202Response | AddPersonFaceLogicalResponse | AddPersonFaceDefaultResponse,
-): response is AddPersonFaceDefaultResponse;
-export function isUnexpected(
- response:
- | AddPersonFaceFromUrl202Response
- | AddPersonFaceFromUrlLogicalResponse
- | AddPersonFaceFromUrlDefaultResponse,
-): response is AddPersonFaceFromUrlDefaultResponse;
-export function isUnexpected(
- response: GetPersonFaces200Response | GetPersonFacesDefaultResponse,
-): response is GetPersonFacesDefaultResponse;
-export function isUnexpected(
- response:
- | DeletePersonFace202Response
- | DeletePersonFaceLogicalResponse
- | DeletePersonFaceDefaultResponse,
-): response is DeletePersonFaceDefaultResponse;
-export function isUnexpected(
- response: GetPersonFace200Response | GetPersonFaceDefaultResponse,
-): response is GetPersonFaceDefaultResponse;
-export function isUnexpected(
- response: UpdatePersonFace200Response | UpdatePersonFaceDefaultResponse,
-): response is UpdatePersonFaceDefaultResponse;
-export function isUnexpected(
- response:
- | CreateDynamicPersonGroupWithPerson202Response
- | CreateDynamicPersonGroupWithPersonLogicalResponse
- | CreateDynamicPersonGroupWithPersonDefaultResponse,
-): response is CreateDynamicPersonGroupWithPersonDefaultResponse;
-export function isUnexpected(
- response: CreateDynamicPersonGroup200Response | CreateDynamicPersonGroupDefaultResponse,
-): response is CreateDynamicPersonGroupDefaultResponse;
-export function isUnexpected(
- response:
- | DeleteDynamicPersonGroup202Response
- | DeleteDynamicPersonGroupLogicalResponse
- | DeleteDynamicPersonGroupDefaultResponse,
-): response is DeleteDynamicPersonGroupDefaultResponse;
-export function isUnexpected(
- response: GetDynamicPersonGroup200Response | GetDynamicPersonGroupDefaultResponse,
-): response is GetDynamicPersonGroupDefaultResponse;
-export function isUnexpected(
- response:
- | UpdateDynamicPersonGroupWithPersonChanges202Response
- | UpdateDynamicPersonGroupWithPersonChangesLogicalResponse
- | UpdateDynamicPersonGroupWithPersonChangesDefaultResponse,
-): response is UpdateDynamicPersonGroupWithPersonChangesDefaultResponse;
-export function isUnexpected(
- response: UpdateDynamicPersonGroup200Response | UpdateDynamicPersonGroupDefaultResponse,
-): response is UpdateDynamicPersonGroupDefaultResponse;
-export function isUnexpected(
- response: GetDynamicPersonGroups200Response | GetDynamicPersonGroupsDefaultResponse,
-): response is GetDynamicPersonGroupsDefaultResponse;
-export function isUnexpected(
- response: GetDynamicPersonGroupPersons200Response | GetDynamicPersonGroupPersonsDefaultResponse,
-): response is GetDynamicPersonGroupPersonsDefaultResponse;
-export function isUnexpected(
- response: CreateLivenessSession200Response | CreateLivenessSessionDefaultResponse,
-): response is CreateLivenessSessionDefaultResponse;
-export function isUnexpected(
- response: GetLivenessSessions200Response | GetLivenessSessionsDefaultResponse,
-): response is GetLivenessSessionsDefaultResponse;
-export function isUnexpected(
- response: DeleteLivenessSession200Response | DeleteLivenessSessionDefaultResponse,
-): response is DeleteLivenessSessionDefaultResponse;
-export function isUnexpected(
- response: GetLivenessSessionResult200Response | GetLivenessSessionResultDefaultResponse,
-): response is GetLivenessSessionResultDefaultResponse;
-export function isUnexpected(
- response:
- | GetLivenessSessionAuditEntries200Response
- | GetLivenessSessionAuditEntriesDefaultResponse,
-): response is GetLivenessSessionAuditEntriesDefaultResponse;
-export function isUnexpected(
- response:
- | CreateLivenessWithVerifySessionWithVerifyImage200Response
- | CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse,
-): response is CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse;
-export function isUnexpected(
- response:
- | CreateLivenessWithVerifySession200Response
- | CreateLivenessWithVerifySessionDefaultResponse,
-): response is CreateLivenessWithVerifySessionDefaultResponse;
-export function isUnexpected(
- response: GetLivenessWithVerifySessions200Response | GetLivenessWithVerifySessionsDefaultResponse,
-): response is GetLivenessWithVerifySessionsDefaultResponse;
-export function isUnexpected(
- response:
- | DeleteLivenessWithVerifySession200Response
- | DeleteLivenessWithVerifySessionDefaultResponse,
-): response is DeleteLivenessWithVerifySessionDefaultResponse;
-export function isUnexpected(
- response:
- | GetLivenessWithVerifySessionResult200Response
- | GetLivenessWithVerifySessionResultDefaultResponse,
-): response is GetLivenessWithVerifySessionResultDefaultResponse;
-export function isUnexpected(
- response:
- | GetLivenessWithVerifySessionAuditEntries200Response
- | GetLivenessWithVerifySessionAuditEntriesDefaultResponse,
-): response is GetLivenessWithVerifySessionAuditEntriesDefaultResponse;
export function isUnexpected(
response:
| GetOperationResult200Response
@@ -705,6 +705,28 @@ export function isUnexpected(
| VerifyFromPersonDirectoryDefaultResponse
| Group200Response
| GroupDefaultResponse
+ | CreateLivenessSession200Response
+ | CreateLivenessSessionDefaultResponse
+ | GetLivenessSessions200Response
+ | GetLivenessSessionsDefaultResponse
+ | DeleteLivenessSession200Response
+ | DeleteLivenessSessionDefaultResponse
+ | GetLivenessSessionResult200Response
+ | GetLivenessSessionResultDefaultResponse
+ | GetLivenessSessionAuditEntries200Response
+ | GetLivenessSessionAuditEntriesDefaultResponse
+ | CreateLivenessWithVerifySessionWithVerifyImage200Response
+ | CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse
+ | CreateLivenessWithVerifySession200Response
+ | CreateLivenessWithVerifySessionDefaultResponse
+ | GetLivenessWithVerifySessions200Response
+ | GetLivenessWithVerifySessionsDefaultResponse
+ | DeleteLivenessWithVerifySession200Response
+ | DeleteLivenessWithVerifySessionDefaultResponse
+ | GetLivenessWithVerifySessionResult200Response
+ | GetLivenessWithVerifySessionResultDefaultResponse
+ | GetLivenessWithVerifySessionAuditEntries200Response
+ | GetLivenessWithVerifySessionAuditEntriesDefaultResponse
| CreateFaceList200Response
| CreateFaceListDefaultResponse
| DeleteFaceList200Response
@@ -748,6 +770,54 @@ export function isUnexpected(
| GetLargeFaceListFaceDefaultResponse
| UpdateLargeFaceListFace200Response
| UpdateLargeFaceListFaceDefaultResponse
+ | CreatePerson202Response
+ | CreatePersonLogicalResponse
+ | CreatePersonDefaultResponse
+ | GetPersons200Response
+ | GetPersonsDefaultResponse
+ | DeletePerson202Response
+ | DeletePersonLogicalResponse
+ | DeletePersonDefaultResponse
+ | GetPerson200Response
+ | GetPersonDefaultResponse
+ | UpdatePerson200Response
+ | UpdatePersonDefaultResponse
+ | GetDynamicPersonGroupReferences200Response
+ | GetDynamicPersonGroupReferencesDefaultResponse
+ | AddPersonFace202Response
+ | AddPersonFaceLogicalResponse
+ | AddPersonFaceDefaultResponse
+ | AddPersonFaceFromUrl202Response
+ | AddPersonFaceFromUrlLogicalResponse
+ | AddPersonFaceFromUrlDefaultResponse
+ | GetPersonFaces200Response
+ | GetPersonFacesDefaultResponse
+ | DeletePersonFace202Response
+ | DeletePersonFaceLogicalResponse
+ | DeletePersonFaceDefaultResponse
+ | GetPersonFace200Response
+ | GetPersonFaceDefaultResponse
+ | UpdatePersonFace200Response
+ | UpdatePersonFaceDefaultResponse
+ | CreateDynamicPersonGroupWithPerson202Response
+ | CreateDynamicPersonGroupWithPersonLogicalResponse
+ | CreateDynamicPersonGroupWithPersonDefaultResponse
+ | CreateDynamicPersonGroup200Response
+ | CreateDynamicPersonGroupDefaultResponse
+ | DeleteDynamicPersonGroup202Response
+ | DeleteDynamicPersonGroupLogicalResponse
+ | DeleteDynamicPersonGroupDefaultResponse
+ | GetDynamicPersonGroup200Response
+ | GetDynamicPersonGroupDefaultResponse
+ | UpdateDynamicPersonGroupWithPersonChanges202Response
+ | UpdateDynamicPersonGroupWithPersonChangesLogicalResponse
+ | UpdateDynamicPersonGroupWithPersonChangesDefaultResponse
+ | UpdateDynamicPersonGroup200Response
+ | UpdateDynamicPersonGroupDefaultResponse
+ | GetDynamicPersonGroups200Response
+ | GetDynamicPersonGroupsDefaultResponse
+ | GetDynamicPersonGroupPersons200Response
+ | GetDynamicPersonGroupPersonsDefaultResponse
| CreatePersonGroup200Response
| CreatePersonGroupDefaultResponse
| DeletePersonGroup200Response
@@ -817,77 +887,7 @@ export function isUnexpected(
| GetLargePersonGroupPersonFace200Response
| GetLargePersonGroupPersonFaceDefaultResponse
| UpdateLargePersonGroupPersonFace200Response
- | UpdateLargePersonGroupPersonFaceDefaultResponse
- | CreatePerson202Response
- | CreatePersonLogicalResponse
- | CreatePersonDefaultResponse
- | GetPersons200Response
- | GetPersonsDefaultResponse
- | DeletePerson202Response
- | DeletePersonLogicalResponse
- | DeletePersonDefaultResponse
- | GetPerson200Response
- | GetPersonDefaultResponse
- | UpdatePerson200Response
- | UpdatePersonDefaultResponse
- | GetDynamicPersonGroupReferences200Response
- | GetDynamicPersonGroupReferencesDefaultResponse
- | AddPersonFace202Response
- | AddPersonFaceLogicalResponse
- | AddPersonFaceDefaultResponse
- | AddPersonFaceFromUrl202Response
- | AddPersonFaceFromUrlLogicalResponse
- | AddPersonFaceFromUrlDefaultResponse
- | GetPersonFaces200Response
- | GetPersonFacesDefaultResponse
- | DeletePersonFace202Response
- | DeletePersonFaceLogicalResponse
- | DeletePersonFaceDefaultResponse
- | GetPersonFace200Response
- | GetPersonFaceDefaultResponse
- | UpdatePersonFace200Response
- | UpdatePersonFaceDefaultResponse
- | CreateDynamicPersonGroupWithPerson202Response
- | CreateDynamicPersonGroupWithPersonLogicalResponse
- | CreateDynamicPersonGroupWithPersonDefaultResponse
- | CreateDynamicPersonGroup200Response
- | CreateDynamicPersonGroupDefaultResponse
- | DeleteDynamicPersonGroup202Response
- | DeleteDynamicPersonGroupLogicalResponse
- | DeleteDynamicPersonGroupDefaultResponse
- | GetDynamicPersonGroup200Response
- | GetDynamicPersonGroupDefaultResponse
- | UpdateDynamicPersonGroupWithPersonChanges202Response
- | UpdateDynamicPersonGroupWithPersonChangesLogicalResponse
- | UpdateDynamicPersonGroupWithPersonChangesDefaultResponse
- | UpdateDynamicPersonGroup200Response
- | UpdateDynamicPersonGroupDefaultResponse
- | GetDynamicPersonGroups200Response
- | GetDynamicPersonGroupsDefaultResponse
- | GetDynamicPersonGroupPersons200Response
- | GetDynamicPersonGroupPersonsDefaultResponse
- | CreateLivenessSession200Response
- | CreateLivenessSessionDefaultResponse
- | GetLivenessSessions200Response
- | GetLivenessSessionsDefaultResponse
- | DeleteLivenessSession200Response
- | DeleteLivenessSessionDefaultResponse
- | GetLivenessSessionResult200Response
- | GetLivenessSessionResultDefaultResponse
- | GetLivenessSessionAuditEntries200Response
- | GetLivenessSessionAuditEntriesDefaultResponse
- | CreateLivenessWithVerifySessionWithVerifyImage200Response
- | CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse
- | CreateLivenessWithVerifySession200Response
- | CreateLivenessWithVerifySessionDefaultResponse
- | GetLivenessWithVerifySessions200Response
- | GetLivenessWithVerifySessionsDefaultResponse
- | DeleteLivenessWithVerifySession200Response
- | DeleteLivenessWithVerifySessionDefaultResponse
- | GetLivenessWithVerifySessionResult200Response
- | GetLivenessWithVerifySessionResultDefaultResponse
- | GetLivenessWithVerifySessionAuditEntries200Response
- | GetLivenessWithVerifySessionAuditEntriesDefaultResponse,
+ | UpdateLargePersonGroupPersonFaceDefaultResponse,
): response is
| GetOperationResultDefaultResponse
| DetectFromUrlDefaultResponse
@@ -904,6 +904,17 @@ export function isUnexpected(
| VerifyFromLargePersonGroupDefaultResponse
| VerifyFromPersonDirectoryDefaultResponse
| GroupDefaultResponse
+ | CreateLivenessSessionDefaultResponse
+ | GetLivenessSessionsDefaultResponse
+ | DeleteLivenessSessionDefaultResponse
+ | GetLivenessSessionResultDefaultResponse
+ | GetLivenessSessionAuditEntriesDefaultResponse
+ | CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse
+ | CreateLivenessWithVerifySessionDefaultResponse
+ | GetLivenessWithVerifySessionsDefaultResponse
+ | DeleteLivenessWithVerifySessionDefaultResponse
+ | GetLivenessWithVerifySessionResultDefaultResponse
+ | GetLivenessWithVerifySessionAuditEntriesDefaultResponse
| CreateFaceListDefaultResponse
| DeleteFaceListDefaultResponse
| GetFaceListDefaultResponse
@@ -925,6 +936,26 @@ export function isUnexpected(
| DeleteLargeFaceListFaceDefaultResponse
| GetLargeFaceListFaceDefaultResponse
| UpdateLargeFaceListFaceDefaultResponse
+ | CreatePersonDefaultResponse
+ | GetPersonsDefaultResponse
+ | DeletePersonDefaultResponse
+ | GetPersonDefaultResponse
+ | UpdatePersonDefaultResponse
+ | GetDynamicPersonGroupReferencesDefaultResponse
+ | AddPersonFaceDefaultResponse
+ | AddPersonFaceFromUrlDefaultResponse
+ | GetPersonFacesDefaultResponse
+ | DeletePersonFaceDefaultResponse
+ | GetPersonFaceDefaultResponse
+ | UpdatePersonFaceDefaultResponse
+ | CreateDynamicPersonGroupWithPersonDefaultResponse
+ | CreateDynamicPersonGroupDefaultResponse
+ | DeleteDynamicPersonGroupDefaultResponse
+ | GetDynamicPersonGroupDefaultResponse
+ | UpdateDynamicPersonGroupWithPersonChangesDefaultResponse
+ | UpdateDynamicPersonGroupDefaultResponse
+ | GetDynamicPersonGroupsDefaultResponse
+ | GetDynamicPersonGroupPersonsDefaultResponse
| CreatePersonGroupDefaultResponse
| DeletePersonGroupDefaultResponse
| GetPersonGroupDefaultResponse
@@ -958,38 +989,7 @@ export function isUnexpected(
| AddLargePersonGroupPersonFaceDefaultResponse
| DeleteLargePersonGroupPersonFaceDefaultResponse
| GetLargePersonGroupPersonFaceDefaultResponse
- | UpdateLargePersonGroupPersonFaceDefaultResponse
- | CreatePersonDefaultResponse
- | GetPersonsDefaultResponse
- | DeletePersonDefaultResponse
- | GetPersonDefaultResponse
- | UpdatePersonDefaultResponse
- | GetDynamicPersonGroupReferencesDefaultResponse
- | AddPersonFaceDefaultResponse
- | AddPersonFaceFromUrlDefaultResponse
- | GetPersonFacesDefaultResponse
- | DeletePersonFaceDefaultResponse
- | GetPersonFaceDefaultResponse
- | UpdatePersonFaceDefaultResponse
- | CreateDynamicPersonGroupWithPersonDefaultResponse
- | CreateDynamicPersonGroupDefaultResponse
- | DeleteDynamicPersonGroupDefaultResponse
- | GetDynamicPersonGroupDefaultResponse
- | UpdateDynamicPersonGroupWithPersonChangesDefaultResponse
- | UpdateDynamicPersonGroupDefaultResponse
- | GetDynamicPersonGroupsDefaultResponse
- | GetDynamicPersonGroupPersonsDefaultResponse
- | CreateLivenessSessionDefaultResponse
- | GetLivenessSessionsDefaultResponse
- | DeleteLivenessSessionDefaultResponse
- | GetLivenessSessionResultDefaultResponse
- | GetLivenessSessionAuditEntriesDefaultResponse
- | CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse
- | CreateLivenessWithVerifySessionDefaultResponse
- | GetLivenessWithVerifySessionsDefaultResponse
- | DeleteLivenessWithVerifySessionDefaultResponse
- | GetLivenessWithVerifySessionResultDefaultResponse
- | GetLivenessWithVerifySessionAuditEntriesDefaultResponse {
+ | UpdateLargePersonGroupPersonFaceDefaultResponse {
const lroOriginal = response.headers["x-ms-original-url"];
const url = new URL(lroOriginal ?? response.request.url);
const method = response.request.method;
diff --git a/sdk/face/ai-vision-face-rest/src/models.ts b/sdk/face/ai-vision-face-rest/src/models.ts
index 167e712457db..1f4d5c010805 100644
--- a/sdk/face/ai-vision-face-rest/src/models.ts
+++ b/sdk/face/ai-vision-face-rest/src/models.ts
@@ -17,7 +17,7 @@ export interface CreateLivenessSessionContent {
export interface CreateLivenessWithVerifySessionContentParametersPartDescriptor {
name: "Parameters";
- body: CreateLivenessSessionContentForMultipart;
+ body: CreateLivenessSessionContent;
}
export interface CreateLivenessWithVerifySessionContentVerifyImagePartDescriptor {
@@ -27,20 +27,6 @@ export interface CreateLivenessWithVerifySessionContentVerifyImagePartDescriptor
contentType?: string;
}
-/** Dedicated parameter model for multipart/form-data. */
-export interface CreateLivenessSessionContentForMultipart {
- /** Type of liveness mode the client should follow. */
- livenessOperationMode: LivenessOperationMode;
- /** Whether or not to allow a '200 - Success' response body to be sent to the client, which may be undesirable for security reasons. Default is false, clients will receive a '204 - NoContent' empty body response. Regardless of selection, calling Session GetResult will always contain a response body enabling business logic to be implemented. */
- sendResultsToClient?: boolean;
- /** Whether or not to allow client to set their own 'deviceCorrelationId' via the Vision SDK. Default is false, and 'deviceCorrelationId' must be set in this request body. */
- deviceCorrelationIdSetInClient?: boolean;
- /** Unique Guid per each end-user device. This is to provide rate limiting and anti-hammering. If 'deviceCorrelationIdSetInClient' is true in this request, this 'deviceCorrelationId' must be null. */
- deviceCorrelationId?: string;
- /** Seconds the session should last for. Range is 60 to 86400 seconds. Default value is 600. */
- authTokenTimeToLiveInSeconds?: number;
-}
-
/** Alias for DetectionModel */
export type DetectionModel = string | "detection_01" | "detection_02" | "detection_03";
/** Alias for RecognitionModel */
@@ -69,7 +55,7 @@ export type FaceAttributeType =
/** Alias for FindSimilarMatchMode */
export type FindSimilarMatchMode = string | "matchPerson" | "matchFace";
/** Alias for LivenessOperationMode */
-export type LivenessOperationMode = string | "Passive";
+export type LivenessOperationMode = string | "Passive" | "PassiveActive";
/** Request of liveness with verify session creation. */
export type CreateLivenessWithVerifySessionContent =
| FormData
diff --git a/sdk/face/ai-vision-face-rest/src/outputModels.ts b/sdk/face/ai-vision-face-rest/src/outputModels.ts
index bd3c943c4f5e..8e73220b7773 100644
--- a/sdk/face/ai-vision-face-rest/src/outputModels.ts
+++ b/sdk/face/ai-vision-face-rest/src/outputModels.ts
@@ -283,198 +283,6 @@ export interface GroupingResultOutput {
messyGroup: string[];
}
-/** Face list is a list of faces, up to 1,000 faces. */
-export interface FaceListOutput {
- /** User defined name, maximum length is 128. */
- name: string;
- /** Optional user defined data. Length should not exceed 16K. */
- userData?: string;
- /** Name of recognition model. Recognition model is used when the face features are extracted and associated with detected faceIds. */
- recognitionModel?: RecognitionModelOutput;
- /** Valid character is letter in lower case or digit or '-' or '_', maximum length is 64. */
- readonly faceListId: string;
- /** Face ids of registered faces in the face list. */
- persistedFaces?: Array;
-}
-
-/** Face resource for face list. */
-export interface FaceListFaceOutput {
- /** Face ID of the face. */
- readonly persistedFaceId: string;
- /** User-provided data attached to the face. The length limit is 1K. */
- userData?: string;
-}
-
-/** Face list item for list face list. */
-export interface FaceListItemOutput {
- /** User defined name, maximum length is 128. */
- name: string;
- /** Optional user defined data. Length should not exceed 16K. */
- userData?: string;
- /** Name of recognition model. Recognition model is used when the face features are extracted and associated with detected faceIds. */
- recognitionModel?: RecognitionModelOutput;
- /** Valid character is letter in lower case or digit or '-' or '_', maximum length is 64. */
- faceListId: string;
-}
-
-/** Response body for adding face. */
-export interface AddFaceResultOutput {
- /** Persisted Face ID of the added face, which is persisted and will not expire. Different from faceId which is created in "Detect" and will expire in 24 hours after the detection call. */
- persistedFaceId: string;
-}
-
-/** Large face list is a list of faces, up to 1,000,000 faces. */
-export interface LargeFaceListOutput {
- /** User defined name, maximum length is 128. */
- name: string;
- /** Optional user defined data. Length should not exceed 16K. */
- userData?: string;
- /** Name of recognition model. Recognition model is used when the face features are extracted and associated with detected faceIds. */
- recognitionModel?: RecognitionModelOutput;
- /** Valid character is letter in lower case or digit or '-' or '_', maximum length is 64. */
- readonly largeFaceListId: string;
-}
-
-/** Training result of a container */
-export interface TrainingResultOutput {
- /** Training status of the container. */
- status: OperationStatusOutput;
- /** A combined UTC date and time string that describes the created time of the person group, large person group or large face list. */
- createdDateTime: string;
- /** A combined UTC date and time string that describes the last modify time of the person group, large person group or large face list, could be null value when the group is not successfully trained. */
- lastActionDateTime: string;
- /** A combined UTC date and time string that describes the last successful training time of the person group, large person group or large face list. */
- lastSuccessfulTrainingDateTime: string;
- /** Show failure message when training failed (omitted when training succeed). */
- message?: string;
-}
-
-/** Face resource for large face list. */
-export interface LargeFaceListFaceOutput {
- /** Face ID of the face. */
- readonly persistedFaceId: string;
- /** User-provided data attached to the face. The length limit is 1K. */
- userData?: string;
-}
-
-/** The container of the uploaded person data, including face recognition feature, and up to 10,000 persons. To handle larger scale face identification problem, please consider using Large Person Group. */
-export interface PersonGroupOutput {
- /** User defined name, maximum length is 128. */
- name: string;
- /** Optional user defined data. Length should not exceed 16K. */
- userData?: string;
- /** Name of recognition model. Recognition model is used when the face features are extracted and associated with detected faceIds. */
- recognitionModel?: RecognitionModelOutput;
- /** ID of the container. */
- readonly personGroupId: string;
-}
-
-/** Response of create person. */
-export interface CreatePersonResultOutput {
- /** Person ID of the person. */
- personId: string;
-}
-
-/** The person in a specified person group. To add face to this person, please call "Add Large Person Group Person Face". */
-export interface PersonGroupPersonOutput {
- /** ID of the person. */
- readonly personId: string;
- /** User defined name, maximum length is 128. */
- name: string;
- /** Optional user defined data. Length should not exceed 16K. */
- userData?: string;
- /** Face ids of registered faces in the person. */
- persistedFaceIds?: string[];
-}
-
-/** Face resource for person group person. */
-export interface PersonGroupPersonFaceOutput {
- /** Face ID of the face. */
- readonly persistedFaceId: string;
- /** User-provided data attached to the face. The length limit is 1K. */
- userData?: string;
-}
-
-/** The container of the uploaded person data, including face recognition feature, and up to 1,000,000 people. */
-export interface LargePersonGroupOutput {
- /** User defined name, maximum length is 128. */
- name: string;
- /** Optional user defined data. Length should not exceed 16K. */
- userData?: string;
- /** Name of recognition model. Recognition model is used when the face features are extracted and associated with detected faceIds. */
- recognitionModel?: RecognitionModelOutput;
- /** ID of the container. */
- readonly largePersonGroupId: string;
-}
-
-/** The person in a specified large person group. To add face to this person, please call "Add Large Person Group Person Face". */
-export interface LargePersonGroupPersonOutput {
- /** ID of the person. */
- readonly personId: string;
- /** User defined name, maximum length is 128. */
- name: string;
- /** Optional user defined data. Length should not exceed 16K. */
- userData?: string;
- /** Face ids of registered faces in the person. */
- persistedFaceIds?: string[];
-}
-
-/** Face resource for large person group person. */
-export interface LargePersonGroupPersonFaceOutput {
- /** Face ID of the face. */
- readonly persistedFaceId: string;
- /** User-provided data attached to the face. The length limit is 1K. */
- userData?: string;
-}
-
-/** Person resource for person directory */
-export interface PersonDirectoryPersonOutput {
- /** Person ID of the person. */
- readonly personId: string;
- /** User defined name, maximum length is 128. */
- name: string;
- /** Optional user defined data. Length should not exceed 16K. */
- userData?: string;
-}
-
-/** Response of list dynamic person group of person. */
-export interface ListGroupReferenceResultOutput {
- /** Array of PersonDirectory DynamicPersonGroup ids. */
- dynamicPersonGroupIds: string[];
-}
-
-/** Face resource for person directory person. */
-export interface PersonDirectoryFaceOutput {
- /** Face ID of the face. */
- readonly persistedFaceId: string;
- /** User-provided data attached to the face. The length limit is 1K. */
- userData?: string;
-}
-
-/** Response of list face of person. */
-export interface ListFaceResultOutput {
- /** Id of person. */
- personId: string;
- /** Array of persisted face ids. */
- persistedFaceIds: string[];
-}
-
-/** A container that references Person Directory "Create Person". */
-export interface DynamicPersonGroupOutput {
- /** ID of the dynamic person group. */
- readonly dynamicPersonGroupId: string;
- /** User defined name, maximum length is 128. */
- name: string;
- /** Optional user defined data. Length should not exceed 16K. */
- userData?: string;
-}
-
-/** Response of list dynamic person group person. */
-export interface ListPersonResultOutput {
- /** Array of PersonDirectory Person ids. */
- personIds: string[];
-}
-
/** Response of liveness session creation. */
export interface CreateLivenessSessionResultOutput {
/** The unique session ID of the created session. It will expire 48 hours after it was created or may be deleted sooner using the corresponding Session DELETE operation. */
@@ -635,6 +443,198 @@ export interface LivenessWithVerifySessionOutput {
result?: LivenessSessionAuditEntryOutput;
}
+/** Face list is a list of faces, up to 1,000 faces. */
+export interface FaceListOutput {
+ /** User defined name, maximum length is 128. */
+ name: string;
+ /** Optional user defined data. Length should not exceed 16K. */
+ userData?: string;
+ /** Name of recognition model. Recognition model is used when the face features are extracted and associated with detected faceIds. */
+ recognitionModel?: RecognitionModelOutput;
+ /** Valid character is letter in lower case or digit or '-' or '_', maximum length is 64. */
+ readonly faceListId: string;
+ /** Face ids of registered faces in the face list. */
+ persistedFaces?: Array;
+}
+
+/** Face resource for face list. */
+export interface FaceListFaceOutput {
+ /** Face ID of the face. */
+ readonly persistedFaceId: string;
+ /** User-provided data attached to the face. The length limit is 1K. */
+ userData?: string;
+}
+
+/** Face list item for list face list. */
+export interface FaceListItemOutput {
+ /** User defined name, maximum length is 128. */
+ name: string;
+ /** Optional user defined data. Length should not exceed 16K. */
+ userData?: string;
+ /** Name of recognition model. Recognition model is used when the face features are extracted and associated with detected faceIds. */
+ recognitionModel?: RecognitionModelOutput;
+ /** Valid character is letter in lower case or digit or '-' or '_', maximum length is 64. */
+ faceListId: string;
+}
+
+/** Response body for adding face. */
+export interface AddFaceResultOutput {
+ /** Persisted Face ID of the added face, which is persisted and will not expire. Different from faceId which is created in "Detect" and will expire in 24 hours after the detection call. */
+ persistedFaceId: string;
+}
+
+/** Large face list is a list of faces, up to 1,000,000 faces. */
+export interface LargeFaceListOutput {
+ /** User defined name, maximum length is 128. */
+ name: string;
+ /** Optional user defined data. Length should not exceed 16K. */
+ userData?: string;
+ /** Name of recognition model. Recognition model is used when the face features are extracted and associated with detected faceIds. */
+ recognitionModel?: RecognitionModelOutput;
+ /** Valid character is letter in lower case or digit or '-' or '_', maximum length is 64. */
+ readonly largeFaceListId: string;
+}
+
+/** Training result of a container */
+export interface TrainingResultOutput {
+ /** Training status of the container. */
+ status: OperationStatusOutput;
+ /** A combined UTC date and time string that describes the created time of the person group, large person group or large face list. */
+ createdDateTime: string;
+ /** A combined UTC date and time string that describes the last modify time of the person group, large person group or large face list, could be null value when the group is not successfully trained. */
+ lastActionDateTime: string;
+ /** A combined UTC date and time string that describes the last successful training time of the person group, large person group or large face list. */
+ lastSuccessfulTrainingDateTime: string;
+ /** Show failure message when training failed (omitted when training succeed). */
+ message?: string;
+}
+
+/** Face resource for large face list. */
+export interface LargeFaceListFaceOutput {
+ /** Face ID of the face. */
+ readonly persistedFaceId: string;
+ /** User-provided data attached to the face. The length limit is 1K. */
+ userData?: string;
+}
+
+/** Response of create person. */
+export interface CreatePersonResultOutput {
+ /** Person ID of the person. */
+ personId: string;
+}
+
+/** Person resource for person directory */
+export interface PersonDirectoryPersonOutput {
+ /** Person ID of the person. */
+ readonly personId: string;
+ /** User defined name, maximum length is 128. */
+ name: string;
+ /** Optional user defined data. Length should not exceed 16K. */
+ userData?: string;
+}
+
+/** Response of list dynamic person group of person. */
+export interface ListGroupReferenceResultOutput {
+ /** Array of PersonDirectory DynamicPersonGroup ids. */
+ dynamicPersonGroupIds: string[];
+}
+
+/** Face resource for person directory person. */
+export interface PersonDirectoryFaceOutput {
+ /** Face ID of the face. */
+ readonly persistedFaceId: string;
+ /** User-provided data attached to the face. The length limit is 1K. */
+ userData?: string;
+}
+
+/** Response of list face of person. */
+export interface ListFaceResultOutput {
+ /** Id of person. */
+ personId: string;
+ /** Array of persisted face ids. */
+ persistedFaceIds: string[];
+}
+
+/** A container that references Person Directory "Create Person". */
+export interface DynamicPersonGroupOutput {
+ /** ID of the dynamic person group. */
+ readonly dynamicPersonGroupId: string;
+ /** User defined name, maximum length is 128. */
+ name: string;
+ /** Optional user defined data. Length should not exceed 16K. */
+ userData?: string;
+}
+
+/** Response of list dynamic person group person. */
+export interface ListPersonResultOutput {
+ /** Array of PersonDirectory Person ids. */
+ personIds: string[];
+}
+
+/** The container of the uploaded person data, including face recognition feature, and up to 10,000 persons. To handle larger scale face identification problem, please consider using Large Person Group. */
+export interface PersonGroupOutput {
+ /** User defined name, maximum length is 128. */
+ name: string;
+ /** Optional user defined data. Length should not exceed 16K. */
+ userData?: string;
+ /** Name of recognition model. Recognition model is used when the face features are extracted and associated with detected faceIds. */
+ recognitionModel?: RecognitionModelOutput;
+ /** ID of the container. */
+ readonly personGroupId: string;
+}
+
+/** The person in a specified person group. To add face to this person, please call "Add Large Person Group Person Face". */
+export interface PersonGroupPersonOutput {
+ /** ID of the person. */
+ readonly personId: string;
+ /** User defined name, maximum length is 128. */
+ name: string;
+ /** Optional user defined data. Length should not exceed 16K. */
+ userData?: string;
+ /** Face ids of registered faces in the person. */
+ persistedFaceIds?: string[];
+}
+
+/** Face resource for person group person. */
+export interface PersonGroupPersonFaceOutput {
+ /** Face ID of the face. */
+ readonly persistedFaceId: string;
+ /** User-provided data attached to the face. The length limit is 1K. */
+ userData?: string;
+}
+
+/** The container of the uploaded person data, including face recognition feature, and up to 1,000,000 people. */
+export interface LargePersonGroupOutput {
+ /** User defined name, maximum length is 128. */
+ name: string;
+ /** Optional user defined data. Length should not exceed 16K. */
+ userData?: string;
+ /** Name of recognition model. Recognition model is used when the face features are extracted and associated with detected faceIds. */
+ recognitionModel?: RecognitionModelOutput;
+ /** ID of the container. */
+ readonly largePersonGroupId: string;
+}
+
+/** The person in a specified large person group. To add face to this person, please call "Add Large Person Group Person Face". */
+export interface LargePersonGroupPersonOutput {
+ /** ID of the person. */
+ readonly personId: string;
+ /** User defined name, maximum length is 128. */
+ name: string;
+ /** Optional user defined data. Length should not exceed 16K. */
+ userData?: string;
+ /** Face ids of registered faces in the person. */
+ persistedFaceIds?: string[];
+}
+
+/** Face resource for large person group person. */
+export interface LargePersonGroupPersonFaceOutput {
+ /** Face ID of the face. */
+ readonly persistedFaceId: string;
+ /** User-provided data attached to the face. The length limit is 1K. */
+ userData?: string;
+}
+
/** Alias for OperationStatusOutput */
export type OperationStatusOutput = string | "notStarted" | "running" | "succeeded" | "failed";
/** Alias for RecognitionModelOutput */
diff --git a/sdk/face/ai-vision-face-rest/src/parameters.ts b/sdk/face/ai-vision-face-rest/src/parameters.ts
index 26eba062a8ec..8a9295448456 100644
--- a/sdk/face/ai-vision-face-rest/src/parameters.ts
+++ b/sdk/face/ai-vision-face-rest/src/parameters.ts
@@ -203,6 +203,92 @@ export interface GroupBodyParam {
export type GroupParameters = GroupBodyParam & RequestParameters;
+export interface CreateLivenessSessionBodyParam {
+ body?: CreateLivenessSessionContent;
+}
+
+export type CreateLivenessSessionParameters = CreateLivenessSessionBodyParam & RequestParameters;
+export type DeleteLivenessSessionParameters = RequestParameters;
+export type GetLivenessSessionResultParameters = RequestParameters;
+
+export interface GetLivenessSessionsQueryParamProperties {
+ /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
+ start?: string;
+ /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
+ top?: number;
+}
+
+export interface GetLivenessSessionsQueryParam {
+ queryParameters?: GetLivenessSessionsQueryParamProperties;
+}
+
+export type GetLivenessSessionsParameters = GetLivenessSessionsQueryParam & RequestParameters;
+
+export interface GetLivenessSessionAuditEntriesQueryParamProperties {
+ /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
+ start?: string;
+ /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
+ top?: number;
+}
+
+export interface GetLivenessSessionAuditEntriesQueryParam {
+ queryParameters?: GetLivenessSessionAuditEntriesQueryParamProperties;
+}
+
+export type GetLivenessSessionAuditEntriesParameters = GetLivenessSessionAuditEntriesQueryParam &
+ RequestParameters;
+
+export interface CreateLivenessWithVerifySessionWithVerifyImageBodyParam {
+ body?: CreateLivenessWithVerifySessionContent;
+}
+
+export interface CreateLivenessWithVerifySessionWithVerifyImageMediaTypesParam {
+ /** The content type for the operation. Always multipart/form-data for this operation. */
+ contentType: "multipart/form-data";
+}
+
+export type CreateLivenessWithVerifySessionWithVerifyImageParameters =
+ CreateLivenessWithVerifySessionWithVerifyImageMediaTypesParam &
+ CreateLivenessWithVerifySessionWithVerifyImageBodyParam &
+ RequestParameters;
+
+export interface CreateLivenessWithVerifySessionBodyParam {
+ body?: CreateLivenessSessionContent;
+}
+
+export type CreateLivenessWithVerifySessionParameters = CreateLivenessWithVerifySessionBodyParam &
+ RequestParameters;
+export type DeleteLivenessWithVerifySessionParameters = RequestParameters;
+export type GetLivenessWithVerifySessionResultParameters = RequestParameters;
+
+export interface GetLivenessWithVerifySessionsQueryParamProperties {
+ /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
+ start?: string;
+ /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
+ top?: number;
+}
+
+export interface GetLivenessWithVerifySessionsQueryParam {
+ queryParameters?: GetLivenessWithVerifySessionsQueryParamProperties;
+}
+
+export type GetLivenessWithVerifySessionsParameters = GetLivenessWithVerifySessionsQueryParam &
+ RequestParameters;
+
+export interface GetLivenessWithVerifySessionAuditEntriesQueryParamProperties {
+ /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
+ start?: string;
+ /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
+ top?: number;
+}
+
+export interface GetLivenessWithVerifySessionAuditEntriesQueryParam {
+ queryParameters?: GetLivenessWithVerifySessionAuditEntriesQueryParamProperties;
+}
+
+export type GetLivenessWithVerifySessionAuditEntriesParameters =
+ GetLivenessWithVerifySessionAuditEntriesQueryParam & RequestParameters;
+
export interface CreateFaceListBodyParam {
body?: {
name: string;
@@ -416,6 +502,171 @@ export interface GetLargeFaceListFacesQueryParam {
export type GetLargeFaceListFacesParameters = GetLargeFaceListFacesQueryParam & RequestParameters;
+export interface CreatePersonBodyParam {
+ body?: { name: string; userData?: string };
+}
+
+export type CreatePersonParameters = CreatePersonBodyParam & RequestParameters;
+export type DeletePersonParameters = RequestParameters;
+export type GetPersonParameters = RequestParameters;
+
+export interface UpdatePersonBodyParam {
+ body?: { name?: string; userData?: string };
+}
+
+export type UpdatePersonParameters = UpdatePersonBodyParam & RequestParameters;
+
+export interface GetPersonsQueryParamProperties {
+ /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
+ start?: string;
+ /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
+ top?: number;
+}
+
+export interface GetPersonsQueryParam {
+ queryParameters?: GetPersonsQueryParamProperties;
+}
+
+export type GetPersonsParameters = GetPersonsQueryParam & RequestParameters;
+
+export interface GetDynamicPersonGroupReferencesQueryParamProperties {
+ /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
+ start?: string;
+ /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
+ top?: number;
+}
+
+export interface GetDynamicPersonGroupReferencesQueryParam {
+ queryParameters?: GetDynamicPersonGroupReferencesQueryParamProperties;
+}
+
+export type GetDynamicPersonGroupReferencesParameters = GetDynamicPersonGroupReferencesQueryParam &
+ RequestParameters;
+
+export interface AddPersonFaceBodyParam {
+ /**
+ * The image to be analyzed
+ *
+ * Value may contain any sequence of octets
+ */
+ body: string | Uint8Array | ReadableStream | NodeJS.ReadableStream;
+}
+
+export interface AddPersonFaceQueryParamProperties {
+ /** A face rectangle to specify the target face to be added to a person, in the format of 'targetFace=left,top,width,height'. */
+ targetFace?: number[];
+ /** The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. */
+ detectionModel?: DetectionModel;
+ /** User-provided data attached to the face. The size limit is 1K. */
+ userData?: string;
+}
+
+export interface AddPersonFaceQueryParam {
+ queryParameters?: AddPersonFaceQueryParamProperties;
+}
+
+export interface AddPersonFaceMediaTypesParam {
+ /** The format of the HTTP payload. */
+ contentType: "application/octet-stream";
+}
+
+export type AddPersonFaceParameters = AddPersonFaceQueryParam &
+ AddPersonFaceMediaTypesParam &
+ AddPersonFaceBodyParam &
+ RequestParameters;
+
+export interface AddPersonFaceFromUrlBodyParam {
+ body?: { url: string };
+}
+
+export interface AddPersonFaceFromUrlQueryParamProperties {
+ /** A face rectangle to specify the target face to be added to a person, in the format of 'targetFace=left,top,width,height'. */
+ targetFace?: number[];
+ /** The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. */
+ detectionModel?: DetectionModel;
+ /** User-provided data attached to the face. The size limit is 1K. */
+ userData?: string;
+}
+
+export interface AddPersonFaceFromUrlQueryParam {
+ queryParameters?: AddPersonFaceFromUrlQueryParamProperties;
+}
+
+export type AddPersonFaceFromUrlParameters = AddPersonFaceFromUrlQueryParam &
+ AddPersonFaceFromUrlBodyParam &
+ RequestParameters;
+export type DeletePersonFaceParameters = RequestParameters;
+export type GetPersonFaceParameters = RequestParameters;
+
+export interface UpdatePersonFaceBodyParam {
+ body?: { userData?: string };
+}
+
+export type UpdatePersonFaceParameters = UpdatePersonFaceBodyParam & RequestParameters;
+export type GetPersonFacesParameters = RequestParameters;
+
+export interface CreateDynamicPersonGroupWithPersonBodyParam {
+ body?: { name: string; userData?: string; addPersonIds: string[] };
+}
+
+export type CreateDynamicPersonGroupWithPersonParameters =
+ CreateDynamicPersonGroupWithPersonBodyParam & RequestParameters;
+
+export interface CreateDynamicPersonGroupBodyParam {
+ body?: { name: string; userData?: string };
+}
+
+export type CreateDynamicPersonGroupParameters = CreateDynamicPersonGroupBodyParam &
+ RequestParameters;
+export type DeleteDynamicPersonGroupParameters = RequestParameters;
+export type GetDynamicPersonGroupParameters = RequestParameters;
+
+export interface UpdateDynamicPersonGroupWithPersonChangesBodyParam {
+ body?: {
+ name?: string;
+ userData?: string;
+ addPersonIds?: string[];
+ removePersonIds?: string[];
+ };
+}
+
+export type UpdateDynamicPersonGroupWithPersonChangesParameters =
+ UpdateDynamicPersonGroupWithPersonChangesBodyParam & RequestParameters;
+
+export interface UpdateDynamicPersonGroupBodyParam {
+ body?: { name?: string; userData?: string };
+}
+
+export type UpdateDynamicPersonGroupParameters = UpdateDynamicPersonGroupBodyParam &
+ RequestParameters;
+
+export interface GetDynamicPersonGroupsQueryParamProperties {
+ /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
+ start?: string;
+ /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
+ top?: number;
+}
+
+export interface GetDynamicPersonGroupsQueryParam {
+ queryParameters?: GetDynamicPersonGroupsQueryParamProperties;
+}
+
+export type GetDynamicPersonGroupsParameters = GetDynamicPersonGroupsQueryParam & RequestParameters;
+
+export interface GetDynamicPersonGroupPersonsQueryParamProperties {
+ /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
+ start?: string;
+ /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
+ top?: number;
+}
+
+export interface GetDynamicPersonGroupPersonsQueryParam {
+ queryParameters?: GetDynamicPersonGroupPersonsQueryParamProperties;
+}
+
+export type GetDynamicPersonGroupPersonsParameters = GetDynamicPersonGroupPersonsQueryParam &
+ RequestParameters;
+
export interface CreatePersonGroupBodyParam {
body?: {
name: string;
@@ -689,254 +940,3 @@ export interface UpdateLargePersonGroupPersonFaceBodyParam {
export type UpdateLargePersonGroupPersonFaceParameters = UpdateLargePersonGroupPersonFaceBodyParam &
RequestParameters;
-
-export interface CreatePersonBodyParam {
- body?: { name: string; userData?: string };
-}
-
-export type CreatePersonParameters = CreatePersonBodyParam & RequestParameters;
-export type DeletePersonParameters = RequestParameters;
-export type GetPersonParameters = RequestParameters;
-
-export interface UpdatePersonBodyParam {
- body?: { name?: string; userData?: string };
-}
-
-export type UpdatePersonParameters = UpdatePersonBodyParam & RequestParameters;
-
-export interface GetPersonsQueryParamProperties {
- /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
- start?: string;
- /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
- top?: number;
-}
-
-export interface GetPersonsQueryParam {
- queryParameters?: GetPersonsQueryParamProperties;
-}
-
-export type GetPersonsParameters = GetPersonsQueryParam & RequestParameters;
-
-export interface GetDynamicPersonGroupReferencesQueryParamProperties {
- /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
- start?: string;
- /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
- top?: number;
-}
-
-export interface GetDynamicPersonGroupReferencesQueryParam {
- queryParameters?: GetDynamicPersonGroupReferencesQueryParamProperties;
-}
-
-export type GetDynamicPersonGroupReferencesParameters = GetDynamicPersonGroupReferencesQueryParam &
- RequestParameters;
-
-export interface AddPersonFaceBodyParam {
- /**
- * The image to be analyzed
- *
- * Value may contain any sequence of octets
- */
- body: string | Uint8Array | ReadableStream | NodeJS.ReadableStream;
-}
-
-export interface AddPersonFaceQueryParamProperties {
- /** A face rectangle to specify the target face to be added to a person, in the format of 'targetFace=left,top,width,height'. */
- targetFace?: number[];
- /** The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. */
- detectionModel?: DetectionModel;
- /** User-provided data attached to the face. The size limit is 1K. */
- userData?: string;
-}
-
-export interface AddPersonFaceQueryParam {
- queryParameters?: AddPersonFaceQueryParamProperties;
-}
-
-export interface AddPersonFaceMediaTypesParam {
- /** The format of the HTTP payload. */
- contentType: "application/octet-stream";
-}
-
-export type AddPersonFaceParameters = AddPersonFaceQueryParam &
- AddPersonFaceMediaTypesParam &
- AddPersonFaceBodyParam &
- RequestParameters;
-
-export interface AddPersonFaceFromUrlBodyParam {
- body?: { url: string };
-}
-
-export interface AddPersonFaceFromUrlQueryParamProperties {
- /** A face rectangle to specify the target face to be added to a person, in the format of 'targetFace=left,top,width,height'. */
- targetFace?: number[];
- /** The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. */
- detectionModel?: DetectionModel;
- /** User-provided data attached to the face. The size limit is 1K. */
- userData?: string;
-}
-
-export interface AddPersonFaceFromUrlQueryParam {
- queryParameters?: AddPersonFaceFromUrlQueryParamProperties;
-}
-
-export type AddPersonFaceFromUrlParameters = AddPersonFaceFromUrlQueryParam &
- AddPersonFaceFromUrlBodyParam &
- RequestParameters;
-export type DeletePersonFaceParameters = RequestParameters;
-export type GetPersonFaceParameters = RequestParameters;
-
-export interface UpdatePersonFaceBodyParam {
- body?: { userData?: string };
-}
-
-export type UpdatePersonFaceParameters = UpdatePersonFaceBodyParam & RequestParameters;
-export type GetPersonFacesParameters = RequestParameters;
-
-export interface CreateDynamicPersonGroupWithPersonBodyParam {
- body?: { name: string; userData?: string; addPersonIds: string[] };
-}
-
-export type CreateDynamicPersonGroupWithPersonParameters =
- CreateDynamicPersonGroupWithPersonBodyParam & RequestParameters;
-
-export interface CreateDynamicPersonGroupBodyParam {
- body?: { name: string; userData?: string };
-}
-
-export type CreateDynamicPersonGroupParameters = CreateDynamicPersonGroupBodyParam &
- RequestParameters;
-export type DeleteDynamicPersonGroupParameters = RequestParameters;
-export type GetDynamicPersonGroupParameters = RequestParameters;
-
-export interface UpdateDynamicPersonGroupWithPersonChangesBodyParam {
- body?: {
- name?: string;
- userData?: string;
- addPersonIds?: string[];
- removePersonIds?: string[];
- };
-}
-
-export type UpdateDynamicPersonGroupWithPersonChangesParameters =
- UpdateDynamicPersonGroupWithPersonChangesBodyParam & RequestParameters;
-
-export interface UpdateDynamicPersonGroupBodyParam {
- body?: { name?: string; userData?: string };
-}
-
-export type UpdateDynamicPersonGroupParameters = UpdateDynamicPersonGroupBodyParam &
- RequestParameters;
-
-export interface GetDynamicPersonGroupsQueryParamProperties {
- /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
- start?: string;
- /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
- top?: number;
-}
-
-export interface GetDynamicPersonGroupsQueryParam {
- queryParameters?: GetDynamicPersonGroupsQueryParamProperties;
-}
-
-export type GetDynamicPersonGroupsParameters = GetDynamicPersonGroupsQueryParam & RequestParameters;
-
-export interface GetDynamicPersonGroupPersonsQueryParamProperties {
- /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
- start?: string;
- /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
- top?: number;
-}
-
-export interface GetDynamicPersonGroupPersonsQueryParam {
- queryParameters?: GetDynamicPersonGroupPersonsQueryParamProperties;
-}
-
-export type GetDynamicPersonGroupPersonsParameters = GetDynamicPersonGroupPersonsQueryParam &
- RequestParameters;
-
-export interface CreateLivenessSessionBodyParam {
- body?: CreateLivenessSessionContent;
-}
-
-export type CreateLivenessSessionParameters = CreateLivenessSessionBodyParam & RequestParameters;
-export type DeleteLivenessSessionParameters = RequestParameters;
-export type GetLivenessSessionResultParameters = RequestParameters;
-
-export interface GetLivenessSessionsQueryParamProperties {
- /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
- start?: string;
- /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
- top?: number;
-}
-
-export interface GetLivenessSessionsQueryParam {
- queryParameters?: GetLivenessSessionsQueryParamProperties;
-}
-
-export type GetLivenessSessionsParameters = GetLivenessSessionsQueryParam & RequestParameters;
-
-export interface GetLivenessSessionAuditEntriesQueryParamProperties {
- /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
- start?: string;
- /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
- top?: number;
-}
-
-export interface GetLivenessSessionAuditEntriesQueryParam {
- queryParameters?: GetLivenessSessionAuditEntriesQueryParamProperties;
-}
-
-export type GetLivenessSessionAuditEntriesParameters = GetLivenessSessionAuditEntriesQueryParam &
- RequestParameters;
-
-export interface CreateLivenessWithVerifySessionWithVerifyImageBodyParam {
- body?: CreateLivenessWithVerifySessionContent;
-}
-
-export interface CreateLivenessWithVerifySessionWithVerifyImageMediaTypesParam {
- /** The content type for the operation. Always multipart/form-data for this operation. */
- contentType: "multipart/form-data";
-}
-
-export type CreateLivenessWithVerifySessionWithVerifyImageParameters =
- CreateLivenessWithVerifySessionWithVerifyImageMediaTypesParam &
- CreateLivenessWithVerifySessionWithVerifyImageBodyParam &
- RequestParameters;
-
-export interface CreateLivenessWithVerifySessionBodyParam {
- body?: CreateLivenessSessionContent;
-}
-
-export type CreateLivenessWithVerifySessionParameters = CreateLivenessWithVerifySessionBodyParam &
- RequestParameters;
-export type DeleteLivenessWithVerifySessionParameters = RequestParameters;
-export type GetLivenessWithVerifySessionResultParameters = RequestParameters;
-
-export interface GetLivenessWithVerifySessionsQueryParamProperties {
- /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
- start?: string;
- /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
- top?: number;
-}
-
-export interface GetLivenessWithVerifySessionsQueryParam {
- queryParameters?: GetLivenessWithVerifySessionsQueryParamProperties;
-}
-
-export type GetLivenessWithVerifySessionsParameters = GetLivenessWithVerifySessionsQueryParam &
- RequestParameters;
-
-export interface GetLivenessWithVerifySessionAuditEntriesQueryParamProperties {
- /** List resources greater than the "start". It contains no more than 64 characters. Default is empty. */
- start?: string;
- /** The number of items to list, ranging in [1, 1000]. Default is 1000. */
- top?: number;
-}
-
-export interface GetLivenessWithVerifySessionAuditEntriesQueryParam {
- queryParameters?: GetLivenessWithVerifySessionAuditEntriesQueryParamProperties;
-}
-
-export type GetLivenessWithVerifySessionAuditEntriesParameters =
- GetLivenessWithVerifySessionAuditEntriesQueryParam & RequestParameters;
diff --git a/sdk/face/ai-vision-face-rest/src/pollingHelper.ts b/sdk/face/ai-vision-face-rest/src/pollingHelper.ts
index af9941db34ff..3a6edf301454 100644
--- a/sdk/face/ai-vision-face-rest/src/pollingHelper.ts
+++ b/sdk/face/ai-vision-face-rest/src/pollingHelper.ts
@@ -2,12 +2,13 @@
// Licensed under the MIT license.
import { Client, HttpResponse } from "@azure-rest/core-client";
+import { AbortSignalLike } from "@azure/abort-controller";
import {
+ CancelOnProgress,
CreateHttpPollerOptions,
LongRunningOperation,
- LroResponse,
+ OperationResponse,
OperationState,
- SimplePollerLike,
createHttpPoller,
} from "@azure/core-lro";
import {
@@ -42,6 +43,71 @@ import {
UpdateDynamicPersonGroupWithPersonChangesDefaultResponse,
UpdateDynamicPersonGroupWithPersonChangesLogicalResponse,
} from "./responses.js";
+
+/**
+ * A simple poller that can be used to poll a long running operation.
+ */
+export interface SimplePollerLike, TResult> {
+ /**
+ * Returns true if the poller has finished polling.
+ */
+ isDone(): boolean;
+ /**
+ * Returns true if the poller is stopped.
+ */
+ isStopped(): boolean;
+ /**
+ * Returns the state of the operation.
+ */
+ getOperationState(): TState;
+ /**
+ * Returns the result value of the operation,
+ * regardless of the state of the poller.
+ * It can return undefined or an incomplete form of the final TResult value
+ * depending on the implementation.
+ */
+ getResult(): TResult | undefined;
+ /**
+ * Returns a promise that will resolve once a single polling request finishes.
+ * It does this by calling the update method of the Poller's operation.
+ */
+ poll(options?: { abortSignal?: AbortSignalLike }): Promise;
+ /**
+ * Returns a promise that will resolve once the underlying operation is completed.
+ */
+ pollUntilDone(pollOptions?: { abortSignal?: AbortSignalLike }): Promise;
+ /**
+ * Invokes the provided callback after each polling is completed,
+ * sending the current state of the poller's operation.
+ *
+ * It returns a method that can be used to stop receiving updates on the given callback function.
+ */
+ onProgress(callback: (state: TState) => void): CancelOnProgress;
+
+ /**
+ * Returns a promise that could be used for serialized version of the poller's operation
+ * by invoking the operation's serialize method.
+ */
+ serialize(): Promise;
+
+ /**
+ * Wait the poller to be submitted.
+ */
+ submitted(): Promise;
+
+ /**
+ * Returns a string representation of the poller's operation. Similar to serialize but returns a string.
+ * @deprecated Use serialize() instead.
+ */
+ toString(): string;
+
+ /**
+ * Stops the poller from continuing to poll. Please note this will only stop the client-side polling
+ * @deprecated Use abortSignal to stop polling instead.
+ */
+ stopPolling(): void;
+}
+
/**
* Helper function that builds a Poller object to help polling a long running operation.
* @param client - Client to use for sending the request to get additional pages.
@@ -132,21 +198,39 @@ export async function getLongRunningPoller(
initialResponse: TResult,
options: CreateHttpPollerOptions> = {},
): Promise, TResult>> {
+ const abortController = new AbortController();
const poller: LongRunningOperation = {
- requestMethod: initialResponse.request.method,
- requestPath: initialResponse.request.url,
sendInitialRequest: async () => {
// In the case of Rest Clients we are building the LRO poller object from a response that's the reason
// we are not triggering the initial request here, just extracting the information from the
// response we were provided.
return getLroResponse(initialResponse);
},
- sendPollRequest: async (path) => {
+ sendPollRequest: async (path, sendPollRequestOptions?: { abortSignal?: AbortSignalLike }) => {
// This is the callback that is going to be called to poll the service
// to get the latest status. We use the client provided and the polling path
// which is an opaque URL provided by caller, the service sends this in one of the following headers: operation-location, azure-asyncoperation or location
// depending on the lro pattern that the service implements. If non is provided we default to the initial path.
- const response = await client.pathUnchecked(path ?? initialResponse.request.url).get();
+ function abortListener(): void {
+ abortController.abort();
+ }
+ const inputAbortSignal = sendPollRequestOptions?.abortSignal;
+ const abortSignal = abortController.signal;
+ if (inputAbortSignal?.aborted) {
+ abortController.abort();
+ } else if (!abortSignal.aborted) {
+ inputAbortSignal?.addEventListener("abort", abortListener, {
+ once: true,
+ });
+ }
+ let response;
+ try {
+ response = await client
+ .pathUnchecked(path ?? initialResponse.request.url)
+ .get({ abortSignal });
+ } finally {
+ inputAbortSignal?.removeEventListener("abort", abortListener);
+ }
const lroResponse = getLroResponse(response as TResult);
lroResponse.rawResponse.headers["x-ms-original-url"] = initialResponse.request.url;
return lroResponse;
@@ -154,7 +238,45 @@ export async function getLongRunningPoller(
};
options.resolveOnUnsuccessful = options.resolveOnUnsuccessful ?? true;
- return createHttpPoller(poller, options);
+ const httpPoller = createHttpPoller(poller, options);
+ const simplePoller: SimplePollerLike, TResult> = {
+ isDone() {
+ return httpPoller.isDone;
+ },
+ isStopped() {
+ return httpPoller.isStopped;
+ },
+ getOperationState() {
+ if (!httpPoller.operationState) {
+ throw new Error(
+ "Operation state is not available. The poller may not have been started and you could await submitted() before calling getOperationState().",
+ );
+ }
+ return httpPoller.operationState;
+ },
+ getResult() {
+ return httpPoller.result;
+ },
+ toString() {
+ if (!httpPoller.operationState) {
+ throw new Error(
+ "Operation state is not available. The poller may not have been started and you could await submitted() before calling getOperationState().",
+ );
+ }
+ return JSON.stringify({
+ state: httpPoller.operationState,
+ });
+ },
+ stopPolling() {
+ abortController.abort();
+ },
+ onProgress: httpPoller.onProgress,
+ poll: httpPoller.poll,
+ pollUntilDone: httpPoller.pollUntilDone,
+ serialize: httpPoller.serialize,
+ submitted: httpPoller.submitted,
+ };
+ return simplePoller;
}
/**
@@ -162,7 +284,9 @@ export async function getLongRunningPoller(
* @param response - a rest client http response
* @returns - An LRO response that the LRO implementation understands
*/
-function getLroResponse(response: TResult): LroResponse {
+function getLroResponse(
+ response: TResult,
+): OperationResponse {
if (Number.isNaN(response.status)) {
throw new TypeError(`Status code of the response is not a number. Value: ${response.status}`);
}
diff --git a/sdk/face/ai-vision-face-rest/src/responses.ts b/sdk/face/ai-vision-face-rest/src/responses.ts
index c9dabfcb8176..a44f37228cda 100644
--- a/sdk/face/ai-vision-face-rest/src/responses.ts
+++ b/sdk/face/ai-vision-face-rest/src/responses.ts
@@ -11,31 +11,31 @@ import {
IdentificationResultOutput,
VerificationResultOutput,
GroupingResultOutput,
+ CreateLivenessSessionResultOutput,
+ LivenessSessionOutput,
+ LivenessSessionItemOutput,
+ LivenessSessionAuditEntryOutput,
+ CreateLivenessWithVerifySessionResultOutput,
+ LivenessWithVerifySessionOutput,
FaceListOutput,
FaceListItemOutput,
AddFaceResultOutput,
LargeFaceListOutput,
TrainingResultOutput,
LargeFaceListFaceOutput,
- PersonGroupOutput,
CreatePersonResultOutput,
- PersonGroupPersonOutput,
- PersonGroupPersonFaceOutput,
- LargePersonGroupOutput,
- LargePersonGroupPersonOutput,
- LargePersonGroupPersonFaceOutput,
PersonDirectoryPersonOutput,
ListGroupReferenceResultOutput,
PersonDirectoryFaceOutput,
ListFaceResultOutput,
DynamicPersonGroupOutput,
ListPersonResultOutput,
- CreateLivenessSessionResultOutput,
- LivenessSessionOutput,
- LivenessSessionItemOutput,
- LivenessSessionAuditEntryOutput,
- CreateLivenessWithVerifySessionResultOutput,
- LivenessWithVerifySessionOutput,
+ PersonGroupOutput,
+ PersonGroupPersonOutput,
+ PersonGroupPersonFaceOutput,
+ LargePersonGroupOutput,
+ LargePersonGroupPersonOutput,
+ LargePersonGroupPersonFaceOutput,
} from "./outputModels.js";
/** A successful call returns the long running operation status. */
@@ -293,6 +293,192 @@ export interface GroupDefaultResponse extends HttpResponse {
headers: RawHttpHeaders & GroupDefaultHeaders;
}
+/** A successful call create a session for a client device and provide an authorization token for use by the client application for a limited purpose and time. */
+export interface CreateLivenessSession200Response extends HttpResponse {
+ status: "200";
+ body: CreateLivenessSessionResultOutput;
+}
+
+export interface CreateLivenessSessionDefaultHeaders {
+ /** String error code indicating what went wrong. */
+ "x-ms-error-code"?: string;
+}
+
+export interface CreateLivenessSessionDefaultResponse extends HttpResponse {
+ status: string;
+ body: FaceErrorResponseOutput;
+ headers: RawHttpHeaders & CreateLivenessSessionDefaultHeaders;
+}
+
+/** The request has succeeded. */
+export interface DeleteLivenessSession200Response extends HttpResponse {
+ status: "200";
+}
+
+export interface DeleteLivenessSessionDefaultHeaders {
+ /** String error code indicating what went wrong. */
+ "x-ms-error-code"?: string;
+}
+
+export interface DeleteLivenessSessionDefaultResponse extends HttpResponse {
+ status: string;
+ body: FaceErrorResponseOutput;
+ headers: RawHttpHeaders & DeleteLivenessSessionDefaultHeaders;
+}
+
+/** The request has succeeded. */
+export interface GetLivenessSessionResult200Response extends HttpResponse {
+ status: "200";
+ body: LivenessSessionOutput;
+}
+
+export interface GetLivenessSessionResultDefaultHeaders {
+ /** String error code indicating what went wrong. */
+ "x-ms-error-code"?: string;
+}
+
+export interface GetLivenessSessionResultDefaultResponse extends HttpResponse {
+ status: string;
+ body: FaceErrorResponseOutput;
+ headers: RawHttpHeaders & GetLivenessSessionResultDefaultHeaders;
+}
+
+/** The request has succeeded. */
+export interface GetLivenessSessions200Response extends HttpResponse {
+ status: "200";
+ body: Array;
+}
+
+export interface GetLivenessSessionsDefaultHeaders {
+ /** String error code indicating what went wrong. */
+ "x-ms-error-code"?: string;
+}
+
+export interface GetLivenessSessionsDefaultResponse extends HttpResponse {
+ status: string;
+ body: FaceErrorResponseOutput;
+ headers: RawHttpHeaders & GetLivenessSessionsDefaultHeaders;
+}
+
+/** The request has succeeded. */
+export interface GetLivenessSessionAuditEntries200Response extends HttpResponse {
+ status: "200";
+ body: Array;
+}
+
+export interface GetLivenessSessionAuditEntriesDefaultHeaders {
+ /** String error code indicating what went wrong. */
+ "x-ms-error-code"?: string;
+}
+
+export interface GetLivenessSessionAuditEntriesDefaultResponse extends HttpResponse {
+ status: string;
+ body: FaceErrorResponseOutput;
+ headers: RawHttpHeaders & GetLivenessSessionAuditEntriesDefaultHeaders;
+}
+
+/** A successful call create a session for a client device and provide an authorization token for use by the client application for a limited purpose and time. */
+export interface CreateLivenessWithVerifySessionWithVerifyImage200Response extends HttpResponse {
+ status: "200";
+ body: CreateLivenessWithVerifySessionResultOutput;
+}
+
+export interface CreateLivenessWithVerifySessionWithVerifyImageDefaultHeaders {
+ /** String error code indicating what went wrong. */
+ "x-ms-error-code"?: string;
+}
+
+export interface CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse
+ extends HttpResponse {
+ status: string;
+ body: FaceErrorResponseOutput;
+ headers: RawHttpHeaders & CreateLivenessWithVerifySessionWithVerifyImageDefaultHeaders;
+}
+
+/** A successful call create a session for a client device and provide an authorization token for use by the client application for a limited purpose and time. */
+export interface CreateLivenessWithVerifySession200Response extends HttpResponse {
+ status: "200";
+ body: CreateLivenessWithVerifySessionResultOutput;
+}
+
+export interface CreateLivenessWithVerifySessionDefaultHeaders {
+ /** String error code indicating what went wrong. */
+ "x-ms-error-code"?: string;
+}
+
+export interface CreateLivenessWithVerifySessionDefaultResponse extends HttpResponse {
+ status: string;
+ body: FaceErrorResponseOutput;
+ headers: RawHttpHeaders & CreateLivenessWithVerifySessionDefaultHeaders;
+}
+
+/** The request has succeeded. */
+export interface DeleteLivenessWithVerifySession200Response extends HttpResponse {
+ status: "200";
+}
+
+export interface DeleteLivenessWithVerifySessionDefaultHeaders {
+ /** String error code indicating what went wrong. */
+ "x-ms-error-code"?: string;
+}
+
+export interface DeleteLivenessWithVerifySessionDefaultResponse extends HttpResponse {
+ status: string;
+ body: FaceErrorResponseOutput;
+ headers: RawHttpHeaders & DeleteLivenessWithVerifySessionDefaultHeaders;
+}
+
+/** The request has succeeded. */
+export interface GetLivenessWithVerifySessionResult200Response extends HttpResponse {
+ status: "200";
+ body: LivenessWithVerifySessionOutput;
+}
+
+export interface GetLivenessWithVerifySessionResultDefaultHeaders {
+ /** String error code indicating what went wrong. */
+ "x-ms-error-code"?: string;
+}
+
+export interface GetLivenessWithVerifySessionResultDefaultResponse extends HttpResponse {
+ status: string;
+ body: FaceErrorResponseOutput;
+ headers: RawHttpHeaders & GetLivenessWithVerifySessionResultDefaultHeaders;
+}
+
+/** The request has succeeded. */
+export interface GetLivenessWithVerifySessions200Response extends HttpResponse {
+ status: "200";
+ body: Array;
+}
+
+export interface GetLivenessWithVerifySessionsDefaultHeaders {
+ /** String error code indicating what went wrong. */
+ "x-ms-error-code"?: string;
+}
+
+export interface GetLivenessWithVerifySessionsDefaultResponse extends HttpResponse {
+ status: string;
+ body: FaceErrorResponseOutput;
+ headers: RawHttpHeaders & GetLivenessWithVerifySessionsDefaultHeaders;
+}
+
+/** The request has succeeded. */
+export interface GetLivenessWithVerifySessionAuditEntries200Response extends HttpResponse {
+ status: "200";
+ body: Array;
+}
+
+export interface GetLivenessWithVerifySessionAuditEntriesDefaultHeaders {
+ /** String error code indicating what went wrong. */
+ "x-ms-error-code"?: string;
+}
+
+export interface GetLivenessWithVerifySessionAuditEntriesDefaultResponse extends HttpResponse {
+ status: string;
+ body: FaceErrorResponseOutput;
+ headers: RawHttpHeaders & GetLivenessWithVerifySessionAuditEntriesDefaultHeaders;
+}
+
/** The request has succeeded. */
export interface CreateFaceList200Response extends HttpResponse {
status: "200";
@@ -650,1187 +836,1001 @@ export interface GetLargeFaceListFacesDefaultResponse extends HttpResponse {
headers: RawHttpHeaders & GetLargeFaceListFacesDefaultHeaders;
}
-/** The request has succeeded. */
-export interface CreatePersonGroup200Response extends HttpResponse {
- status: "200";
+export interface CreatePerson202Headers {
+ "operation-location": string;
+ location: string;
}
-export interface CreatePersonGroupDefaultHeaders {
+/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. */
+export interface CreatePerson202Response extends HttpResponse {
+ status: "202";
+ body: CreatePersonResultOutput;
+ headers: RawHttpHeaders & CreatePerson202Headers;
+}
+
+export interface CreatePersonDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface CreatePersonGroupDefaultResponse extends HttpResponse {
+export interface CreatePersonDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & CreatePersonGroupDefaultHeaders;
+ headers: RawHttpHeaders & CreatePersonDefaultHeaders;
}
-/** The request has succeeded. */
-export interface DeletePersonGroup200Response extends HttpResponse {
+/** The final response for long-running createPerson operation */
+export interface CreatePersonLogicalResponse extends HttpResponse {
status: "200";
+ body: CreatePersonResultOutput;
}
-export interface DeletePersonGroupDefaultHeaders {
+export interface DeletePerson202Headers {
+ "operation-location": string;
+}
+
+/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. */
+export interface DeletePerson202Response extends HttpResponse {
+ status: "202";
+ headers: RawHttpHeaders & DeletePerson202Headers;
+}
+
+export interface DeletePersonDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface DeletePersonGroupDefaultResponse extends HttpResponse {
+export interface DeletePersonDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & DeletePersonGroupDefaultHeaders;
+ headers: RawHttpHeaders & DeletePersonDefaultHeaders;
}
-/** A successful call returns the Person Group's information. */
-export interface GetPersonGroup200Response extends HttpResponse {
+/** The final response for long-running deletePerson operation */
+export interface DeletePersonLogicalResponse extends HttpResponse {
status: "200";
- body: PersonGroupOutput;
}
-export interface GetPersonGroupDefaultHeaders {
+/** A successful call returns the person's information. */
+export interface GetPerson200Response extends HttpResponse {
+ status: "200";
+ body: PersonDirectoryPersonOutput;
+}
+
+export interface GetPersonDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetPersonGroupDefaultResponse extends HttpResponse {
+export interface GetPersonDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetPersonGroupDefaultHeaders;
+ headers: RawHttpHeaders & GetPersonDefaultHeaders;
}
/** The request has succeeded. */
-export interface UpdatePersonGroup200Response extends HttpResponse {
+export interface UpdatePerson200Response extends HttpResponse {
status: "200";
}
-export interface UpdatePersonGroupDefaultHeaders {
+export interface UpdatePersonDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface UpdatePersonGroupDefaultResponse extends HttpResponse {
+export interface UpdatePersonDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & UpdatePersonGroupDefaultHeaders;
+ headers: RawHttpHeaders & UpdatePersonDefaultHeaders;
}
-/** A successful call returns an array of Person Groups and their information (personGroupId, name and userData). */
-export interface GetPersonGroups200Response extends HttpResponse {
+/** A successful call returns an array of Person Directory Persons contained in the Dynamic Person Group. */
+export interface GetPersons200Response extends HttpResponse {
status: "200";
- body: Array;
+ body: Array;
}
-export interface GetPersonGroupsDefaultHeaders {
+export interface GetPersonsDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetPersonGroupsDefaultResponse extends HttpResponse {
+export interface GetPersonsDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetPersonGroupsDefaultHeaders;
+ headers: RawHttpHeaders & GetPersonsDefaultHeaders;
}
-/** A successful call returns the Person Group's training status. */
-export interface GetPersonGroupTrainingStatus200Response extends HttpResponse {
+/** A successful call returns an array of dynamicPersonGroups information that reference the provided personId. */
+export interface GetDynamicPersonGroupReferences200Response extends HttpResponse {
status: "200";
- body: TrainingResultOutput;
+ body: ListGroupReferenceResultOutput;
}
-export interface GetPersonGroupTrainingStatusDefaultHeaders {
+export interface GetDynamicPersonGroupReferencesDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetPersonGroupTrainingStatusDefaultResponse extends HttpResponse {
+export interface GetDynamicPersonGroupReferencesDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetPersonGroupTrainingStatusDefaultHeaders;
+ headers: RawHttpHeaders & GetDynamicPersonGroupReferencesDefaultHeaders;
}
-export interface TrainPersonGroup202Headers {
+export interface AddPersonFace202Headers {
"operation-location": string;
+ location: string;
}
-/** A successful call returns an empty response body. */
-export interface TrainPersonGroup202Response extends HttpResponse {
+/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. */
+export interface AddPersonFace202Response extends HttpResponse {
status: "202";
- headers: RawHttpHeaders & TrainPersonGroup202Headers;
+ body: AddFaceResultOutput;
+ headers: RawHttpHeaders & AddPersonFace202Headers;
}
-export interface TrainPersonGroupDefaultHeaders {
+export interface AddPersonFaceDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface TrainPersonGroupDefaultResponse extends HttpResponse {
+export interface AddPersonFaceDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & TrainPersonGroupDefaultHeaders;
+ headers: RawHttpHeaders & AddPersonFaceDefaultHeaders;
}
-/** The final response for long-running trainPersonGroup operation */
-export interface TrainPersonGroupLogicalResponse extends HttpResponse {
+/** The final response for long-running addPersonFace operation */
+export interface AddPersonFaceLogicalResponse extends HttpResponse {
status: "200";
+ body: AddFaceResultOutput;
}
-/** A successful call returns a new personId created. */
-export interface CreatePersonGroupPerson200Response extends HttpResponse {
- status: "200";
- body: CreatePersonResultOutput;
+export interface AddPersonFaceFromUrl202Headers {
+ "operation-location": string;
+ location: string;
}
-export interface CreatePersonGroupPersonDefaultHeaders {
+/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. */
+export interface AddPersonFaceFromUrl202Response extends HttpResponse {
+ status: "202";
+ body: AddFaceResultOutput;
+ headers: RawHttpHeaders & AddPersonFaceFromUrl202Headers;
+}
+
+export interface AddPersonFaceFromUrlDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface CreatePersonGroupPersonDefaultResponse extends HttpResponse {
+export interface AddPersonFaceFromUrlDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & CreatePersonGroupPersonDefaultHeaders;
+ headers: RawHttpHeaders & AddPersonFaceFromUrlDefaultHeaders;
}
-/** The request has succeeded. */
-export interface DeletePersonGroupPerson200Response extends HttpResponse {
+/** The final response for long-running addPersonFaceFromUrl operation */
+export interface AddPersonFaceFromUrlLogicalResponse extends HttpResponse {
status: "200";
+ body: AddFaceResultOutput;
}
-export interface DeletePersonGroupPersonDefaultHeaders {
+export interface DeletePersonFace202Headers {
+ "operation-location": string;
+}
+
+/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. */
+export interface DeletePersonFace202Response extends HttpResponse {
+ status: "202";
+ headers: RawHttpHeaders & DeletePersonFace202Headers;
+}
+
+export interface DeletePersonFaceDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface DeletePersonGroupPersonDefaultResponse extends HttpResponse {
+export interface DeletePersonFaceDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & DeletePersonGroupPersonDefaultHeaders;
+ headers: RawHttpHeaders & DeletePersonFaceDefaultHeaders;
}
-/** A successful call returns the person's information. */
-export interface GetPersonGroupPerson200Response extends HttpResponse {
+/** The final response for long-running deletePersonFace operation */
+export interface DeletePersonFaceLogicalResponse extends HttpResponse {
status: "200";
- body: PersonGroupPersonOutput;
}
-export interface GetPersonGroupPersonDefaultHeaders {
+/** A successful call returns target persisted face's information (persistedFaceId and userData). */
+export interface GetPersonFace200Response extends HttpResponse {
+ status: "200";
+ body: PersonDirectoryFaceOutput;
+}
+
+export interface GetPersonFaceDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetPersonGroupPersonDefaultResponse extends HttpResponse {
+export interface GetPersonFaceDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetPersonGroupPersonDefaultHeaders;
+ headers: RawHttpHeaders & GetPersonFaceDefaultHeaders;
}
/** The request has succeeded. */
-export interface UpdatePersonGroupPerson200Response extends HttpResponse {
+export interface UpdatePersonFace200Response extends HttpResponse {
status: "200";
}
-export interface UpdatePersonGroupPersonDefaultHeaders {
+export interface UpdatePersonFaceDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface UpdatePersonGroupPersonDefaultResponse extends HttpResponse {
+export interface UpdatePersonFaceDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & UpdatePersonGroupPersonDefaultHeaders;
+ headers: RawHttpHeaders & UpdatePersonFaceDefaultHeaders;
}
-/** A successful call returns an array of person information that belong to the Person Group. */
-export interface GetPersonGroupPersons200Response extends HttpResponse {
+/** A successful call returns an array of persistedFaceIds and and a person ID. */
+export interface GetPersonFaces200Response extends HttpResponse {
status: "200";
- body: Array;
+ body: ListFaceResultOutput;
}
-export interface GetPersonGroupPersonsDefaultHeaders {
+export interface GetPersonFacesDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetPersonGroupPersonsDefaultResponse extends HttpResponse {
+export interface GetPersonFacesDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetPersonGroupPersonsDefaultHeaders;
+ headers: RawHttpHeaders & GetPersonFacesDefaultHeaders;
}
-/** A successful call returns a new persistedFaceId. */
-export interface AddPersonGroupPersonFaceFromUrl200Response extends HttpResponse {
- status: "200";
- body: AddFaceResultOutput;
+export interface CreateDynamicPersonGroupWithPerson202Headers {
+ "operation-location": string;
}
-export interface AddPersonGroupPersonFaceFromUrlDefaultHeaders {
+/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. The URL provides the status of when Person Directory "Get Dynamic Person Group References" will return the changes made in this request. */
+export interface CreateDynamicPersonGroupWithPerson202Response extends HttpResponse {
+ status: "202";
+ headers: RawHttpHeaders & CreateDynamicPersonGroupWithPerson202Headers;
+}
+
+export interface CreateDynamicPersonGroupWithPersonDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface AddPersonGroupPersonFaceFromUrlDefaultResponse extends HttpResponse {
+export interface CreateDynamicPersonGroupWithPersonDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & AddPersonGroupPersonFaceFromUrlDefaultHeaders;
+ headers: RawHttpHeaders & CreateDynamicPersonGroupWithPersonDefaultHeaders;
}
-/** A successful call returns a new persistedFaceId. */
-export interface AddPersonGroupPersonFace200Response extends HttpResponse {
+/** The final response for long-running createDynamicPersonGroupWithPerson operation */
+export interface CreateDynamicPersonGroupWithPersonLogicalResponse extends HttpResponse {
status: "200";
- body: AddFaceResultOutput;
}
-export interface AddPersonGroupPersonFaceDefaultHeaders {
+/** The request has succeeded. */
+export interface CreateDynamicPersonGroup200Response extends HttpResponse {
+ status: "200";
+}
+
+export interface CreateDynamicPersonGroupDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface AddPersonGroupPersonFaceDefaultResponse extends HttpResponse {
+export interface CreateDynamicPersonGroupDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & AddPersonGroupPersonFaceDefaultHeaders;
+ headers: RawHttpHeaders & CreateDynamicPersonGroupDefaultHeaders;
}
-/** The request has succeeded. */
-export interface DeletePersonGroupPersonFace200Response extends HttpResponse {
- status: "200";
+export interface DeleteDynamicPersonGroup202Headers {
+ "operation-location": string;
}
-export interface DeletePersonGroupPersonFaceDefaultHeaders {
+/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. The URL provides the status of when Person Directory "Get Dynamic Person Group References" will return the changes made in this request. */
+export interface DeleteDynamicPersonGroup202Response extends HttpResponse {
+ status: "202";
+ headers: RawHttpHeaders & DeleteDynamicPersonGroup202Headers;
+}
+
+export interface DeleteDynamicPersonGroupDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface DeletePersonGroupPersonFaceDefaultResponse extends HttpResponse {
+export interface DeleteDynamicPersonGroupDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & DeletePersonGroupPersonFaceDefaultHeaders;
+ headers: RawHttpHeaders & DeleteDynamicPersonGroupDefaultHeaders;
}
-/** A successful call returns target persisted face's information (persistedFaceId and userData). */
-export interface GetPersonGroupPersonFace200Response extends HttpResponse {
+/** The final response for long-running deleteDynamicPersonGroup operation */
+export interface DeleteDynamicPersonGroupLogicalResponse extends HttpResponse {
status: "200";
- body: PersonGroupPersonFaceOutput;
}
-export interface GetPersonGroupPersonFaceDefaultHeaders {
+/** A successful call returns the Dynamic Person Group's information. */
+export interface GetDynamicPersonGroup200Response extends HttpResponse {
+ status: "200";
+ body: DynamicPersonGroupOutput;
+}
+
+export interface GetDynamicPersonGroupDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetPersonGroupPersonFaceDefaultResponse extends HttpResponse {
+export interface GetDynamicPersonGroupDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetPersonGroupPersonFaceDefaultHeaders;
+ headers: RawHttpHeaders & GetDynamicPersonGroupDefaultHeaders;
}
-/** The request has succeeded. */
-export interface UpdatePersonGroupPersonFace200Response extends HttpResponse {
- status: "200";
+export interface UpdateDynamicPersonGroupWithPersonChanges202Headers {
+ "operation-location": string;
}
-export interface UpdatePersonGroupPersonFaceDefaultHeaders {
+/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. The URL provides the status of when Person Directory "Get Dynamic Person Group References" will return the changes made in this request. */
+export interface UpdateDynamicPersonGroupWithPersonChanges202Response extends HttpResponse {
+ status: "202";
+ headers: RawHttpHeaders & UpdateDynamicPersonGroupWithPersonChanges202Headers;
+}
+
+export interface UpdateDynamicPersonGroupWithPersonChangesDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface UpdatePersonGroupPersonFaceDefaultResponse extends HttpResponse {
+export interface UpdateDynamicPersonGroupWithPersonChangesDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & UpdatePersonGroupPersonFaceDefaultHeaders;
+ headers: RawHttpHeaders & UpdateDynamicPersonGroupWithPersonChangesDefaultHeaders;
+}
+
+/** The final response for long-running updateDynamicPersonGroupWithPersonChanges operation */
+export interface UpdateDynamicPersonGroupWithPersonChangesLogicalResponse extends HttpResponse {
+ status: "200";
}
/** The request has succeeded. */
-export interface CreateLargePersonGroup200Response extends HttpResponse {
+export interface UpdateDynamicPersonGroup200Response extends HttpResponse {
status: "200";
}
-export interface CreateLargePersonGroupDefaultHeaders {
+export interface UpdateDynamicPersonGroupDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface CreateLargePersonGroupDefaultResponse extends HttpResponse {
+export interface UpdateDynamicPersonGroupDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & CreateLargePersonGroupDefaultHeaders;
+ headers: RawHttpHeaders & UpdateDynamicPersonGroupDefaultHeaders;
}
-/** The request has succeeded. */
-export interface DeleteLargePersonGroup200Response extends HttpResponse {
+/** A successful call returns an array of Dynamic Person Groups and their information (dynamicPersonGroupId, name and userData). */
+export interface GetDynamicPersonGroups200Response extends HttpResponse {
status: "200";
+ body: Array;
}
-export interface DeleteLargePersonGroupDefaultHeaders {
+export interface GetDynamicPersonGroupsDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface DeleteLargePersonGroupDefaultResponse extends HttpResponse {
+export interface GetDynamicPersonGroupsDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & DeleteLargePersonGroupDefaultHeaders;
+ headers: RawHttpHeaders & GetDynamicPersonGroupsDefaultHeaders;
}
-/** A successful call returns the Large Person Group's information. */
-export interface GetLargePersonGroup200Response extends HttpResponse {
+/** A successful call returns an array of person information in the Person Directory. */
+export interface GetDynamicPersonGroupPersons200Response extends HttpResponse {
status: "200";
- body: LargePersonGroupOutput;
+ body: ListPersonResultOutput;
}
-export interface GetLargePersonGroupDefaultHeaders {
+export interface GetDynamicPersonGroupPersonsDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetLargePersonGroupDefaultResponse extends HttpResponse {
+export interface GetDynamicPersonGroupPersonsDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetLargePersonGroupDefaultHeaders;
+ headers: RawHttpHeaders & GetDynamicPersonGroupPersonsDefaultHeaders;
}
/** The request has succeeded. */
-export interface UpdateLargePersonGroup200Response extends HttpResponse {
- status: "200";
-}
-
-export interface UpdateLargePersonGroupDefaultHeaders {
- /** String error code indicating what went wrong. */
- "x-ms-error-code"?: string;
-}
-
-export interface UpdateLargePersonGroupDefaultResponse extends HttpResponse {
- status: string;
- body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & UpdateLargePersonGroupDefaultHeaders;
-}
-
-/** A successful call returns an array of Large Person Groups and their information (largePersonGroupId, name and userData). */
-export interface GetLargePersonGroups200Response extends HttpResponse {
- status: "200";
- body: Array;
-}
-
-export interface GetLargePersonGroupsDefaultHeaders {
- /** String error code indicating what went wrong. */
- "x-ms-error-code"?: string;
-}
-
-export interface GetLargePersonGroupsDefaultResponse extends HttpResponse {
- status: string;
- body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetLargePersonGroupsDefaultHeaders;
-}
-
-/** A successful call returns the Large Person Group's training status. */
-export interface GetLargePersonGroupTrainingStatus200Response extends HttpResponse {
- status: "200";
- body: TrainingResultOutput;
-}
-
-export interface GetLargePersonGroupTrainingStatusDefaultHeaders {
- /** String error code indicating what went wrong. */
- "x-ms-error-code"?: string;
-}
-
-export interface GetLargePersonGroupTrainingStatusDefaultResponse extends HttpResponse {
- status: string;
- body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetLargePersonGroupTrainingStatusDefaultHeaders;
-}
-
-export interface TrainLargePersonGroup202Headers {
- "operation-location": string;
-}
-
-/** A successful call returns an empty response body. */
-export interface TrainLargePersonGroup202Response extends HttpResponse {
- status: "202";
- headers: RawHttpHeaders & TrainLargePersonGroup202Headers;
-}
-
-export interface TrainLargePersonGroupDefaultHeaders {
- /** String error code indicating what went wrong. */
- "x-ms-error-code"?: string;
-}
-
-export interface TrainLargePersonGroupDefaultResponse extends HttpResponse {
- status: string;
- body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & TrainLargePersonGroupDefaultHeaders;
-}
-
-/** The final response for long-running trainLargePersonGroup operation */
-export interface TrainLargePersonGroupLogicalResponse extends HttpResponse {
- status: "200";
-}
-
-/** A successful call returns a new personId created. */
-export interface CreateLargePersonGroupPerson200Response extends HttpResponse {
+export interface CreatePersonGroup200Response extends HttpResponse {
status: "200";
- body: CreatePersonResultOutput;
}
-export interface CreateLargePersonGroupPersonDefaultHeaders {
+export interface CreatePersonGroupDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface CreateLargePersonGroupPersonDefaultResponse extends HttpResponse {
+export interface CreatePersonGroupDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & CreateLargePersonGroupPersonDefaultHeaders;
+ headers: RawHttpHeaders & CreatePersonGroupDefaultHeaders;
}
/** The request has succeeded. */
-export interface DeleteLargePersonGroupPerson200Response extends HttpResponse {
+export interface DeletePersonGroup200Response extends HttpResponse {
status: "200";
}
-export interface DeleteLargePersonGroupPersonDefaultHeaders {
+export interface DeletePersonGroupDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface DeleteLargePersonGroupPersonDefaultResponse extends HttpResponse {
+export interface DeletePersonGroupDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & DeleteLargePersonGroupPersonDefaultHeaders;
+ headers: RawHttpHeaders & DeletePersonGroupDefaultHeaders;
}
-/** A successful call returns the person's information. */
-export interface GetLargePersonGroupPerson200Response extends HttpResponse {
+/** A successful call returns the Person Group's information. */
+export interface GetPersonGroup200Response extends HttpResponse {
status: "200";
- body: LargePersonGroupPersonOutput;
+ body: PersonGroupOutput;
}
-export interface GetLargePersonGroupPersonDefaultHeaders {
+export interface GetPersonGroupDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetLargePersonGroupPersonDefaultResponse extends HttpResponse {
+export interface GetPersonGroupDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetLargePersonGroupPersonDefaultHeaders;
+ headers: RawHttpHeaders & GetPersonGroupDefaultHeaders;
}
/** The request has succeeded. */
-export interface UpdateLargePersonGroupPerson200Response extends HttpResponse {
+export interface UpdatePersonGroup200Response extends HttpResponse {
status: "200";
}
-export interface UpdateLargePersonGroupPersonDefaultHeaders {
+export interface UpdatePersonGroupDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface UpdateLargePersonGroupPersonDefaultResponse extends HttpResponse {
+export interface UpdatePersonGroupDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & UpdateLargePersonGroupPersonDefaultHeaders;
+ headers: RawHttpHeaders & UpdatePersonGroupDefaultHeaders;
}
-/** A successful call returns an array of person information that belong to the Large Person Group. */
-export interface GetLargePersonGroupPersons200Response extends HttpResponse {
+/** A successful call returns an array of Person Groups and their information (personGroupId, name and userData). */
+export interface GetPersonGroups200Response extends HttpResponse {
status: "200";
- body: Array;
+ body: Array;
}
-export interface GetLargePersonGroupPersonsDefaultHeaders {
+export interface GetPersonGroupsDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetLargePersonGroupPersonsDefaultResponse extends HttpResponse {
+export interface GetPersonGroupsDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetLargePersonGroupPersonsDefaultHeaders;
+ headers: RawHttpHeaders & GetPersonGroupsDefaultHeaders;
}
-/** A successful call returns a new persistedFaceId. */
-export interface AddLargePersonGroupPersonFaceFromUrl200Response extends HttpResponse {
+/** A successful call returns the Person Group's training status. */
+export interface GetPersonGroupTrainingStatus200Response extends HttpResponse {
status: "200";
- body: AddFaceResultOutput;
+ body: TrainingResultOutput;
}
-export interface AddLargePersonGroupPersonFaceFromUrlDefaultHeaders {
+export interface GetPersonGroupTrainingStatusDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface AddLargePersonGroupPersonFaceFromUrlDefaultResponse extends HttpResponse {
+export interface GetPersonGroupTrainingStatusDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & AddLargePersonGroupPersonFaceFromUrlDefaultHeaders;
-}
-
-/** A successful call returns a new persistedFaceId. */
-export interface AddLargePersonGroupPersonFace200Response extends HttpResponse {
- status: "200";
- body: AddFaceResultOutput;
-}
-
-export interface AddLargePersonGroupPersonFaceDefaultHeaders {
- /** String error code indicating what went wrong. */
- "x-ms-error-code"?: string;
+ headers: RawHttpHeaders & GetPersonGroupTrainingStatusDefaultHeaders;
}
-export interface AddLargePersonGroupPersonFaceDefaultResponse extends HttpResponse {
- status: string;
- body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & AddLargePersonGroupPersonFaceDefaultHeaders;
+export interface TrainPersonGroup202Headers {
+ "operation-location": string;
}
-/** The request has succeeded. */
-export interface DeleteLargePersonGroupPersonFace200Response extends HttpResponse {
- status: "200";
+/** A successful call returns an empty response body. */
+export interface TrainPersonGroup202Response extends HttpResponse {
+ status: "202";
+ headers: RawHttpHeaders & TrainPersonGroup202Headers;
}
-export interface DeleteLargePersonGroupPersonFaceDefaultHeaders {
+export interface TrainPersonGroupDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface DeleteLargePersonGroupPersonFaceDefaultResponse extends HttpResponse {
+export interface TrainPersonGroupDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & DeleteLargePersonGroupPersonFaceDefaultHeaders;
+ headers: RawHttpHeaders & TrainPersonGroupDefaultHeaders;
}
-/** A successful call returns target persisted face's information (persistedFaceId and userData). */
-export interface GetLargePersonGroupPersonFace200Response extends HttpResponse {
+/** The final response for long-running trainPersonGroup operation */
+export interface TrainPersonGroupLogicalResponse extends HttpResponse {
status: "200";
- body: LargePersonGroupPersonFaceOutput;
}
-export interface GetLargePersonGroupPersonFaceDefaultHeaders {
- /** String error code indicating what went wrong. */
- "x-ms-error-code"?: string;
-}
-
-export interface GetLargePersonGroupPersonFaceDefaultResponse extends HttpResponse {
- status: string;
- body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetLargePersonGroupPersonFaceDefaultHeaders;
-}
-
-/** The request has succeeded. */
-export interface UpdateLargePersonGroupPersonFace200Response extends HttpResponse {
+/** A successful call returns a new personId created. */
+export interface CreatePersonGroupPerson200Response extends HttpResponse {
status: "200";
-}
-
-export interface UpdateLargePersonGroupPersonFaceDefaultHeaders {
- /** String error code indicating what went wrong. */
- "x-ms-error-code"?: string;
-}
-
-export interface UpdateLargePersonGroupPersonFaceDefaultResponse extends HttpResponse {
- status: string;
- body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & UpdateLargePersonGroupPersonFaceDefaultHeaders;
-}
-
-export interface CreatePerson202Headers {
- "operation-location": string;
- location: string;
-}
-
-/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. */
-export interface CreatePerson202Response extends HttpResponse {
- status: "202";
body: CreatePersonResultOutput;
- headers: RawHttpHeaders & CreatePerson202Headers;
}
-export interface CreatePersonDefaultHeaders {
+export interface CreatePersonGroupPersonDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface CreatePersonDefaultResponse extends HttpResponse {
+export interface CreatePersonGroupPersonDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & CreatePersonDefaultHeaders;
+ headers: RawHttpHeaders & CreatePersonGroupPersonDefaultHeaders;
}
-/** The final response for long-running createPerson operation */
-export interface CreatePersonLogicalResponse extends HttpResponse {
+/** The request has succeeded. */
+export interface DeletePersonGroupPerson200Response extends HttpResponse {
status: "200";
- body: CreatePersonResultOutput;
}
-export interface DeletePerson202Headers {
- "operation-location": string;
-}
-
-/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. */
-export interface DeletePerson202Response extends HttpResponse {
- status: "202";
- headers: RawHttpHeaders & DeletePerson202Headers;
-}
-
-export interface DeletePersonDefaultHeaders {
+export interface DeletePersonGroupPersonDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface DeletePersonDefaultResponse extends HttpResponse {
+export interface DeletePersonGroupPersonDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & DeletePersonDefaultHeaders;
-}
-
-/** The final response for long-running deletePerson operation */
-export interface DeletePersonLogicalResponse extends HttpResponse {
- status: "200";
+ headers: RawHttpHeaders & DeletePersonGroupPersonDefaultHeaders;
}
/** A successful call returns the person's information. */
-export interface GetPerson200Response extends HttpResponse {
+export interface GetPersonGroupPerson200Response extends HttpResponse {
status: "200";
- body: PersonDirectoryPersonOutput;
+ body: PersonGroupPersonOutput;
}
-export interface GetPersonDefaultHeaders {
+export interface GetPersonGroupPersonDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetPersonDefaultResponse extends HttpResponse {
+export interface GetPersonGroupPersonDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetPersonDefaultHeaders;
+ headers: RawHttpHeaders & GetPersonGroupPersonDefaultHeaders;
}
/** The request has succeeded. */
-export interface UpdatePerson200Response extends HttpResponse {
- status: "200";
-}
-
-export interface UpdatePersonDefaultHeaders {
- /** String error code indicating what went wrong. */
- "x-ms-error-code"?: string;
-}
-
-export interface UpdatePersonDefaultResponse extends HttpResponse {
- status: string;
- body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & UpdatePersonDefaultHeaders;
-}
-
-/** A successful call returns an array of Person Directory Persons contained in the Dynamic Person Group. */
-export interface GetPersons200Response extends HttpResponse {
+export interface UpdatePersonGroupPerson200Response extends HttpResponse {
status: "200";
- body: Array;
}
-export interface GetPersonsDefaultHeaders {
+export interface UpdatePersonGroupPersonDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetPersonsDefaultResponse extends HttpResponse {
+export interface UpdatePersonGroupPersonDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetPersonsDefaultHeaders;
+ headers: RawHttpHeaders & UpdatePersonGroupPersonDefaultHeaders;
}
-/** A successful call returns an array of dynamicPersonGroups information that reference the provided personId. */
-export interface GetDynamicPersonGroupReferences200Response extends HttpResponse {
+/** A successful call returns an array of person information that belong to the Person Group. */
+export interface GetPersonGroupPersons200Response extends HttpResponse {
status: "200";
- body: ListGroupReferenceResultOutput;
-}
-
-export interface GetDynamicPersonGroupReferencesDefaultHeaders {
- /** String error code indicating what went wrong. */
- "x-ms-error-code"?: string;
-}
-
-export interface GetDynamicPersonGroupReferencesDefaultResponse extends HttpResponse {
- status: string;
- body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetDynamicPersonGroupReferencesDefaultHeaders;
-}
-
-export interface AddPersonFace202Headers {
- "operation-location": string;
- location: string;
-}
-
-/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. */
-export interface AddPersonFace202Response extends HttpResponse {
- status: "202";
- body: AddFaceResultOutput;
- headers: RawHttpHeaders & AddPersonFace202Headers;
+ body: Array;
}
-export interface AddPersonFaceDefaultHeaders {
+export interface GetPersonGroupPersonsDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface AddPersonFaceDefaultResponse extends HttpResponse {
+export interface GetPersonGroupPersonsDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & AddPersonFaceDefaultHeaders;
+ headers: RawHttpHeaders & GetPersonGroupPersonsDefaultHeaders;
}
-/** The final response for long-running addPersonFace operation */
-export interface AddPersonFaceLogicalResponse extends HttpResponse {
+/** A successful call returns a new persistedFaceId. */
+export interface AddPersonGroupPersonFaceFromUrl200Response extends HttpResponse {
status: "200";
body: AddFaceResultOutput;
}
-export interface AddPersonFaceFromUrl202Headers {
- "operation-location": string;
- location: string;
-}
-
-/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. */
-export interface AddPersonFaceFromUrl202Response extends HttpResponse {
- status: "202";
- body: AddFaceResultOutput;
- headers: RawHttpHeaders & AddPersonFaceFromUrl202Headers;
-}
-
-export interface AddPersonFaceFromUrlDefaultHeaders {
+export interface AddPersonGroupPersonFaceFromUrlDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface AddPersonFaceFromUrlDefaultResponse extends HttpResponse {
+export interface AddPersonGroupPersonFaceFromUrlDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & AddPersonFaceFromUrlDefaultHeaders;
+ headers: RawHttpHeaders & AddPersonGroupPersonFaceFromUrlDefaultHeaders;
}
-/** The final response for long-running addPersonFaceFromUrl operation */
-export interface AddPersonFaceFromUrlLogicalResponse extends HttpResponse {
+/** A successful call returns a new persistedFaceId. */
+export interface AddPersonGroupPersonFace200Response extends HttpResponse {
status: "200";
body: AddFaceResultOutput;
}
-export interface DeletePersonFace202Headers {
- "operation-location": string;
-}
-
-/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. */
-export interface DeletePersonFace202Response extends HttpResponse {
- status: "202";
- headers: RawHttpHeaders & DeletePersonFace202Headers;
-}
-
-export interface DeletePersonFaceDefaultHeaders {
- /** String error code indicating what went wrong. */
- "x-ms-error-code"?: string;
-}
-
-export interface DeletePersonFaceDefaultResponse extends HttpResponse {
- status: string;
- body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & DeletePersonFaceDefaultHeaders;
-}
-
-/** The final response for long-running deletePersonFace operation */
-export interface DeletePersonFaceLogicalResponse extends HttpResponse {
- status: "200";
-}
-
-/** A successful call returns target persisted face's information (persistedFaceId and userData). */
-export interface GetPersonFace200Response extends HttpResponse {
- status: "200";
- body: PersonDirectoryFaceOutput;
-}
-
-export interface GetPersonFaceDefaultHeaders {
+export interface AddPersonGroupPersonFaceDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetPersonFaceDefaultResponse extends HttpResponse {
+export interface AddPersonGroupPersonFaceDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetPersonFaceDefaultHeaders;
+ headers: RawHttpHeaders & AddPersonGroupPersonFaceDefaultHeaders;
}
/** The request has succeeded. */
-export interface UpdatePersonFace200Response extends HttpResponse {
- status: "200";
-}
-
-export interface UpdatePersonFaceDefaultHeaders {
- /** String error code indicating what went wrong. */
- "x-ms-error-code"?: string;
-}
-
-export interface UpdatePersonFaceDefaultResponse extends HttpResponse {
- status: string;
- body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & UpdatePersonFaceDefaultHeaders;
-}
-
-/** A successful call returns an array of persistedFaceIds and and a person ID. */
-export interface GetPersonFaces200Response extends HttpResponse {
+export interface DeletePersonGroupPersonFace200Response extends HttpResponse {
status: "200";
- body: ListFaceResultOutput;
}
-export interface GetPersonFacesDefaultHeaders {
+export interface DeletePersonGroupPersonFaceDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetPersonFacesDefaultResponse extends HttpResponse {
+export interface DeletePersonGroupPersonFaceDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetPersonFacesDefaultHeaders;
-}
-
-export interface CreateDynamicPersonGroupWithPerson202Headers {
- "operation-location": string;
+ headers: RawHttpHeaders & DeletePersonGroupPersonFaceDefaultHeaders;
}
-/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. The URL provides the status of when Person Directory "Get Dynamic Person Group References" will return the changes made in this request. */
-export interface CreateDynamicPersonGroupWithPerson202Response extends HttpResponse {
- status: "202";
- headers: RawHttpHeaders & CreateDynamicPersonGroupWithPerson202Headers;
+/** A successful call returns target persisted face's information (persistedFaceId and userData). */
+export interface GetPersonGroupPersonFace200Response extends HttpResponse {
+ status: "200";
+ body: PersonGroupPersonFaceOutput;
}
-export interface CreateDynamicPersonGroupWithPersonDefaultHeaders {
+export interface GetPersonGroupPersonFaceDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface CreateDynamicPersonGroupWithPersonDefaultResponse extends HttpResponse {
+export interface GetPersonGroupPersonFaceDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & CreateDynamicPersonGroupWithPersonDefaultHeaders;
-}
-
-/** The final response for long-running createDynamicPersonGroupWithPerson operation */
-export interface CreateDynamicPersonGroupWithPersonLogicalResponse extends HttpResponse {
- status: "200";
+ headers: RawHttpHeaders & GetPersonGroupPersonFaceDefaultHeaders;
}
/** The request has succeeded. */
-export interface CreateDynamicPersonGroup200Response extends HttpResponse {
+export interface UpdatePersonGroupPersonFace200Response extends HttpResponse {
status: "200";
}
-export interface CreateDynamicPersonGroupDefaultHeaders {
+export interface UpdatePersonGroupPersonFaceDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface CreateDynamicPersonGroupDefaultResponse extends HttpResponse {
+export interface UpdatePersonGroupPersonFaceDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & CreateDynamicPersonGroupDefaultHeaders;
-}
-
-export interface DeleteDynamicPersonGroup202Headers {
- "operation-location": string;
+ headers: RawHttpHeaders & UpdatePersonGroupPersonFaceDefaultHeaders;
}
-/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. The URL provides the status of when Person Directory "Get Dynamic Person Group References" will return the changes made in this request. */
-export interface DeleteDynamicPersonGroup202Response extends HttpResponse {
- status: "202";
- headers: RawHttpHeaders & DeleteDynamicPersonGroup202Headers;
+/** The request has succeeded. */
+export interface CreateLargePersonGroup200Response extends HttpResponse {
+ status: "200";
}
-export interface DeleteDynamicPersonGroupDefaultHeaders {
+export interface CreateLargePersonGroupDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface DeleteDynamicPersonGroupDefaultResponse extends HttpResponse {
+export interface CreateLargePersonGroupDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & DeleteDynamicPersonGroupDefaultHeaders;
-}
-
-/** The final response for long-running deleteDynamicPersonGroup operation */
-export interface DeleteDynamicPersonGroupLogicalResponse extends HttpResponse {
- status: "200";
+ headers: RawHttpHeaders & CreateLargePersonGroupDefaultHeaders;
}
-/** A successful call returns the Dynamic Person Group's information. */
-export interface GetDynamicPersonGroup200Response extends HttpResponse {
+/** The request has succeeded. */
+export interface DeleteLargePersonGroup200Response extends HttpResponse {
status: "200";
- body: DynamicPersonGroupOutput;
}
-export interface GetDynamicPersonGroupDefaultHeaders {
+export interface DeleteLargePersonGroupDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetDynamicPersonGroupDefaultResponse extends HttpResponse {
+export interface DeleteLargePersonGroupDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetDynamicPersonGroupDefaultHeaders;
-}
-
-export interface UpdateDynamicPersonGroupWithPersonChanges202Headers {
- "operation-location": string;
+ headers: RawHttpHeaders & DeleteLargePersonGroupDefaultHeaders;
}
-/** A successful call returns an empty response body. The service has accepted the request and will start processing soon. The client can query the operation status and result using the URL specified in the 'Operation-Location' response header. The URL expires in 48 hours. The URL provides the status of when Person Directory "Get Dynamic Person Group References" will return the changes made in this request. */
-export interface UpdateDynamicPersonGroupWithPersonChanges202Response extends HttpResponse {
- status: "202";
- headers: RawHttpHeaders & UpdateDynamicPersonGroupWithPersonChanges202Headers;
+/** A successful call returns the Large Person Group's information. */
+export interface GetLargePersonGroup200Response extends HttpResponse {
+ status: "200";
+ body: LargePersonGroupOutput;
}
-export interface UpdateDynamicPersonGroupWithPersonChangesDefaultHeaders {
+export interface GetLargePersonGroupDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface UpdateDynamicPersonGroupWithPersonChangesDefaultResponse extends HttpResponse {
+export interface GetLargePersonGroupDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & UpdateDynamicPersonGroupWithPersonChangesDefaultHeaders;
-}
-
-/** The final response for long-running updateDynamicPersonGroupWithPersonChanges operation */
-export interface UpdateDynamicPersonGroupWithPersonChangesLogicalResponse extends HttpResponse {
- status: "200";
+ headers: RawHttpHeaders & GetLargePersonGroupDefaultHeaders;
}
/** The request has succeeded. */
-export interface UpdateDynamicPersonGroup200Response extends HttpResponse {
+export interface UpdateLargePersonGroup200Response extends HttpResponse {
status: "200";
}
-export interface UpdateDynamicPersonGroupDefaultHeaders {
+export interface UpdateLargePersonGroupDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface UpdateDynamicPersonGroupDefaultResponse extends HttpResponse {
+export interface UpdateLargePersonGroupDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & UpdateDynamicPersonGroupDefaultHeaders;
+ headers: RawHttpHeaders & UpdateLargePersonGroupDefaultHeaders;
}
-/** A successful call returns an array of Dynamic Person Groups and their information (dynamicPersonGroupId, name and userData). */
-export interface GetDynamicPersonGroups200Response extends HttpResponse {
+/** A successful call returns an array of Large Person Groups and their information (largePersonGroupId, name and userData). */
+export interface GetLargePersonGroups200Response extends HttpResponse {
status: "200";
- body: Array;
+ body: Array;
}
-export interface GetDynamicPersonGroupsDefaultHeaders {
+export interface GetLargePersonGroupsDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetDynamicPersonGroupsDefaultResponse extends HttpResponse {
+export interface GetLargePersonGroupsDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetDynamicPersonGroupsDefaultHeaders;
+ headers: RawHttpHeaders & GetLargePersonGroupsDefaultHeaders;
}
-/** A successful call returns an array of person information in the Person Directory. */
-export interface GetDynamicPersonGroupPersons200Response extends HttpResponse {
+/** A successful call returns the Large Person Group's training status. */
+export interface GetLargePersonGroupTrainingStatus200Response extends HttpResponse {
status: "200";
- body: ListPersonResultOutput;
+ body: TrainingResultOutput;
}
-export interface GetDynamicPersonGroupPersonsDefaultHeaders {
+export interface GetLargePersonGroupTrainingStatusDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetDynamicPersonGroupPersonsDefaultResponse extends HttpResponse {
+export interface GetLargePersonGroupTrainingStatusDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetDynamicPersonGroupPersonsDefaultHeaders;
+ headers: RawHttpHeaders & GetLargePersonGroupTrainingStatusDefaultHeaders;
}
-/** A successful call create a session for a client device and provide an authorization token for use by the client application for a limited purpose and time. */
-export interface CreateLivenessSession200Response extends HttpResponse {
- status: "200";
- body: CreateLivenessSessionResultOutput;
+export interface TrainLargePersonGroup202Headers {
+ "operation-location": string;
}
-export interface CreateLivenessSessionDefaultHeaders {
+/** A successful call returns an empty response body. */
+export interface TrainLargePersonGroup202Response extends HttpResponse {
+ status: "202";
+ headers: RawHttpHeaders & TrainLargePersonGroup202Headers;
+}
+
+export interface TrainLargePersonGroupDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface CreateLivenessSessionDefaultResponse extends HttpResponse {
+export interface TrainLargePersonGroupDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & CreateLivenessSessionDefaultHeaders;
+ headers: RawHttpHeaders & TrainLargePersonGroupDefaultHeaders;
}
-/** The request has succeeded. */
-export interface DeleteLivenessSession200Response extends HttpResponse {
+/** The final response for long-running trainLargePersonGroup operation */
+export interface TrainLargePersonGroupLogicalResponse extends HttpResponse {
status: "200";
}
-export interface DeleteLivenessSessionDefaultHeaders {
+/** A successful call returns a new personId created. */
+export interface CreateLargePersonGroupPerson200Response extends HttpResponse {
+ status: "200";
+ body: CreatePersonResultOutput;
+}
+
+export interface CreateLargePersonGroupPersonDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface DeleteLivenessSessionDefaultResponse extends HttpResponse {
+export interface CreateLargePersonGroupPersonDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & DeleteLivenessSessionDefaultHeaders;
+ headers: RawHttpHeaders & CreateLargePersonGroupPersonDefaultHeaders;
}
/** The request has succeeded. */
-export interface GetLivenessSessionResult200Response extends HttpResponse {
+export interface DeleteLargePersonGroupPerson200Response extends HttpResponse {
status: "200";
- body: LivenessSessionOutput;
}
-export interface GetLivenessSessionResultDefaultHeaders {
+export interface DeleteLargePersonGroupPersonDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetLivenessSessionResultDefaultResponse extends HttpResponse {
+export interface DeleteLargePersonGroupPersonDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetLivenessSessionResultDefaultHeaders;
+ headers: RawHttpHeaders & DeleteLargePersonGroupPersonDefaultHeaders;
}
-/** The request has succeeded. */
-export interface GetLivenessSessions200Response extends HttpResponse {
+/** A successful call returns the person's information. */
+export interface GetLargePersonGroupPerson200Response extends HttpResponse {
status: "200";
- body: Array;
+ body: LargePersonGroupPersonOutput;
}
-export interface GetLivenessSessionsDefaultHeaders {
+export interface GetLargePersonGroupPersonDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetLivenessSessionsDefaultResponse extends HttpResponse {
+export interface GetLargePersonGroupPersonDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetLivenessSessionsDefaultHeaders;
+ headers: RawHttpHeaders & GetLargePersonGroupPersonDefaultHeaders;
}
/** The request has succeeded. */
-export interface GetLivenessSessionAuditEntries200Response extends HttpResponse {
+export interface UpdateLargePersonGroupPerson200Response extends HttpResponse {
status: "200";
- body: Array;
}
-export interface GetLivenessSessionAuditEntriesDefaultHeaders {
+export interface UpdateLargePersonGroupPersonDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetLivenessSessionAuditEntriesDefaultResponse extends HttpResponse {
+export interface UpdateLargePersonGroupPersonDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetLivenessSessionAuditEntriesDefaultHeaders;
+ headers: RawHttpHeaders & UpdateLargePersonGroupPersonDefaultHeaders;
}
-/** A successful call create a session for a client device and provide an authorization token for use by the client application for a limited purpose and time. */
-export interface CreateLivenessWithVerifySessionWithVerifyImage200Response extends HttpResponse {
+/** A successful call returns an array of person information that belong to the Large Person Group. */
+export interface GetLargePersonGroupPersons200Response extends HttpResponse {
status: "200";
- body: CreateLivenessWithVerifySessionResultOutput;
+ body: Array;
}
-export interface CreateLivenessWithVerifySessionWithVerifyImageDefaultHeaders {
+export interface GetLargePersonGroupPersonsDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse
- extends HttpResponse {
+export interface GetLargePersonGroupPersonsDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & CreateLivenessWithVerifySessionWithVerifyImageDefaultHeaders;
+ headers: RawHttpHeaders & GetLargePersonGroupPersonsDefaultHeaders;
}
-/** A successful call create a session for a client device and provide an authorization token for use by the client application for a limited purpose and time. */
-export interface CreateLivenessWithVerifySession200Response extends HttpResponse {
+/** A successful call returns a new persistedFaceId. */
+export interface AddLargePersonGroupPersonFaceFromUrl200Response extends HttpResponse {
status: "200";
- body: CreateLivenessWithVerifySessionResultOutput;
+ body: AddFaceResultOutput;
}
-export interface CreateLivenessWithVerifySessionDefaultHeaders {
+export interface AddLargePersonGroupPersonFaceFromUrlDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface CreateLivenessWithVerifySessionDefaultResponse extends HttpResponse {
+export interface AddLargePersonGroupPersonFaceFromUrlDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & CreateLivenessWithVerifySessionDefaultHeaders;
+ headers: RawHttpHeaders & AddLargePersonGroupPersonFaceFromUrlDefaultHeaders;
}
-/** The request has succeeded. */
-export interface DeleteLivenessWithVerifySession200Response extends HttpResponse {
+/** A successful call returns a new persistedFaceId. */
+export interface AddLargePersonGroupPersonFace200Response extends HttpResponse {
status: "200";
+ body: AddFaceResultOutput;
}
-export interface DeleteLivenessWithVerifySessionDefaultHeaders {
+export interface AddLargePersonGroupPersonFaceDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface DeleteLivenessWithVerifySessionDefaultResponse extends HttpResponse {
+export interface AddLargePersonGroupPersonFaceDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & DeleteLivenessWithVerifySessionDefaultHeaders;
+ headers: RawHttpHeaders & AddLargePersonGroupPersonFaceDefaultHeaders;
}
/** The request has succeeded. */
-export interface GetLivenessWithVerifySessionResult200Response extends HttpResponse {
+export interface DeleteLargePersonGroupPersonFace200Response extends HttpResponse {
status: "200";
- body: LivenessWithVerifySessionOutput;
}
-export interface GetLivenessWithVerifySessionResultDefaultHeaders {
+export interface DeleteLargePersonGroupPersonFaceDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetLivenessWithVerifySessionResultDefaultResponse extends HttpResponse {
+export interface DeleteLargePersonGroupPersonFaceDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetLivenessWithVerifySessionResultDefaultHeaders;
+ headers: RawHttpHeaders & DeleteLargePersonGroupPersonFaceDefaultHeaders;
}
-/** The request has succeeded. */
-export interface GetLivenessWithVerifySessions200Response extends HttpResponse {
+/** A successful call returns target persisted face's information (persistedFaceId and userData). */
+export interface GetLargePersonGroupPersonFace200Response extends HttpResponse {
status: "200";
- body: Array;
+ body: LargePersonGroupPersonFaceOutput;
}
-export interface GetLivenessWithVerifySessionsDefaultHeaders {
+export interface GetLargePersonGroupPersonFaceDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetLivenessWithVerifySessionsDefaultResponse extends HttpResponse {
+export interface GetLargePersonGroupPersonFaceDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetLivenessWithVerifySessionsDefaultHeaders;
+ headers: RawHttpHeaders & GetLargePersonGroupPersonFaceDefaultHeaders;
}
/** The request has succeeded. */
-export interface GetLivenessWithVerifySessionAuditEntries200Response extends HttpResponse {
+export interface UpdateLargePersonGroupPersonFace200Response extends HttpResponse {
status: "200";
- body: Array;
}
-export interface GetLivenessWithVerifySessionAuditEntriesDefaultHeaders {
+export interface UpdateLargePersonGroupPersonFaceDefaultHeaders {
/** String error code indicating what went wrong. */
"x-ms-error-code"?: string;
}
-export interface GetLivenessWithVerifySessionAuditEntriesDefaultResponse extends HttpResponse {
+export interface UpdateLargePersonGroupPersonFaceDefaultResponse extends HttpResponse {
status: string;
body: FaceErrorResponseOutput;
- headers: RawHttpHeaders & GetLivenessWithVerifySessionAuditEntriesDefaultHeaders;
+ headers: RawHttpHeaders & UpdateLargePersonGroupPersonFaceDefaultHeaders;
}
diff --git a/sdk/face/ai-vision-face-rest/test/public/utils/recordedClient.ts b/sdk/face/ai-vision-face-rest/test/public/utils/recordedClient.ts
index 27dc43a3b04c..44638d76ba6e 100644
--- a/sdk/face/ai-vision-face-rest/test/public/utils/recordedClient.ts
+++ b/sdk/face/ai-vision-face-rest/test/public/utils/recordedClient.ts
@@ -18,6 +18,12 @@ const envSetupForPlayback: Record = {
const recorderEnvSetup: RecorderStartOptions = {
envSetupForPlayback,
+ // Ref: https://github.com/Azure/azure-sdk-tools/blob/main/tools/test-proxy/Azure.Sdk.Tools.TestProxy/Common/SanitizerDictionary.cs
+ removeCentralSanitizers: [
+ "AZSDK2030", // HeaderRegexSanitizer("operation-location", value: "https://example.com")
+ "AZSDK3430", // BodyKeySanitizer("$..id")
+ "AZSDK3496", // BodyKeySanitizer("$..resourceLocation")
+ ],
};
/**
diff --git a/sdk/face/ai-vision-face-rest/tsp-location.yaml b/sdk/face/ai-vision-face-rest/tsp-location.yaml
index 1e8e25fc8455..3c246b130875 100644
--- a/sdk/face/ai-vision-face-rest/tsp-location.yaml
+++ b/sdk/face/ai-vision-face-rest/tsp-location.yaml
@@ -1,5 +1,5 @@
additionalDirectories: []
directory: specification/ai/Face
-commit: 37acfe2967e5e1be1169146ac461eb1875c9476e
+commit: 1d2253d1e221541cf05ae5d0dd95bd28c0846238
repo: Azure/azure-rest-api-specs