diff --git a/.gitignore b/.gitignore index 464936dea3a5..7246858f0373 100644 --- a/.gitignore +++ b/.gitignore @@ -195,3 +195,6 @@ sdk/**/sshKey.pub # turbo .turbo + +# vitest results +.vite/vitest/results.json diff --git a/.vscode/cspell.json b/.vscode/cspell.json index 5da0892cef7b..82450f2258e4 100644 --- a/.vscode/cspell.json +++ b/.vscode/cspell.json @@ -136,6 +136,7 @@ "reoffer", "rrggbb", "rushx", + "socketio", "soundex", "southcentralus", "struct", diff --git a/.vscode/settings.json b/.vscode/settings.json index d703f9c1872d..103f8e1f7892 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -36,5 +36,9 @@ "**/*.d.ts": true, "**/test-browser/*": true }, - "typescript.tsdk": "./sdk/core/core-rest-pipeline/node_modules/typescript/lib" + "typescript.tsdk": "./sdk/core/core-rest-pipeline/node_modules/typescript/lib", + "vitest.vitestPackagePath": "common/tools/dev-tool/node_modules/vitest/package.json", + "vitest.experimentalStaticAstCollect": true, + "vitest.configSearchPatternExclude": "{**/node_modules/**,**/.*/**,**/*.d.ts,eng/**,samples/**}", + "vitest.nodeEnv": {} } diff --git a/common/lib/jju/parse.js b/common/lib/jju/parse.js deleted file mode 100644 index f7d89b92064c..000000000000 --- a/common/lib/jju/parse.js +++ /dev/null @@ -1,760 +0,0 @@ - -// RTFM: http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf - -var Uni = require('./unicode') - -function isHexDigit(x) { - return (x >= '0' && x <= '9') - || (x >= 'A' && x <= 'F') - || (x >= 'a' && x <= 'f') -} - -function isOctDigit(x) { - return x >= '0' && x <= '7' -} - -function isDecDigit(x) { - return x >= '0' && x <= '9' -} - -var unescapeMap = { - '\'': '\'', - '"' : '"', - '\\': '\\', - 'b' : '\b', - 'f' : '\f', - 'n' : '\n', - 'r' : '\r', - 't' : '\t', - 'v' : '\v', - '/' : '/', -} - -function formatError(input, msg, position, lineno, column, json5) { - var result = msg + ' at ' + (lineno + 1) + ':' + (column + 1) - , tmppos = position - column - 1 - , srcline = '' - , underline = '' - - var isLineTerminator = json5 ? Uni.isLineTerminator : Uni.isLineTerminatorJSON - - // output no more than 70 characters before the wrong ones - if (tmppos < position - 70) { - tmppos = position - 70 - } - - while (1) { - var chr = input[++tmppos] - - if (isLineTerminator(chr) || tmppos === input.length) { - if (position >= tmppos) { - // ending line error, so show it after the last char - underline += '^' - } - break - } - srcline += chr - - if (position === tmppos) { - underline += '^' - } else if (position > tmppos) { - underline += input[tmppos] === '\t' ? '\t' : ' ' - } - - // output no more than 78 characters on the string - if (srcline.length > 78) break - } - - return result + '\n' + srcline + '\n' + underline -} - -function parse(input, options) { - // parse as a standard JSON mode - var json5 = false - var cjson = false - - if (options.legacy || options.mode === 'json') { - // use json - } else if (options.mode === 'cjson') { - cjson = true - } else if (options.mode === 'json5') { - json5 = true - } else { - // use it by default - json5 = true - } - - var isLineTerminator = json5 ? Uni.isLineTerminator : Uni.isLineTerminatorJSON - var isWhiteSpace = json5 ? Uni.isWhiteSpace : Uni.isWhiteSpaceJSON - - var length = input.length - , lineno = 0 - , linestart = 0 - , position = 0 - , stack = [] - - var tokenStart = function() {} - var tokenEnd = function(v) {return v} - - /* tokenize({ - raw: '...', - type: 'whitespace'|'comment'|'key'|'literal'|'separator'|'newline', - value: 'number'|'string'|'whatever', - path: [...], - }) - */ - if (options._tokenize) { - ;(function() { - var start = null - tokenStart = function() { - if (start !== null) throw Error('internal error, token overlap') - start = position - } - - tokenEnd = function(v, type) { - if (start != position) { - var hash = { - raw: input.substr(start, position-start), - type: type, - stack: stack.slice(0), - } - if (v !== undefined) hash.value = v - options._tokenize.call(null, hash) - } - start = null - return v - } - })() - } - - function fail(msg) { - var column = position - linestart - - if (!msg) { - if (position < length) { - var token = '\'' + - JSON - .stringify(input[position]) - .replace(/^"|"$/g, '') - .replace(/'/g, "\\'") - .replace(/\\"/g, '"') - + '\'' - - if (!msg) msg = 'Unexpected token ' + token - } else { - if (!msg) msg = 'Unexpected end of input' - } - } - - var error = SyntaxError(formatError(input, msg, position, lineno, column, json5)) - error.row = lineno + 1 - error.column = column + 1 - throw error - } - - function newline(chr) { - // account for - if (chr === '\r' && input[position] === '\n') position++ - linestart = position - lineno++ - } - - function parseGeneric() { - var result - - while (position < length) { - tokenStart() - var chr = input[position++] - - if (chr === '"' || (chr === '\'' && json5)) { - return tokenEnd(parseString(chr), 'literal') - - } else if (chr === '{') { - tokenEnd(undefined, 'separator') - return parseObject() - - } else if (chr === '[') { - tokenEnd(undefined, 'separator') - return parseArray() - - } else if (chr === '-' - || chr === '.' - || isDecDigit(chr) - // + number Infinity NaN - || (json5 && (chr === '+' || chr === 'I' || chr === 'N')) - ) { - return tokenEnd(parseNumber(), 'literal') - - } else if (chr === 'n') { - parseKeyword('null') - return tokenEnd(null, 'literal') - - } else if (chr === 't') { - parseKeyword('true') - return tokenEnd(true, 'literal') - - } else if (chr === 'f') { - parseKeyword('false') - return tokenEnd(false, 'literal') - - } else { - position-- - return tokenEnd(undefined) - } - } - } - - function parseKey() { - var result - - while (position < length) { - tokenStart() - var chr = input[position++] - - if (chr === '"' || (chr === '\'' && json5)) { - return tokenEnd(parseString(chr), 'key') - - } else if (chr === '{') { - tokenEnd(undefined, 'separator') - return parseObject() - - } else if (chr === '[') { - tokenEnd(undefined, 'separator') - return parseArray() - - } else if (chr === '.' - || isDecDigit(chr) - ) { - return tokenEnd(parseNumber(true), 'key') - - } else if (json5 - && Uni.isIdentifierStart(chr) || (chr === '\\' && input[position] === 'u')) { - // unicode char or a unicode sequence - var rollback = position - 1 - var result = parseIdentifier() - - if (result === undefined) { - position = rollback - return tokenEnd(undefined) - } else { - return tokenEnd(result, 'key') - } - - } else { - position-- - return tokenEnd(undefined) - } - } - } - - function skipWhiteSpace() { - tokenStart() - while (position < length) { - var chr = input[position++] - - if (isLineTerminator(chr)) { - position-- - tokenEnd(undefined, 'whitespace') - tokenStart() - position++ - newline(chr) - tokenEnd(undefined, 'newline') - tokenStart() - - } else if (isWhiteSpace(chr)) { - // nothing - - } else if (chr === '/' - && (json5 || cjson) - && (input[position] === '/' || input[position] === '*') - ) { - position-- - tokenEnd(undefined, 'whitespace') - tokenStart() - position++ - skipComment(input[position++] === '*') - tokenEnd(undefined, 'comment') - tokenStart() - - } else { - position-- - break - } - } - return tokenEnd(undefined, 'whitespace') - } - - function skipComment(multi) { - while (position < length) { - var chr = input[position++] - - if (isLineTerminator(chr)) { - // LineTerminator is an end of singleline comment - if (!multi) { - // let parent function deal with newline - position-- - return - } - - newline(chr) - - } else if (chr === '*' && multi) { - // end of multiline comment - if (input[position] === '/') { - position++ - return - } - - } else { - // nothing - } - } - - if (multi) { - fail('Unclosed multiline comment') - } - } - - function parseKeyword(keyword) { - // keyword[0] is not checked because it should've checked earlier - var _pos = position - var len = keyword.length - for (var i=1; i= length || keyword[i] != input[position]) { - position = _pos-1 - fail() - } - position++ - } - } - - function parseObject() { - var result = options.null_prototype ? Object.create(null) : {} - , empty_object = {} - , is_non_empty = false - - while (position < length) { - skipWhiteSpace() - var item1 = parseKey() - skipWhiteSpace() - tokenStart() - var chr = input[position++] - tokenEnd(undefined, 'separator') - - if (chr === '}' && item1 === undefined) { - if (!json5 && is_non_empty) { - position-- - fail('Trailing comma in object') - } - return result - - } else if (chr === ':' && item1 !== undefined) { - skipWhiteSpace() - stack.push(item1) - var item2 = parseGeneric() - stack.pop() - - if (item2 === undefined) fail('No value found for key ' + item1) - if (typeof(item1) !== 'string') { - if (!json5 || typeof(item1) !== 'number') { - fail('Wrong key type: ' + item1) - } - } - - if ((item1 in empty_object || empty_object[item1] != null) && options.reserved_keys !== 'replace') { - if (options.reserved_keys === 'throw') { - fail('Reserved key: ' + item1) - } else { - // silently ignore it - } - } else { - if (typeof(options.reviver) === 'function') { - item2 = options.reviver.call(null, item1, item2) - } - - if (item2 !== undefined) { - is_non_empty = true - Object.defineProperty(result, item1, { - value: item2, - enumerable: true, - configurable: true, - writable: true, - }) - } - } - - skipWhiteSpace() - - tokenStart() - var chr = input[position++] - tokenEnd(undefined, 'separator') - - if (chr === ',') { - continue - - } else if (chr === '}') { - return result - - } else { - fail() - } - - } else { - position-- - fail() - } - } - - fail() - } - - function parseArray() { - var result = [] - - while (position < length) { - skipWhiteSpace() - stack.push(result.length) - var item = parseGeneric() - stack.pop() - skipWhiteSpace() - tokenStart() - var chr = input[position++] - tokenEnd(undefined, 'separator') - - if (item !== undefined) { - if (typeof(options.reviver) === 'function') { - item = options.reviver.call(null, String(result.length), item) - } - if (item === undefined) { - result.length++ - item = true // hack for check below, not included into result - } else { - result.push(item) - } - } - - if (chr === ',') { - if (item === undefined) { - fail('Elisions are not supported') - } - - } else if (chr === ']') { - if (!json5 && item === undefined && result.length) { - position-- - fail('Trailing comma in array') - } - return result - - } else { - position-- - fail() - } - } - } - - function parseNumber() { - // rewind because we don't know first char - position-- - - var start = position - , chr = input[position++] - , t - - var to_num = function(is_octal) { - var str = input.substr(start, position - start) - - if (is_octal) { - var result = parseInt(str.replace(/^0o?/, ''), 8) - } else { - var result = Number(str) - } - - if (Number.isNaN(result)) { - position-- - fail('Bad numeric literal - "' + input.substr(start, position - start + 1) + '"') - } else if (!json5 && !str.match(/^-?(0|[1-9][0-9]*)(\.[0-9]+)?(e[+-]?[0-9]+)?$/i)) { - // additional restrictions imposed by json - position-- - fail('Non-json numeric literal - "' + input.substr(start, position - start + 1) + '"') - } else { - return result - } - } - - // ex: -5982475.249875e+29384 - // ^ skipping this - if (chr === '-' || (chr === '+' && json5)) chr = input[position++] - - if (chr === 'N' && json5) { - parseKeyword('NaN') - return NaN - } - - if (chr === 'I' && json5) { - parseKeyword('Infinity') - - // returning +inf or -inf - return to_num() - } - - if (chr >= '1' && chr <= '9') { - // ex: -5982475.249875e+29384 - // ^^^ skipping these - while (position < length && isDecDigit(input[position])) position++ - chr = input[position++] - } - - // special case for leading zero: 0.123456 - if (chr === '0') { - chr = input[position++] - - // new syntax, "0o777" old syntax, "0777" - var is_octal = chr === 'o' || chr === 'O' || isOctDigit(chr) - var is_hex = chr === 'x' || chr === 'X' - - if (json5 && (is_octal || is_hex)) { - while (position < length - && (is_hex ? isHexDigit : isOctDigit)( input[position] ) - ) position++ - - var sign = 1 - if (input[start] === '-') { - sign = -1 - start++ - } else if (input[start] === '+') { - start++ - } - - return sign * to_num(is_octal) - } - } - - if (chr === '.') { - // ex: -5982475.249875e+29384 - // ^^^ skipping these - while (position < length && isDecDigit(input[position])) position++ - chr = input[position++] - } - - if (chr === 'e' || chr === 'E') { - chr = input[position++] - if (chr === '-' || chr === '+') position++ - // ex: -5982475.249875e+29384 - // ^^^ skipping these - while (position < length && isDecDigit(input[position])) position++ - chr = input[position++] - } - - // we have char in the buffer, so count for it - position-- - return to_num() - } - - function parseIdentifier() { - // rewind because we don't know first char - position-- - - var result = '' - - while (position < length) { - var chr = input[position++] - - if (chr === '\\' - && input[position] === 'u' - && isHexDigit(input[position+1]) - && isHexDigit(input[position+2]) - && isHexDigit(input[position+3]) - && isHexDigit(input[position+4]) - ) { - // UnicodeEscapeSequence - chr = String.fromCharCode(parseInt(input.substr(position+1, 4), 16)) - position += 5 - } - - if (result.length) { - // identifier started - if (Uni.isIdentifierPart(chr)) { - result += chr - } else { - position-- - return result - } - - } else { - if (Uni.isIdentifierStart(chr)) { - result += chr - } else { - return undefined - } - } - } - - fail() - } - - function parseString(endChar) { - // 7.8.4 of ES262 spec - var result = '' - - while (position < length) { - var chr = input[position++] - - if (chr === endChar) { - return result - - } else if (chr === '\\') { - if (position >= length) fail() - chr = input[position++] - - if (unescapeMap[chr] && (json5 || (chr != 'v' && chr != "'"))) { - result += unescapeMap[chr] - - } else if (json5 && isLineTerminator(chr)) { - // line continuation - newline(chr) - - } else if (chr === 'u' || (chr === 'x' && json5)) { - // unicode/character escape sequence - var off = chr === 'u' ? 4 : 2 - - // validation for \uXXXX - for (var i=0; i= length) fail() - if (!isHexDigit(input[position])) fail('Bad escape sequence') - position++ - } - - result += String.fromCharCode(parseInt(input.substr(position-off, off), 16)) - } else if (json5 && isOctDigit(chr)) { - if (chr < '4' && isOctDigit(input[position]) && isOctDigit(input[position+1])) { - // three-digit octal - var digits = 3 - } else if (isOctDigit(input[position])) { - // two-digit octal - var digits = 2 - } else { - var digits = 1 - } - position += digits - 1 - result += String.fromCharCode(parseInt(input.substr(position-digits, digits), 8)) - /*if (!isOctDigit(input[position])) { - // \0 is allowed still - result += '\0' - } else { - fail('Octal literals are not supported') - }*/ - - } else if (json5) { - // \X -> x - result += chr - - } else { - position-- - fail() - } - - } else if (isLineTerminator(chr)) { - fail() - - } else { - if (!json5 && chr.charCodeAt(0) < 32) { - position-- - fail('Unexpected control character') - } - - // SourceCharacter but not one of " or \ or LineTerminator - result += chr - } - } - - fail() - } - - skipWhiteSpace() - var return_value = parseGeneric() - if (return_value !== undefined || position < length) { - skipWhiteSpace() - - if (position >= length) { - if (typeof(options.reviver) === 'function') { - return_value = options.reviver.call(null, '', return_value) - } - return return_value - } else { - fail() - } - - } else { - if (position) { - fail('No data, only a whitespace') - } else { - fail('No data, empty input') - } - } -} - -/* - * parse(text, options) - * or - * parse(text, reviver) - * - * where: - * text - string - * options - object - * reviver - function - */ -module.exports.parse = function parseJSON(input, options) { - // support legacy functions - if (typeof(options) === 'function') { - options = { - reviver: options - } - } - - if (input === undefined) { - // parse(stringify(x)) should be equal x - // with JSON functions it is not 'cause of undefined - // so we're fixing it - return undefined - } - - // JSON.parse compat - if (typeof(input) !== 'string') input = String(input) - if (options == null) options = {} - if (options.reserved_keys == null) options.reserved_keys = 'ignore' - - if (options.reserved_keys === 'throw' || options.reserved_keys === 'ignore') { - if (options.null_prototype == null) { - options.null_prototype = true - } - } - - try { - return parse(input, options) - } catch(err) { - // jju is a recursive parser, so JSON.parse("{{{{{{{") could blow up the stack - // - // this catch is used to skip all those internal calls - if (err instanceof SyntaxError && err.row != null && err.column != null) { - var old_err = err - err = SyntaxError(old_err.message) - err.column = old_err.column - err.row = old_err.row - } - throw err - } -} - -module.exports.tokenize = function tokenizeJSON(input, options) { - if (options == null) options = {} - - options._tokenize = function(smth) { - if (options._addstack) smth.stack.unshift.apply(smth.stack, options._addstack) - tokens.push(smth) - } - - var tokens = [] - tokens.data = module.exports.parse(input, options) - return tokens -} - diff --git a/common/lib/jju/unicode.js b/common/lib/jju/unicode.js deleted file mode 100644 index 0177d2f71453..000000000000 --- a/common/lib/jju/unicode.js +++ /dev/null @@ -1,70 +0,0 @@ - -// This is autogenerated with esprima tools, see: -// https://github.com/ariya/esprima/blob/master/esprima.js -// -// PS: oh God, I hate Unicode - -// ECMAScript 5.1/Unicode v6.3.0 NonAsciiIdentifierStart: - -var Uni = module.exports - -module.exports.isWhiteSpace = function isWhiteSpace(x) { - // section 7.2, table 2 - return x === '\u0020' - || x === '\u00A0' - || x === '\uFEFF' // <-- this is not a Unicode WS, only a JS one - || (x >= '\u0009' && x <= '\u000D') // 9 A B C D - - // + whitespace characters from unicode, category Zs - || x === '\u1680' - || (x >= '\u2000' && x <= '\u200A') // 0 1 2 3 4 5 6 7 8 9 A - || x === '\u2028' - || x === '\u2029' - || x === '\u202F' - || x === '\u205F' - || x === '\u3000' -} - -module.exports.isWhiteSpaceJSON = function isWhiteSpaceJSON(x) { - return x === '\u0020' - || x === '\u0009' - || x === '\u000A' - || x === '\u000D' -} - -module.exports.isLineTerminator = function isLineTerminator(x) { - // ok, here is the part when JSON is wrong - // section 7.3, table 3 - return x === '\u000A' - || x === '\u000D' - || x === '\u2028' - || x === '\u2029' -} - -module.exports.isLineTerminatorJSON = function isLineTerminatorJSON(x) { - return x === '\u000A' - || x === '\u000D' -} - -module.exports.isIdentifierStart = function isIdentifierStart(x) { - return x === '$' - || x === '_' - || (x >= 'A' && x <= 'Z') - || (x >= 'a' && x <= 'z') - || (x >= '\u0080' && Uni.NonAsciiIdentifierStart.test(x)) -} - -module.exports.isIdentifierPart = function isIdentifierPart(x) { - return x === '$' - || x === '_' - || (x >= 'A' && x <= 'Z') - || (x >= 'a' && x <= 'z') - || (x >= '0' && x <= '9') // <-- addition to Start - || (x >= '\u0080' && Uni.NonAsciiIdentifierPart.test(x)) -} - -module.exports.NonAsciiIdentifierStart = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F0\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/ - -// ECMAScript 5.1/Unicode v6.3.0 NonAsciiIdentifierPart: - -module.exports.NonAsciiIdentifierPart = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0\u08A2-\u08AC\u08E4-\u08FE\u0900-\u0963\u0966-\u096F\u0971-\u0977\u0979-\u097F\u0981-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C01-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58\u0C59\u0C60-\u0C63\u0C66-\u0C6F\u0C82\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D02\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D57\u0D60-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F0\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191C\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1CD0-\u1CD2\u1CD4-\u1CF6\u1D00-\u1DE6\u1DFC-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA697\uA69F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7B\uAA80-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE26\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/ diff --git a/common/scripts/install-run-rush-pnpm.js b/common/scripts/install-run-rush-pnpm.js deleted file mode 100644 index 2356649f4e7f..000000000000 --- a/common/scripts/install-run-rush-pnpm.js +++ /dev/null @@ -1,31 +0,0 @@ -// THIS FILE WAS GENERATED BY A TOOL. ANY MANUAL MODIFICATIONS WILL GET OVERWRITTEN WHENEVER RUSH IS UPGRADED. -// -// This script is intended for usage in an automated build environment where the Rush command may not have -// been preinstalled, or may have an unpredictable version. This script will automatically install the version of Rush -// specified in the rush.json configuration file (if not already installed), and then pass a command-line to the -// rush-pnpm command. -// -// An example usage would be: -// -// node common/scripts/install-run-rush-pnpm.js pnpm-command -// -// For more information, see: https://rushjs.io/pages/maintainer/setup_new_repo/ -// -// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license. -// See the @microsoft/rush package's LICENSE file for details. - -/******/ (() => { // webpackBootstrap -/******/ "use strict"; -var __webpack_exports__ = {}; -/*!*****************************************************!*\ - !*** ./lib-esnext/scripts/install-run-rush-pnpm.js ***! - \*****************************************************/ - -// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license. -// See LICENSE in the project root for license information. -require('./install-run-rush'); -//# sourceMappingURL=install-run-rush-pnpm.js.map -module.exports = __webpack_exports__; -/******/ })() -; -//# sourceMappingURL=install-run-rush-pnpm.js.map \ No newline at end of file diff --git a/common/scripts/install-run-rush.js b/common/scripts/install-run-rush.js deleted file mode 100644 index 9676fc718f97..000000000000 --- a/common/scripts/install-run-rush.js +++ /dev/null @@ -1,218 +0,0 @@ -// THIS FILE WAS GENERATED BY A TOOL. ANY MANUAL MODIFICATIONS WILL GET OVERWRITTEN WHENEVER RUSH IS UPGRADED. -// -// This script is intended for usage in an automated build environment where the Rush command may not have -// been preinstalled, or may have an unpredictable version. This script will automatically install the version of Rush -// specified in the rush.json configuration file (if not already installed), and then pass a command-line to it. -// An example usage would be: -// -// node common/scripts/install-run-rush.js install -// -// For more information, see: https://rushjs.io/pages/maintainer/setup_new_repo/ -// -// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license. -// See the @microsoft/rush package's LICENSE file for details. - -/******/ (() => { // webpackBootstrap -/******/ "use strict"; -/******/ var __webpack_modules__ = ({ - -/***/ 657147: -/*!*********************!*\ - !*** external "fs" ***! - \*********************/ -/***/ ((module) => { - -module.exports = require("fs"); - -/***/ }), - -/***/ 371017: -/*!***********************!*\ - !*** external "path" ***! - \***********************/ -/***/ ((module) => { - -module.exports = require("path"); - -/***/ }) - -/******/ }); -/************************************************************************/ -/******/ // The module cache -/******/ var __webpack_module_cache__ = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ // Check if module is in cache -/******/ var cachedModule = __webpack_module_cache__[moduleId]; -/******/ if (cachedModule !== undefined) { -/******/ return cachedModule.exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = __webpack_module_cache__[moduleId] = { -/******/ // no module.id needed -/******/ // no module.loaded needed -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/************************************************************************/ -/******/ /* webpack/runtime/compat get default export */ -/******/ (() => { -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = (module) => { -/******/ var getter = module && module.__esModule ? -/******/ () => (module['default']) : -/******/ () => (module); -/******/ __webpack_require__.d(getter, { a: getter }); -/******/ return getter; -/******/ }; -/******/ })(); -/******/ -/******/ /* webpack/runtime/define property getters */ -/******/ (() => { -/******/ // define getter functions for harmony exports -/******/ __webpack_require__.d = (exports, definition) => { -/******/ for(var key in definition) { -/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { -/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); -/******/ } -/******/ } -/******/ }; -/******/ })(); -/******/ -/******/ /* webpack/runtime/hasOwnProperty shorthand */ -/******/ (() => { -/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) -/******/ })(); -/******/ -/******/ /* webpack/runtime/make namespace object */ -/******/ (() => { -/******/ // define __esModule on exports -/******/ __webpack_require__.r = (exports) => { -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); -/******/ } -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ })(); -/******/ -/************************************************************************/ -var __webpack_exports__ = {}; -// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk. -(() => { -/*!************************************************!*\ - !*** ./lib-esnext/scripts/install-run-rush.js ***! - \************************************************/ -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! path */ 371017); -/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! fs */ 657147); -/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_1__); -// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license. -// See LICENSE in the project root for license information. -/* eslint-disable no-console */ - - -const { installAndRun, findRushJsonFolder, RUSH_JSON_FILENAME, runWithErrorAndStatusCode } = require('./install-run'); -const PACKAGE_NAME = '@microsoft/rush'; -const RUSH_PREVIEW_VERSION = 'RUSH_PREVIEW_VERSION'; -const INSTALL_RUN_RUSH_LOCKFILE_PATH_VARIABLE = 'INSTALL_RUN_RUSH_LOCKFILE_PATH'; -function _getRushVersion(logger) { - const rushPreviewVersion = process.env[RUSH_PREVIEW_VERSION]; - if (rushPreviewVersion !== undefined) { - logger.info(`Using Rush version from environment variable ${RUSH_PREVIEW_VERSION}=${rushPreviewVersion}`); - return rushPreviewVersion; - } - const rushJsonFolder = findRushJsonFolder(); - const rushJsonPath = path__WEBPACK_IMPORTED_MODULE_0__.join(rushJsonFolder, RUSH_JSON_FILENAME); - try { - const rushJsonContents = fs__WEBPACK_IMPORTED_MODULE_1__.readFileSync(rushJsonPath, 'utf-8'); - // Use a regular expression to parse out the rushVersion value because rush.json supports comments, - // but JSON.parse does not and we don't want to pull in more dependencies than we need to in this script. - const rushJsonMatches = rushJsonContents.match(/\"rushVersion\"\s*\:\s*\"([0-9a-zA-Z.+\-]+)\"/); - return rushJsonMatches[1]; - } - catch (e) { - throw new Error(`Unable to determine the required version of Rush from ${RUSH_JSON_FILENAME} (${rushJsonFolder}). ` + - `The 'rushVersion' field is either not assigned in ${RUSH_JSON_FILENAME} or was specified ` + - 'using an unexpected syntax.'); - } -} -function _getBin(scriptName) { - switch (scriptName.toLowerCase()) { - case 'install-run-rush-pnpm.js': - return 'rush-pnpm'; - case 'install-run-rushx.js': - return 'rushx'; - default: - return 'rush'; - } -} -function _run() { - const [nodePath /* Ex: /bin/node */, scriptPath /* /repo/common/scripts/install-run-rush.js */, ...packageBinArgs /* [build, --to, myproject] */] = process.argv; - // Detect if this script was directly invoked, or if the install-run-rushx script was invokved to select the - // appropriate binary inside the rush package to run - const scriptName = path__WEBPACK_IMPORTED_MODULE_0__.basename(scriptPath); - const bin = _getBin(scriptName); - if (!nodePath || !scriptPath) { - throw new Error('Unexpected exception: could not detect node path or script path'); - } - let commandFound = false; - let logger = { info: console.log, error: console.error }; - for (const arg of packageBinArgs) { - if (arg === '-q' || arg === '--quiet') { - // The -q/--quiet flag is supported by both `rush` and `rushx`, and will suppress - // any normal informational/diagnostic information printed during startup. - // - // To maintain the same user experience, the install-run* scripts pass along this - // flag but also use it to suppress any diagnostic information normally printed - // to stdout. - logger = { - info: () => { }, - error: console.error - }; - } - else if (!arg.startsWith('-') || arg === '-h' || arg === '--help') { - // We either found something that looks like a command (i.e. - doesn't start with a "-"), - // or we found the -h/--help flag, which can be run without a command - commandFound = true; - } - } - if (!commandFound) { - console.log(`Usage: ${scriptName} [args...]`); - if (scriptName === 'install-run-rush-pnpm.js') { - console.log(`Example: ${scriptName} pnpm-command`); - } - else if (scriptName === 'install-run-rush.js') { - console.log(`Example: ${scriptName} build --to myproject`); - } - else { - console.log(`Example: ${scriptName} custom-command`); - } - process.exit(1); - } - runWithErrorAndStatusCode(logger, () => { - const version = _getRushVersion(logger); - logger.info(`The ${RUSH_JSON_FILENAME} configuration requests Rush version ${version}`); - const lockFilePath = process.env[INSTALL_RUN_RUSH_LOCKFILE_PATH_VARIABLE]; - if (lockFilePath) { - logger.info(`Found ${INSTALL_RUN_RUSH_LOCKFILE_PATH_VARIABLE}="${lockFilePath}", installing with lockfile.`); - } - return installAndRun(logger, PACKAGE_NAME, version, bin, packageBinArgs, lockFilePath); - }); -} -_run(); -//# sourceMappingURL=install-run-rush.js.map -})(); - -module.exports = __webpack_exports__; -/******/ })() -; -//# sourceMappingURL=install-run-rush.js.map \ No newline at end of file diff --git a/common/scripts/install-run-rushx.js b/common/scripts/install-run-rushx.js deleted file mode 100644 index 6581521f3c79..000000000000 --- a/common/scripts/install-run-rushx.js +++ /dev/null @@ -1,31 +0,0 @@ -// THIS FILE WAS GENERATED BY A TOOL. ANY MANUAL MODIFICATIONS WILL GET OVERWRITTEN WHENEVER RUSH IS UPGRADED. -// -// This script is intended for usage in an automated build environment where the Rush command may not have -// been preinstalled, or may have an unpredictable version. This script will automatically install the version of Rush -// specified in the rush.json configuration file (if not already installed), and then pass a command-line to the -// rushx command. -// -// An example usage would be: -// -// node common/scripts/install-run-rushx.js custom-command -// -// For more information, see: https://rushjs.io/pages/maintainer/setup_new_repo/ -// -// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license. -// See the @microsoft/rush package's LICENSE file for details. - -/******/ (() => { // webpackBootstrap -/******/ "use strict"; -var __webpack_exports__ = {}; -/*!*************************************************!*\ - !*** ./lib-esnext/scripts/install-run-rushx.js ***! - \*************************************************/ - -// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license. -// See LICENSE in the project root for license information. -require('./install-run-rush'); -//# sourceMappingURL=install-run-rushx.js.map -module.exports = __webpack_exports__; -/******/ })() -; -//# sourceMappingURL=install-run-rushx.js.map \ No newline at end of file diff --git a/common/scripts/install-run.js b/common/scripts/install-run.js deleted file mode 100644 index 9283c445267d..000000000000 --- a/common/scripts/install-run.js +++ /dev/null @@ -1,743 +0,0 @@ -// THIS FILE WAS GENERATED BY A TOOL. ANY MANUAL MODIFICATIONS WILL GET OVERWRITTEN WHENEVER RUSH IS UPGRADED. -// -// This script is intended for usage in an automated build environment where a Node tool may not have -// been preinstalled, or may have an unpredictable version. This script will automatically install the specified -// version of the specified tool (if not already installed), and then pass a command-line to it. -// An example usage would be: -// -// node common/scripts/install-run.js qrcode@1.2.2 qrcode https://rushjs.io -// -// For more information, see: https://rushjs.io/pages/maintainer/setup_new_repo/ -// -// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license. -// See the @microsoft/rush package's LICENSE file for details. - -/******/ (() => { // webpackBootstrap -/******/ "use strict"; -/******/ var __webpack_modules__ = ({ - -/***/ 679877: -/*!************************************************!*\ - !*** ./lib-esnext/utilities/npmrcUtilities.js ***! - \************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "isVariableSetInNpmrcFile": () => (/* binding */ isVariableSetInNpmrcFile), -/* harmony export */ "syncNpmrc": () => (/* binding */ syncNpmrc) -/* harmony export */ }); -/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! fs */ 657147); -/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! path */ 371017); -/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_1__); -// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license. -// See LICENSE in the project root for license information. -// IMPORTANT - do not use any non-built-in libraries in this file - - -/** - * This function reads the content for given .npmrc file path, and also trims - * unusable lines from the .npmrc file. - * - * @returns - * The text of the the .npmrc. - */ -// create a global _combinedNpmrc for cache purpose -const _combinedNpmrcMap = new Map(); -function _trimNpmrcFile(options) { - const { sourceNpmrcPath, linesToPrepend, linesToAppend } = options; - const combinedNpmrcFromCache = _combinedNpmrcMap.get(sourceNpmrcPath); - if (combinedNpmrcFromCache !== undefined) { - return combinedNpmrcFromCache; - } - let npmrcFileLines = []; - if (linesToPrepend) { - npmrcFileLines.push(...linesToPrepend); - } - if (fs__WEBPACK_IMPORTED_MODULE_0__.existsSync(sourceNpmrcPath)) { - npmrcFileLines.push(...fs__WEBPACK_IMPORTED_MODULE_0__.readFileSync(sourceNpmrcPath).toString().split('\n')); - } - if (linesToAppend) { - npmrcFileLines.push(...linesToAppend); - } - npmrcFileLines = npmrcFileLines.map((line) => (line || '').trim()); - const resultLines = []; - // This finds environment variable tokens that look like "${VAR_NAME}" - const expansionRegExp = /\$\{([^\}]+)\}/g; - // Comment lines start with "#" or ";" - const commentRegExp = /^\s*[#;]/; - // Trim out lines that reference environment variables that aren't defined - for (let line of npmrcFileLines) { - let lineShouldBeTrimmed = false; - //remove spaces before or after key and value - line = line - .split('=') - .map((lineToTrim) => lineToTrim.trim()) - .join('='); - // Ignore comment lines - if (!commentRegExp.test(line)) { - const environmentVariables = line.match(expansionRegExp); - if (environmentVariables) { - for (const token of environmentVariables) { - // Remove the leading "${" and the trailing "}" from the token - const environmentVariableName = token.substring(2, token.length - 1); - // Is the environment variable defined? - if (!process.env[environmentVariableName]) { - // No, so trim this line - lineShouldBeTrimmed = true; - break; - } - } - } - } - if (lineShouldBeTrimmed) { - // Example output: - // "; MISSING ENVIRONMENT VARIABLE: //my-registry.com/npm/:_authToken=${MY_AUTH_TOKEN}" - resultLines.push('; MISSING ENVIRONMENT VARIABLE: ' + line); - } - else { - resultLines.push(line); - } - } - const combinedNpmrc = resultLines.join('\n'); - //save the cache - _combinedNpmrcMap.set(sourceNpmrcPath, combinedNpmrc); - return combinedNpmrc; -} -function _copyAndTrimNpmrcFile(options) { - const { logger, sourceNpmrcPath, targetNpmrcPath, linesToPrepend, linesToAppend } = options; - logger.info(`Transforming ${sourceNpmrcPath}`); // Verbose - logger.info(` --> "${targetNpmrcPath}"`); - const combinedNpmrc = _trimNpmrcFile({ - sourceNpmrcPath, - linesToPrepend, - linesToAppend - }); - fs__WEBPACK_IMPORTED_MODULE_0__.writeFileSync(targetNpmrcPath, combinedNpmrc); - return combinedNpmrc; -} -function syncNpmrc(options) { - const { sourceNpmrcFolder, targetNpmrcFolder, useNpmrcPublish, logger = { - // eslint-disable-next-line no-console - info: console.log, - // eslint-disable-next-line no-console - error: console.error - }, createIfMissing = false, linesToAppend, linesToPrepend } = options; - const sourceNpmrcPath = path__WEBPACK_IMPORTED_MODULE_1__.join(sourceNpmrcFolder, !useNpmrcPublish ? '.npmrc' : '.npmrc-publish'); - const targetNpmrcPath = path__WEBPACK_IMPORTED_MODULE_1__.join(targetNpmrcFolder, '.npmrc'); - try { - if (fs__WEBPACK_IMPORTED_MODULE_0__.existsSync(sourceNpmrcPath) || createIfMissing) { - // Ensure the target folder exists - if (!fs__WEBPACK_IMPORTED_MODULE_0__.existsSync(targetNpmrcFolder)) { - fs__WEBPACK_IMPORTED_MODULE_0__.mkdirSync(targetNpmrcFolder, { recursive: true }); - } - return _copyAndTrimNpmrcFile({ - sourceNpmrcPath, - targetNpmrcPath, - logger, - linesToAppend, - linesToPrepend - }); - } - else if (fs__WEBPACK_IMPORTED_MODULE_0__.existsSync(targetNpmrcPath)) { - // If the source .npmrc doesn't exist and there is one in the target, delete the one in the target - logger.info(`Deleting ${targetNpmrcPath}`); // Verbose - fs__WEBPACK_IMPORTED_MODULE_0__.unlinkSync(targetNpmrcPath); - } - } - catch (e) { - throw new Error(`Error syncing .npmrc file: ${e}`); - } -} -function isVariableSetInNpmrcFile(sourceNpmrcFolder, variableKey) { - const sourceNpmrcPath = `${sourceNpmrcFolder}/.npmrc`; - //if .npmrc file does not exist, return false directly - if (!fs__WEBPACK_IMPORTED_MODULE_0__.existsSync(sourceNpmrcPath)) { - return false; - } - const trimmedNpmrcFile = _trimNpmrcFile({ sourceNpmrcPath }); - const variableKeyRegExp = new RegExp(`^${variableKey}=`, 'm'); - return trimmedNpmrcFile.match(variableKeyRegExp) !== null; -} -//# sourceMappingURL=npmrcUtilities.js.map - -/***/ }), - -/***/ 532081: -/*!********************************!*\ - !*** external "child_process" ***! - \********************************/ -/***/ ((module) => { - -module.exports = require("child_process"); - -/***/ }), - -/***/ 657147: -/*!*********************!*\ - !*** external "fs" ***! - \*********************/ -/***/ ((module) => { - -module.exports = require("fs"); - -/***/ }), - -/***/ 822037: -/*!*********************!*\ - !*** external "os" ***! - \*********************/ -/***/ ((module) => { - -module.exports = require("os"); - -/***/ }), - -/***/ 371017: -/*!***********************!*\ - !*** external "path" ***! - \***********************/ -/***/ ((module) => { - -module.exports = require("path"); - -/***/ }) - -/******/ }); -/************************************************************************/ -/******/ // The module cache -/******/ var __webpack_module_cache__ = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ // Check if module is in cache -/******/ var cachedModule = __webpack_module_cache__[moduleId]; -/******/ if (cachedModule !== undefined) { -/******/ return cachedModule.exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = __webpack_module_cache__[moduleId] = { -/******/ // no module.id needed -/******/ // no module.loaded needed -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/************************************************************************/ -/******/ /* webpack/runtime/compat get default export */ -/******/ (() => { -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = (module) => { -/******/ var getter = module && module.__esModule ? -/******/ () => (module['default']) : -/******/ () => (module); -/******/ __webpack_require__.d(getter, { a: getter }); -/******/ return getter; -/******/ }; -/******/ })(); -/******/ -/******/ /* webpack/runtime/define property getters */ -/******/ (() => { -/******/ // define getter functions for harmony exports -/******/ __webpack_require__.d = (exports, definition) => { -/******/ for(var key in definition) { -/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { -/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); -/******/ } -/******/ } -/******/ }; -/******/ })(); -/******/ -/******/ /* webpack/runtime/hasOwnProperty shorthand */ -/******/ (() => { -/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) -/******/ })(); -/******/ -/******/ /* webpack/runtime/make namespace object */ -/******/ (() => { -/******/ // define __esModule on exports -/******/ __webpack_require__.r = (exports) => { -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); -/******/ } -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ })(); -/******/ -/************************************************************************/ -var __webpack_exports__ = {}; -// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk. -(() => { -/*!*******************************************!*\ - !*** ./lib-esnext/scripts/install-run.js ***! - \*******************************************/ -__webpack_require__.r(__webpack_exports__); -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ "RUSH_JSON_FILENAME": () => (/* binding */ RUSH_JSON_FILENAME), -/* harmony export */ "findRushJsonFolder": () => (/* binding */ findRushJsonFolder), -/* harmony export */ "getNpmPath": () => (/* binding */ getNpmPath), -/* harmony export */ "installAndRun": () => (/* binding */ installAndRun), -/* harmony export */ "runWithErrorAndStatusCode": () => (/* binding */ runWithErrorAndStatusCode) -/* harmony export */ }); -/* harmony import */ var child_process__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! child_process */ 532081); -/* harmony import */ var child_process__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(child_process__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! fs */ 657147); -/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! os */ 822037); -/* harmony import */ var os__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(os__WEBPACK_IMPORTED_MODULE_2__); -/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! path */ 371017); -/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_3__); -/* harmony import */ var _utilities_npmrcUtilities__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utilities/npmrcUtilities */ 679877); -// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license. -// See LICENSE in the project root for license information. -/* eslint-disable no-console */ - - - - - -const RUSH_JSON_FILENAME = 'rush.json'; -const RUSH_TEMP_FOLDER_ENV_VARIABLE_NAME = 'RUSH_TEMP_FOLDER'; -const INSTALL_RUN_LOCKFILE_PATH_VARIABLE = 'INSTALL_RUN_LOCKFILE_PATH'; -const INSTALLED_FLAG_FILENAME = 'installed.flag'; -const NODE_MODULES_FOLDER_NAME = 'node_modules'; -const PACKAGE_JSON_FILENAME = 'package.json'; -/** - * Parse a package specifier (in the form of name\@version) into name and version parts. - */ -function _parsePackageSpecifier(rawPackageSpecifier) { - rawPackageSpecifier = (rawPackageSpecifier || '').trim(); - const separatorIndex = rawPackageSpecifier.lastIndexOf('@'); - let name; - let version = undefined; - if (separatorIndex === 0) { - // The specifier starts with a scope and doesn't have a version specified - name = rawPackageSpecifier; - } - else if (separatorIndex === -1) { - // The specifier doesn't have a version - name = rawPackageSpecifier; - } - else { - name = rawPackageSpecifier.substring(0, separatorIndex); - version = rawPackageSpecifier.substring(separatorIndex + 1); - } - if (!name) { - throw new Error(`Invalid package specifier: ${rawPackageSpecifier}`); - } - return { name, version }; -} -let _npmPath = undefined; -/** - * Get the absolute path to the npm executable - */ -function getNpmPath() { - if (!_npmPath) { - try { - if (_isWindows()) { - // We're on Windows - const whereOutput = child_process__WEBPACK_IMPORTED_MODULE_0__.execSync('where npm', { stdio: [] }).toString(); - const lines = whereOutput.split(os__WEBPACK_IMPORTED_MODULE_2__.EOL).filter((line) => !!line); - // take the last result, we are looking for a .cmd command - // see https://github.com/microsoft/rushstack/issues/759 - _npmPath = lines[lines.length - 1]; - } - else { - // We aren't on Windows - assume we're on *NIX or Darwin - _npmPath = child_process__WEBPACK_IMPORTED_MODULE_0__.execSync('command -v npm', { stdio: [] }).toString(); - } - } - catch (e) { - throw new Error(`Unable to determine the path to the NPM tool: ${e}`); - } - _npmPath = _npmPath.trim(); - if (!fs__WEBPACK_IMPORTED_MODULE_1__.existsSync(_npmPath)) { - throw new Error('The NPM executable does not exist'); - } - } - return _npmPath; -} -function _ensureFolder(folderPath) { - if (!fs__WEBPACK_IMPORTED_MODULE_1__.existsSync(folderPath)) { - const parentDir = path__WEBPACK_IMPORTED_MODULE_3__.dirname(folderPath); - _ensureFolder(parentDir); - fs__WEBPACK_IMPORTED_MODULE_1__.mkdirSync(folderPath); - } -} -/** - * Create missing directories under the specified base directory, and return the resolved directory. - * - * Does not support "." or ".." path segments. - * Assumes the baseFolder exists. - */ -function _ensureAndJoinPath(baseFolder, ...pathSegments) { - let joinedPath = baseFolder; - try { - for (let pathSegment of pathSegments) { - pathSegment = pathSegment.replace(/[\\\/]/g, '+'); - joinedPath = path__WEBPACK_IMPORTED_MODULE_3__.join(joinedPath, pathSegment); - if (!fs__WEBPACK_IMPORTED_MODULE_1__.existsSync(joinedPath)) { - fs__WEBPACK_IMPORTED_MODULE_1__.mkdirSync(joinedPath); - } - } - } - catch (e) { - throw new Error(`Error building local installation folder (${path__WEBPACK_IMPORTED_MODULE_3__.join(baseFolder, ...pathSegments)}): ${e}`); - } - return joinedPath; -} -function _getRushTempFolder(rushCommonFolder) { - const rushTempFolder = process.env[RUSH_TEMP_FOLDER_ENV_VARIABLE_NAME]; - if (rushTempFolder !== undefined) { - _ensureFolder(rushTempFolder); - return rushTempFolder; - } - else { - return _ensureAndJoinPath(rushCommonFolder, 'temp'); - } -} -/** - * Compare version strings according to semantic versioning. - * Returns a positive integer if "a" is a later version than "b", - * a negative integer if "b" is later than "a", - * and 0 otherwise. - */ -function _compareVersionStrings(a, b) { - const aParts = a.split(/[.-]/); - const bParts = b.split(/[.-]/); - const numberOfParts = Math.max(aParts.length, bParts.length); - for (let i = 0; i < numberOfParts; i++) { - if (aParts[i] !== bParts[i]) { - return (Number(aParts[i]) || 0) - (Number(bParts[i]) || 0); - } - } - return 0; -} -/** - * Resolve a package specifier to a static version - */ -function _resolvePackageVersion(logger, rushCommonFolder, { name, version }) { - if (!version) { - version = '*'; // If no version is specified, use the latest version - } - if (version.match(/^[a-zA-Z0-9\-\+\.]+$/)) { - // If the version contains only characters that we recognize to be used in static version specifiers, - // pass the version through - return version; - } - else { - // version resolves to - try { - const rushTempFolder = _getRushTempFolder(rushCommonFolder); - const sourceNpmrcFolder = path__WEBPACK_IMPORTED_MODULE_3__.join(rushCommonFolder, 'config', 'rush'); - (0,_utilities_npmrcUtilities__WEBPACK_IMPORTED_MODULE_4__.syncNpmrc)({ - sourceNpmrcFolder, - targetNpmrcFolder: rushTempFolder, - logger - }); - const npmPath = getNpmPath(); - // This returns something that looks like: - // ``` - // [ - // "3.0.0", - // "3.0.1", - // ... - // "3.0.20" - // ] - // ``` - // - // if multiple versions match the selector, or - // - // ``` - // "3.0.0" - // ``` - // - // if only a single version matches. - const spawnSyncOptions = { - cwd: rushTempFolder, - stdio: [], - shell: _isWindows() - }; - const platformNpmPath = _getPlatformPath(npmPath); - const npmVersionSpawnResult = child_process__WEBPACK_IMPORTED_MODULE_0__.spawnSync(platformNpmPath, ['view', `${name}@${version}`, 'version', '--no-update-notifier', '--json'], spawnSyncOptions); - if (npmVersionSpawnResult.status !== 0) { - throw new Error(`"npm view" returned error code ${npmVersionSpawnResult.status}`); - } - const npmViewVersionOutput = npmVersionSpawnResult.stdout.toString(); - const parsedVersionOutput = JSON.parse(npmViewVersionOutput); - const versions = Array.isArray(parsedVersionOutput) - ? parsedVersionOutput - : [parsedVersionOutput]; - let latestVersion = versions[0]; - for (let i = 1; i < versions.length; i++) { - const latestVersionCandidate = versions[i]; - if (_compareVersionStrings(latestVersionCandidate, latestVersion) > 0) { - latestVersion = latestVersionCandidate; - } - } - if (!latestVersion) { - throw new Error('No versions found for the specified version range.'); - } - return latestVersion; - } - catch (e) { - throw new Error(`Unable to resolve version ${version} of package ${name}: ${e}`); - } - } -} -let _rushJsonFolder; -/** - * Find the absolute path to the folder containing rush.json - */ -function findRushJsonFolder() { - if (!_rushJsonFolder) { - let basePath = __dirname; - let tempPath = __dirname; - do { - const testRushJsonPath = path__WEBPACK_IMPORTED_MODULE_3__.join(basePath, RUSH_JSON_FILENAME); - if (fs__WEBPACK_IMPORTED_MODULE_1__.existsSync(testRushJsonPath)) { - _rushJsonFolder = basePath; - break; - } - else { - basePath = tempPath; - } - } while (basePath !== (tempPath = path__WEBPACK_IMPORTED_MODULE_3__.dirname(basePath))); // Exit the loop when we hit the disk root - if (!_rushJsonFolder) { - throw new Error(`Unable to find ${RUSH_JSON_FILENAME}.`); - } - } - return _rushJsonFolder; -} -/** - * Detects if the package in the specified directory is installed - */ -function _isPackageAlreadyInstalled(packageInstallFolder) { - try { - const flagFilePath = path__WEBPACK_IMPORTED_MODULE_3__.join(packageInstallFolder, INSTALLED_FLAG_FILENAME); - if (!fs__WEBPACK_IMPORTED_MODULE_1__.existsSync(flagFilePath)) { - return false; - } - const fileContents = fs__WEBPACK_IMPORTED_MODULE_1__.readFileSync(flagFilePath).toString(); - return fileContents.trim() === process.version; - } - catch (e) { - return false; - } -} -/** - * Delete a file. Fail silently if it does not exist. - */ -function _deleteFile(file) { - try { - fs__WEBPACK_IMPORTED_MODULE_1__.unlinkSync(file); - } - catch (err) { - if (err.code !== 'ENOENT' && err.code !== 'ENOTDIR') { - throw err; - } - } -} -/** - * Removes the following files and directories under the specified folder path: - * - installed.flag - * - - * - node_modules - */ -function _cleanInstallFolder(rushTempFolder, packageInstallFolder, lockFilePath) { - try { - const flagFile = path__WEBPACK_IMPORTED_MODULE_3__.resolve(packageInstallFolder, INSTALLED_FLAG_FILENAME); - _deleteFile(flagFile); - const packageLockFile = path__WEBPACK_IMPORTED_MODULE_3__.resolve(packageInstallFolder, 'package-lock.json'); - if (lockFilePath) { - fs__WEBPACK_IMPORTED_MODULE_1__.copyFileSync(lockFilePath, packageLockFile); - } - else { - // Not running `npm ci`, so need to cleanup - _deleteFile(packageLockFile); - const nodeModulesFolder = path__WEBPACK_IMPORTED_MODULE_3__.resolve(packageInstallFolder, NODE_MODULES_FOLDER_NAME); - if (fs__WEBPACK_IMPORTED_MODULE_1__.existsSync(nodeModulesFolder)) { - const rushRecyclerFolder = _ensureAndJoinPath(rushTempFolder, 'rush-recycler'); - fs__WEBPACK_IMPORTED_MODULE_1__.renameSync(nodeModulesFolder, path__WEBPACK_IMPORTED_MODULE_3__.join(rushRecyclerFolder, `install-run-${Date.now().toString()}`)); - } - } - } - catch (e) { - throw new Error(`Error cleaning the package install folder (${packageInstallFolder}): ${e}`); - } -} -function _createPackageJson(packageInstallFolder, name, version) { - try { - const packageJsonContents = { - name: 'ci-rush', - version: '0.0.0', - dependencies: { - [name]: version - }, - description: "DON'T WARN", - repository: "DON'T WARN", - license: 'MIT' - }; - const packageJsonPath = path__WEBPACK_IMPORTED_MODULE_3__.join(packageInstallFolder, PACKAGE_JSON_FILENAME); - fs__WEBPACK_IMPORTED_MODULE_1__.writeFileSync(packageJsonPath, JSON.stringify(packageJsonContents, undefined, 2)); - } - catch (e) { - throw new Error(`Unable to create package.json: ${e}`); - } -} -/** - * Run "npm install" in the package install folder. - */ -function _installPackage(logger, packageInstallFolder, name, version, command) { - try { - logger.info(`Installing ${name}...`); - const npmPath = getNpmPath(); - const platformNpmPath = _getPlatformPath(npmPath); - const result = child_process__WEBPACK_IMPORTED_MODULE_0__.spawnSync(platformNpmPath, [command], { - stdio: 'inherit', - cwd: packageInstallFolder, - env: process.env, - shell: _isWindows() - }); - if (result.status !== 0) { - throw new Error(`"npm ${command}" encountered an error`); - } - logger.info(`Successfully installed ${name}@${version}`); - } - catch (e) { - throw new Error(`Unable to install package: ${e}`); - } -} -/** - * Get the ".bin" path for the package. - */ -function _getBinPath(packageInstallFolder, binName) { - const binFolderPath = path__WEBPACK_IMPORTED_MODULE_3__.resolve(packageInstallFolder, NODE_MODULES_FOLDER_NAME, '.bin'); - const resolvedBinName = _isWindows() ? `${binName}.cmd` : binName; - return path__WEBPACK_IMPORTED_MODULE_3__.resolve(binFolderPath, resolvedBinName); -} -/** - * Returns a cross-platform path - windows must enclose any path containing spaces within double quotes. - */ -function _getPlatformPath(platformPath) { - return _isWindows() && platformPath.includes(' ') ? `"${platformPath}"` : platformPath; -} -function _isWindows() { - return os__WEBPACK_IMPORTED_MODULE_2__.platform() === 'win32'; -} -/** - * Write a flag file to the package's install directory, signifying that the install was successful. - */ -function _writeFlagFile(packageInstallFolder) { - try { - const flagFilePath = path__WEBPACK_IMPORTED_MODULE_3__.join(packageInstallFolder, INSTALLED_FLAG_FILENAME); - fs__WEBPACK_IMPORTED_MODULE_1__.writeFileSync(flagFilePath, process.version); - } - catch (e) { - throw new Error(`Unable to create installed.flag file in ${packageInstallFolder}`); - } -} -function installAndRun(logger, packageName, packageVersion, packageBinName, packageBinArgs, lockFilePath = process.env[INSTALL_RUN_LOCKFILE_PATH_VARIABLE]) { - const rushJsonFolder = findRushJsonFolder(); - const rushCommonFolder = path__WEBPACK_IMPORTED_MODULE_3__.join(rushJsonFolder, 'common'); - const rushTempFolder = _getRushTempFolder(rushCommonFolder); - const packageInstallFolder = _ensureAndJoinPath(rushTempFolder, 'install-run', `${packageName}@${packageVersion}`); - if (!_isPackageAlreadyInstalled(packageInstallFolder)) { - // The package isn't already installed - _cleanInstallFolder(rushTempFolder, packageInstallFolder, lockFilePath); - const sourceNpmrcFolder = path__WEBPACK_IMPORTED_MODULE_3__.join(rushCommonFolder, 'config', 'rush'); - (0,_utilities_npmrcUtilities__WEBPACK_IMPORTED_MODULE_4__.syncNpmrc)({ - sourceNpmrcFolder, - targetNpmrcFolder: packageInstallFolder, - logger - }); - _createPackageJson(packageInstallFolder, packageName, packageVersion); - const command = lockFilePath ? 'ci' : 'install'; - _installPackage(logger, packageInstallFolder, packageName, packageVersion, command); - _writeFlagFile(packageInstallFolder); - } - const statusMessage = `Invoking "${packageBinName} ${packageBinArgs.join(' ')}"`; - const statusMessageLine = new Array(statusMessage.length + 1).join('-'); - logger.info('\n' + statusMessage + '\n' + statusMessageLine + '\n'); - const binPath = _getBinPath(packageInstallFolder, packageBinName); - const binFolderPath = path__WEBPACK_IMPORTED_MODULE_3__.resolve(packageInstallFolder, NODE_MODULES_FOLDER_NAME, '.bin'); - // Windows environment variables are case-insensitive. Instead of using SpawnSyncOptions.env, we need to - // assign via the process.env proxy to ensure that we append to the right PATH key. - const originalEnvPath = process.env.PATH || ''; - let result; - try { - // `npm` bin stubs on Windows are `.cmd` files - // Node.js will not directly invoke a `.cmd` file unless `shell` is set to `true` - const platformBinPath = _getPlatformPath(binPath); - process.env.PATH = [binFolderPath, originalEnvPath].join(path__WEBPACK_IMPORTED_MODULE_3__.delimiter); - result = child_process__WEBPACK_IMPORTED_MODULE_0__.spawnSync(platformBinPath, packageBinArgs, { - stdio: 'inherit', - windowsVerbatimArguments: false, - shell: _isWindows(), - cwd: process.cwd(), - env: process.env - }); - } - finally { - process.env.PATH = originalEnvPath; - } - if (result.status !== null) { - return result.status; - } - else { - throw result.error || new Error('An unknown error occurred.'); - } -} -function runWithErrorAndStatusCode(logger, fn) { - process.exitCode = 1; - try { - const exitCode = fn(); - process.exitCode = exitCode; - } - catch (e) { - logger.error('\n\n' + e.toString() + '\n\n'); - } -} -function _run() { - const [nodePath /* Ex: /bin/node */, scriptPath /* /repo/common/scripts/install-run-rush.js */, rawPackageSpecifier /* qrcode@^1.2.0 */, packageBinName /* qrcode */, ...packageBinArgs /* [-f, myproject/lib] */] = process.argv; - if (!nodePath) { - throw new Error('Unexpected exception: could not detect node path'); - } - if (path__WEBPACK_IMPORTED_MODULE_3__.basename(scriptPath).toLowerCase() !== 'install-run.js') { - // If install-run.js wasn't directly invoked, don't execute the rest of this function. Return control - // to the script that (presumably) imported this file - return; - } - if (process.argv.length < 4) { - console.log('Usage: install-run.js @ [args...]'); - console.log('Example: install-run.js qrcode@1.2.2 qrcode https://rushjs.io'); - process.exit(1); - } - const logger = { info: console.log, error: console.error }; - runWithErrorAndStatusCode(logger, () => { - const rushJsonFolder = findRushJsonFolder(); - const rushCommonFolder = _ensureAndJoinPath(rushJsonFolder, 'common'); - const packageSpecifier = _parsePackageSpecifier(rawPackageSpecifier); - const name = packageSpecifier.name; - const version = _resolvePackageVersion(logger, rushCommonFolder, packageSpecifier); - if (packageSpecifier.version !== version) { - console.log(`Resolved to ${name}@${version}`); - } - return installAndRun(logger, name, version, packageBinName, packageBinArgs); - }); -} -_run(); -//# sourceMappingURL=install-run.js.map -})(); - -module.exports = __webpack_exports__; -/******/ })() -; -//# sourceMappingURL=install-run.js.map \ No newline at end of file diff --git a/common/scripts/list-files.js b/common/scripts/list-files.js deleted file mode 100644 index 5f4003d3e193..000000000000 --- a/common/scripts/list-files.js +++ /dev/null @@ -1,30 +0,0 @@ -const fs = require("fs"); -const path = require("path"); -const parse = require("../lib/jju/parse").parse; - -function read(filename) { - const txt = fs.readFileSync(filename, "utf8"); - return parse(txt); -} - -function walk(dir) { - var list = fs.readdirSync(dir); - for (const fileName of list) { - const filePath = path.join(dir, fileName); - if (fileName == "node_modules") { - continue; - } - - const stat = fs.statSync(filePath); - if (stat && stat.isDirectory()) { - walk(filePath); - } else { - console.log(path.resolve(filePath)); - } - } -} - -const rush = read(`${__dirname}/../../rush.json`); -for (const each of rush.projects) { - walk(each.projectFolder); -} diff --git a/common/scripts/rush-welcome.js b/common/scripts/rush-welcome.js deleted file mode 100644 index d039b6bbcc62..000000000000 --- a/common/scripts/rush-welcome.js +++ /dev/null @@ -1,14 +0,0 @@ -const y = `\u001B[33m`; -const x = `\u001B[39m`; -const c = `\u001B[36m`; -const b = `\u001B[34m`; - -console.log(`${y}╭─────────────────────────────────────────────────────────────────────────────╮${x}`); -console.log(`${y}│ │${x}`); -console.log(`${y}│${x} This project uses Rush (${b}https://rushjs.io${x}) to manage multiple libraries ${y}│${x}`); -console.log(`${y}│${x} in a single repository, visit ${b}https://aka.ms/azsdk-js${x} for more info ${y}│${x}`); -console.log(`${y}│ │${x}`); -console.log(`${y}│${x} Please install Rush globally with ${c}npm install -g @microsoft/rush${x} ${y}│${x}`); -console.log(`${y}│${x} Then run ${c}rush update${x} to install and link dependencies instead ${y}│${x}`); -console.log(`${y}│ │${x}`); -console.log(`${y}╰─────────────────────────────────────────────────────────────────────────────╯${x}`); \ No newline at end of file diff --git a/common/scripts/sync-versions.js b/common/scripts/sync-versions.js deleted file mode 100644 index 958cca82ca6f..000000000000 --- a/common/scripts/sync-versions.js +++ /dev/null @@ -1,128 +0,0 @@ -const fs = require("fs"); -const process = require("process"); -const parse = require("../lib/jju/parse").parse; - -function read(filename) { - const txt = fs.readFileSync(filename, "utf8"); - return parse(txt); -} - -function versionToInt(ver) { - let v = ver - .replace(/[^\d\.]/g, "") - .split(".") - .slice(0, 3); - while (v.length < 3) { - v.unshift(0); - } - let n = 0; - for (let i = 0; i < v.length; i++) { - n = n + 2 ** (i * 16) * parseInt(v[v.length - 1 - i]); - } - return n; -} - -const rush = read(`${__dirname}/../../rush.json`); -const pjs = {}; - -// load all the projects -for (const each of rush.projects) { - const packageName = each.packageName; - const projectFolder = each.projectFolder; - pjs[packageName] = require(`${__dirname}/../../${projectFolder}/package.json`); -} - -function setPeerDependencies(pj, dependencies) { - for (const dep in dependencies) { - const ref = pjs[dep]; - if (ref) { - if (dependencies[dep] !== `^${ref.version}`) { - console.log(`updating ${pj} peer dependency ${dep} to ^${ref.version}`); - dependencies[dep] = `^${ref.version}`; - } - } - } -} - -function recordDeps(dependencies) { - for (const packageName in dependencies) { - const packageVersion = dependencies[packageName]; - if (packageList[packageName]) { - // same version? - if (packageList[packageName] === packageVersion) { - continue; - } - - // pick the higher one - const v = versionToInt(packageVersion); - - if (v === 0) { - console.error(`Unparsed version ${packageName}:${packageVersion}`); - process.exit(1); - } - const v2 = versionToInt(packageList[packageName]); - if (v > v2) { - packageList[packageName] = packageVersion; - } - } else { - packageList[packageName] = packageVersion; - } - } -} - -function fixDeps(pj, dependencies) { - for (const packageName in dependencies) { - if (dependencies[packageName] !== packageList[packageName]) { - console.log( - `updating ${pj}:${packageName} from '${dependencies[packageName]}' to '${packageList[packageName]}'` - ); - dependencies[packageName] = packageList[packageName]; - } - } -} - -const packageList = {}; -// now compare to see if someone has an external package with different version -// than everyone else. -for (const pj of Object.getOwnPropertyNames(pjs)) { - const each = pjs[pj]; - - recordDeps(each.dependencies); - recordDeps(each.devDependencies); - if (each["static-link"]) { - recordDeps(each["static-link"].dependencies); - } -} - -for (const pj of Object.getOwnPropertyNames(pjs)) { - const each = pjs[pj]; - fixDeps(pj, each.dependencies); - fixDeps(pj, each.devDependencies); - if (each["static-link"]) { - fixDeps(pj, each["static-link"].dependencies); - } -} - -// verify that peer dependencies are the same version as they are building. -if (process.argv[2] === "--sync-peers") { - for (const pj of Object.getOwnPropertyNames(pjs)) { - const each = pjs[pj]; - setPeerDependencies(pj, each.dependencies); - setPeerDependencies(pj, each.devDependencies); - if (each["static-link"]) { - setPeerDependencies(pj, each["static-link"].dependencies); - } - } -} - -// write out the results. -for (const each of rush.projects) { - const packageName = each.packageName; - const projectFolder = each.projectFolder; - fs.writeFileSync( - `${__dirname}/../../${projectFolder}/package.json`, - JSON.stringify(pjs[packageName], null, 2) + "\n" - ); -} - -console.log("project.json files updated"); diff --git a/common/tools/dev-tool/README.md b/common/tools/dev-tool/README.md index b46517efdf1b..a3380ebb4eb4 100644 --- a/common/tools/dev-tool/README.md +++ b/common/tools/dev-tool/README.md @@ -6,7 +6,7 @@ It provides a place to centralize scripts, resources, and processes for developm ## Installation -`dev-tool` runs using [tsx](https://tsx.is/), so it does not need to be built. It is ready-to-go after a `rush update`. It additionally does not need to be installed to a user's machine in order to be used in `package.json` scripts, since it provides the `dev-tool` binary to any dependent packages through the `bin` entry in its `package.json`. Simply add `@azure/dev-tool` to the `devDependencies` of a package, and the `dev-tool` binary will become available. If you wish to use `dev-tool` from the CLI manually, you can install it globally on your system by running `npm install -g` from this directory. +`dev-tool` runs using [tsx](https://tsx.is/), so it does not need to be built. It is ready-to-go after a `pnpm install`. It additionally does not need to be installed to a user's machine in order to be used in `package.json` scripts, since it provides the `dev-tool` binary to any dependent packages through the `bin` entry in its `package.json`. Simply add `@azure/dev-tool` to the `devDependencies` of a package, and the `dev-tool` binary will become available. If you wish to use `dev-tool` from the CLI manually, you can install it globally on your system by running `npm install -g` from this directory. ## Usage @@ -230,7 +230,7 @@ Each variant supports an optional `shortName` field that specifies a one-letter - Using the `subCommand` and `leafCommand` helpers is not required. If a command module exports any function with the signature `(...args: string[]) => Promise` as its default export, it will run when the command is invoked and will be given the arguments passed in the parameters. **However**, only `subCommand` and `leafCommand` provide automatic argument parsing and handling of `--help`. The functions used to provide this behavior are located in the `src/util/commandBuilder.ts` module. - Some additional helper modules can be found in `src/util` such as `resolveProject.ts` which walks up the directory hierarchy and finds the absolute path of the nearest SDK package directory (useful for commands like `samples` which always operate relative to the package directory) -- The tool runs using the `transpileOnly` option in the `ts-node` configuration, meaning it does not perform run-time type-checking. The build step of the package will run type-checking using `tsc`, so to check the tool's code for type errors, simply use `rushx build`. +- The tool runs using the `transpileOnly` option in the `ts-node` configuration, meaning it does not perform run-time type-checking. The build step of the package will run type-checking using `tsc`, so to check the tool's code for type errors, simply use `pnpm build`. ## Contributing diff --git a/common/tools/dev-tool/package.json b/common/tools/dev-tool/package.json index 5128ea6eeac7..b717418bdfb7 100644 --- a/common/tools/dev-tool/package.json +++ b/common/tools/dev-tool/package.json @@ -72,7 +72,6 @@ "tslib": "^2.2.0", "tsx": "^4.0.0", "typescript": "~5.6.2", - "uglify-js": "^3.19.3", "yaml": "^2.3.4" }, "devDependencies": { @@ -85,7 +84,7 @@ "@types/minimist": "^1.2.5", "@types/node": "^18.0.0", "@types/semver": "^7.5.8", - "@vitest/coverage-istanbul": "^2.1.2", + "@vitest/coverage-istanbul": "^2.1.4", "autorest": "^3.7.1", "builtin-modules": "^3.1.0", "cross-env": "^7.0.3", @@ -93,6 +92,7 @@ "mkdirp": "^3.0.1", "rimraf": "^5.0.5", "typescript-eslint": "~8.2.0", - "vitest": "^2.1.2" + "uglify-js": "^3.4.9", + "vitest": "^2.1.4" } } diff --git a/common/tools/dev-tool/src/commands/admin/migrate-package.ts b/common/tools/dev-tool/src/commands/admin/migrate-package.ts index 54ca58057aad..b2d146722769 100644 --- a/common/tools/dev-tool/src/commands/admin/migrate-package.ts +++ b/common/tools/dev-tool/src/commands/admin/migrate-package.ts @@ -85,11 +85,11 @@ export default leafCommand(commandInfo, async ({ "package-name": packageName, br await prepareFiles(projectFolder, { browser }); await applyCodemods(projectFolder); - log.info("Running `rush update`"); - await run(["rush", "update"], { cwd: projectFolder }); + log.info("Running `pnpm install`"); + await run(["pnpm", "install"], { cwd: projectFolder }); log.info("Formatting files"); - await run(["rushx", "format"], { cwd: projectFolder }); - await commitChanges(projectFolder, "rushx format"); + await run(["pnpm", "format"], { cwd: projectFolder }); + await commitChanges(projectFolder, "pnpm format"); return true; }); diff --git a/common/tools/eslint-plugin-azure-sdk/README.md b/common/tools/eslint-plugin-azure-sdk/README.md index 1bc30afd70c7..655a25432842 100644 --- a/common/tools/eslint-plugin-azure-sdk/README.md +++ b/common/tools/eslint-plugin-azure-sdk/README.md @@ -20,9 +20,9 @@ To enable `@azure/eslint-plugin-azure-sdk`, you'll need to add it to the list of } ``` -The ESLint plugin must be built from source as part of your package's depdendencies. The fastest way to build a single package and its dependencies is to run the command `rush build -t `. For example, to rebuild the Form Recognizer package and all of its dependencies, we run `rush build -t @azure/ai-form-recognizer`. This will rebuild `eslint-plugin-azure-sdk` if necessary and make it available for use by the package's NPM scripts. +The ESLint plugin must be built from source as part of your package's depdendencies. The fastest way to build a single package and its dependencies is to run the command `pnpm build --filter=`. For example, to rebuild the Form Recognizer package and all of its dependencies, we run `pnpm build --filter=@azure/ai-form-recognizer`. This will rebuild `eslint-plugin-azure-sdk` if necessary and make it available for use by the package's NPM scripts. -**You must rebuild `eslint-plugin-azure-sdk` after making changes to its own source files,** either using `rush build` as described above, or by entering the `common/tools/eslint-plugin-azure-sdk` directory (this directory) and running `rushx build`. Since the plugin is linked internally as part of our monorepo, the package does not need to be installed again after it is rebuilt. +**You must rebuild `eslint-plugin-azure-sdk` after making changes to its own source files,** either using `pnpm build` as described above, or by entering the `common/tools/eslint-plugin-azure-sdk` directory (this directory) and running `pnpm build`. Since the plugin is linked internally as part of our monorepo, the package does not need to be installed again after it is rebuilt. See [the contribution guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) for more details about contributing to the azure-sdk-for-js repository. diff --git a/common/tools/eslint-plugin-azure-sdk/config/rush-project.json b/common/tools/eslint-plugin-azure-sdk/config/rush-project.json deleted file mode 100644 index 49c0a9a3fd63..000000000000 --- a/common/tools/eslint-plugin-azure-sdk/config/rush-project.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": "../../../config/rush-project.json" -} diff --git a/common/tools/eslint-plugin-azure-sdk/src/configs/azure-sdk-customized.ts b/common/tools/eslint-plugin-azure-sdk/src/configs/azure-sdk-customized.ts index f3bf206f5202..6d48c6f03e8c 100644 --- a/common/tools/eslint-plugin-azure-sdk/src/configs/azure-sdk-customized.ts +++ b/common/tools/eslint-plugin-azure-sdk/src/configs/azure-sdk-customized.ts @@ -10,6 +10,7 @@ import tsdoc from "eslint-plugin-tsdoc"; const tsEslintCustomization: Record = { "@typescript-eslint/no-invalid-this": "off", "@typescript-eslint/no-require-imports": "error", + "@typescript-eslint/consistent-type-imports": "warn", "@typescript-eslint/no-use-before-define": ["error", { functions: false, classes: false }], "@typescript-eslint/explicit-module-boundary-types": ["error"], "@typescript-eslint/no-redeclare": ["error", { builtinGlobals: true }], diff --git a/common/tools/perf-tests-track-1-setup.js b/common/tools/perf-tests-track-1-setup.js index 02df48684067..7079a4a066d0 100644 --- a/common/tools/perf-tests-track-1-setup.js +++ b/common/tools/perf-tests-track-1-setup.js @@ -21,15 +21,9 @@ function spawn(command) { } } -const navigateToPerfFolder = `cd ${path.resolve( - "..", - "..", - "..", - "test-utils", - "perf" -)}`; -const buildPerfPackage = `rush build -t test-utils-perf`; -const rushxPack = `rushx pack`; +const navigateToPerfFolder = `cd ${path.resolve("..", "..", "..", "test-utils", "perf")}`; +const buildPerfPackage = `pnpm build --filter=test-utils-perf`; +const rushxPack = `pnpm pack`; console.log(`\nGetting perf package...`); spawn(`${navigateToPerfFolder} && ${buildPerfPackage} && ${rushxPack}`); diff --git a/eng/common/pipelines/templates/jobs/generate-job-matrix.yml b/eng/common/pipelines/templates/jobs/generate-job-matrix.yml index a7459e6b5db5..ab67e915de85 100644 --- a/eng/common/pipelines/templates/jobs/generate-job-matrix.yml +++ b/eng/common/pipelines/templates/jobs/generate-job-matrix.yml @@ -42,6 +42,12 @@ parameters: - name: PreGenerationSteps type: stepList default: [] +- name: EnablePRGeneration + type: boolean + default: false +- name: PRMatrixSetting + type: string + default: 'ArtifactPackageNames' # Mappings to OS name required at template compile time by 1es pipeline templates - name: Pools type: object @@ -84,57 +90,87 @@ jobs: - ${{ parameters.PreGenerationSteps }} - - ${{ each config in parameters.MatrixConfigs }}: + - ${{ if eq(parameters.EnablePRGeneration, false) }}: + - ${{ each config in parameters.MatrixConfigs }}: + - ${{ each pool in parameters.Pools }}: + - ${{ if eq(config.GenerateVMJobs, 'true') }}: + - task: Powershell@2 + inputs: + pwsh: true + filePath: eng/common/scripts/job-matrix/Create-JobMatrix.ps1 + arguments: > + -ConfigPath ${{ config.Path }} + -Selection ${{ config.Selection }} + -DisplayNameFilter '$(displayNameFilter)' + -Filters '${{ join(''',''', parameters.MatrixFilters) }}', 'container=^$', 'SupportedClouds=^$|${{ parameters.CloudConfig.Cloud }}', 'Pool=${{ pool.filter }}' + -Replace '${{ join(''',''', parameters.MatrixReplace) }}' + -NonSparseParameters '${{ join(''',''', config.NonSparseParameters) }}' + displayName: Create ${{ pool.name }} Matrix ${{ config.Name }} + name: vm_job_matrix_${{ config.Name }}_${{ pool.name }} + - ${{ if eq(config.GenerateContainerJobs, 'true') }}: + - task: Powershell@2 + inputs: + pwsh: true + filePath: eng/common/scripts/job-matrix/Create-JobMatrix.ps1 + arguments: > + -ConfigPath ${{ config.Path }} + -Selection ${{ config.Selection }} + -DisplayNameFilter '$(displayNameFilter)' + -Filters '${{ join(''',''', parameters.MatrixFilters) }}', 'container=^$', 'SupportedClouds=^$|${{ parameters.CloudConfig.Cloud }}', 'Pool=${{ pool.filter }}' + -NonSparseParameters '${{ join(''',''', config.NonSparseParameters) }}' + displayName: Create ${{ pool.name }} Container Matrix ${{ config.Name }} + name: container_job_matrix_${{ config.Name }}_${{ pool.name }} + + # This else being set also currently assumes that the $(Build.ArtifactStagingDirectory)/PackageInfo folder is populated by PreGenerationSteps. + # Not currently not hardcoded, so not doing the needful and populating this folder before we hit this step will result in generation errors. + - ${{ else }}: - ${{ each pool in parameters.Pools }}: - - ${{ if eq(config.GenerateVMJobs, 'true') }}: - - task: Powershell@2 - inputs: - pwsh: true - filePath: eng/common/scripts/job-matrix/Create-JobMatrix.ps1 - arguments: > - -ConfigPath ${{ config.Path }} - -Selection ${{ config.Selection }} - -DisplayNameFilter '$(displayNameFilter)' - -Filters '${{ join(''',''', parameters.MatrixFilters) }}', 'container=^$', 'SupportedClouds=^$|${{ parameters.CloudConfig.Cloud }}', 'Pool=${{ pool.filter }}' - -Replace '${{ join(''',''', parameters.MatrixReplace) }}' - -NonSparseParameters '${{ join(''',''', config.NonSparseParameters) }}' - displayName: Create ${{ pool.name }} Matrix ${{ config.Name }} - name: vm_job_matrix_${{ config.Name }}_${{ pool.name }} + - pwsh: | + # dump the conglomerated CI matrix + '${{ convertToJson(parameters.MatrixConfigs) }}' | Set-Content matrix.json - - ${{ if eq(config.GenerateContainerJobs, 'true') }}: - - task: Powershell@2 - inputs: - pwsh: true - filePath: eng/common/scripts/job-matrix/Create-JobMatrix.ps1 - arguments: > - -ConfigPath ${{ config.Path }} - -Selection ${{ config.Selection }} - -DisplayNameFilter '$(displayNameFilter)' - -Filters '${{ join(''',''', parameters.MatrixFilters) }}', 'container=^$', 'SupportedClouds=^$|${{ parameters.CloudConfig.Cloud }}', 'Pool=${{ pool.filter }}' - -NonSparseParameters '${{ join(''',''', config.NonSparseParameters) }}' - displayName: Create ${{ pool.name }} Container Matrix ${{ config.Name }} - name: container_job_matrix_${{ config.Name }}_${{ pool.name }} + ./eng/common/scripts/job-matrix/Create-PrJobMatrix.ps1 ` + -PackagePropertiesFolder $(Build.ArtifactStagingDirectory)/PackageInfo ` + -PRMatrixFile matrix.json ` + -PRMatrixSetting ${{ parameters.PRMatrixSetting }} ` + -DisplayNameFilter '$(displayNameFilter)' ` + -Filters '${{ join(''',''', parameters.MatrixFilters) }}', 'container=^$', 'SupportedClouds=^$|${{ parameters.CloudConfig.Cloud }}', 'Pool=${{ pool.filter }}' ` + -Replace '${{ join(''',''', parameters.MatrixReplace) }}' + displayName: Create ${{ pool.name }} PR Matrix + name: vm_job_matrix_pr_${{ pool.name }} -- ${{ each config in parameters.MatrixConfigs }}: - - ${{ each pool in parameters.Pools }}: - - ${{ if eq(config.GenerateVMJobs, 'true') }}: - - template: ${{ parameters.JobTemplatePath }} - parameters: - UsePlatformContainer: false - OSName: ${{ pool.os }} - Matrix: dependencies.${{ parameters.GenerateJobName }}.outputs['vm_job_matrix_${{ config.Name }}_${{ pool.name }}.matrix'] - DependsOn: ${{ parameters.GenerateJobName }} - CloudConfig: ${{ parameters.CloudConfig }} - ${{ each param in parameters.AdditionalParameters }}: - ${{ param.key }}: ${{ param.value }} +- ${{ if eq(parameters.EnablePRGeneration, false) }}: + - ${{ each config in parameters.MatrixConfigs }}: + - ${{ each pool in parameters.Pools }}: + - ${{ if eq(config.GenerateVMJobs, 'true') }}: + - template: ${{ parameters.JobTemplatePath }} + parameters: + UsePlatformContainer: false + OSName: ${{ pool.os }} + Matrix: dependencies.${{ parameters.GenerateJobName }}.outputs['vm_job_matrix_${{ config.Name }}_${{ pool.name }}.matrix'] + DependsOn: ${{ parameters.GenerateJobName }} + CloudConfig: ${{ parameters.CloudConfig }} + ${{ each param in parameters.AdditionalParameters }}: + ${{ param.key }}: ${{ param.value }} - - ${{ if eq(config.GenerateContainerJobs, 'true') }}: - - template: ${{ parameters.JobTemplatePath }} - parameters: - UsePlatformContainer: true - OSName: ${{ pool.os }} - Matrix: dependencies.${{ parameters.GenerateJobName }}.outputs['vm_job_matrix_${{ config.Name }}_${{ pool.name }}.matrix'] - DependsOn: ${{ parameters.GenerateJobName }} - CloudConfig: ${{ parameters.CloudConfig }} - ${{ each param in parameters.AdditionalParameters }}: - ${{ param.key }}: ${{ param.value }} + - ${{ if eq(config.GenerateContainerJobs, 'true') }}: + - template: ${{ parameters.JobTemplatePath }} + parameters: + UsePlatformContainer: true + OSName: ${{ pool.os }} + Matrix: dependencies.${{ parameters.GenerateJobName }}.outputs['vm_job_matrix_${{ config.Name }}_${{ pool.name }}.matrix'] + DependsOn: ${{ parameters.GenerateJobName }} + CloudConfig: ${{ parameters.CloudConfig }} + ${{ each param in parameters.AdditionalParameters }}: + ${{ param.key }}: ${{ param.value }} +- ${{ else }}: + - ${{ each pool in parameters.Pools }}: + - template: ${{ parameters.JobTemplatePath }} + parameters: + UsePlatformContainer: false + OSName: ${{ pool.os }} + Matrix: dependencies.${{ parameters.GenerateJobName }}.outputs['vm_job_matrix_pr_${{ pool.name }}.matrix'] + DependsOn: ${{ parameters.GenerateJobName }} + CloudConfig: ${{ parameters.CloudConfig }} + ${{ each param in parameters.AdditionalParameters }}: + ${{ param.key }}: ${{ param.value }} diff --git a/eng/common/scripts/Helpers/Package-Helpers.ps1 b/eng/common/scripts/Helpers/Package-Helpers.ps1 index 3c882b31111b..e83be6643cbf 100644 --- a/eng/common/scripts/Helpers/Package-Helpers.ps1 +++ b/eng/common/scripts/Helpers/Package-Helpers.ps1 @@ -170,10 +170,86 @@ function GetValueSafelyFrom-Yaml { $current = $current[$key] } else { - Write-Host "The '$key' part of the path $($Keys -join "/") doesn't exist or is null." return $null } } return [object]$current -} \ No newline at end of file +} + +function Get-ObjectKey { + param ( + [Parameter(Mandatory = $true)] + [object]$Object + ) + + if (-not $Object) { + return "unset" + } + + if ($Object -is [hashtable] -or $Object -is [System.Collections.Specialized.OrderedDictionary]) { + $sortedEntries = $Object.GetEnumerator() | Sort-Object Name + $hashString = ($sortedEntries | ForEach-Object { "$($_.Key)=$($_.Value)" }) -join ";" + return $hashString.GetHashCode() + } + + elseif ($Object -is [PSCustomObject]) { + $sortedProperties = $Object.PSObject.Properties | Sort-Object Name + $propertyString = ($sortedProperties | ForEach-Object { "$($_.Name)=$($_.Value)" }) -join ";" + return $propertyString.GetHashCode() + } + + elseif ($Object -is [array]) { + $arrayString = ($Object | ForEach-Object { Get-ObjectKey $_ }) -join ";" + return $arrayString.GetHashCode() + } + + else { + return $Object.GetHashCode() + } +} + +function Group-ByObjectKey { + param ( + [Parameter(Mandatory)] + [array]$Items, + + [Parameter(Mandatory)] + [string]$GroupByProperty + ) + + $groupedDictionary = @{} + + foreach ($item in $Items) { + $key = Get-ObjectKey $item."$GroupByProperty" + + if (-not $groupedDictionary.ContainsKey($key)) { + $groupedDictionary[$key] = @() + } + + # Add the current item to the array for this key + $groupedDictionary[$key] += $item + } + + return $groupedDictionary +} + +function Split-ArrayIntoBatches { + param ( + [Parameter(Mandatory = $true)] + [Object[]]$InputArray, + + [Parameter(Mandatory = $true)] + [int]$BatchSize + ) + + $batches = @() + + for ($i = 0; $i -lt $InputArray.Count; $i += $BatchSize) { + $batch = $InputArray[$i..[math]::Min($i + $BatchSize - 1, $InputArray.Count - 1)] + + $batches += , $batch + } + + return , $batches +} diff --git a/eng/common/scripts/Helpers/Resource-Helpers.ps1 b/eng/common/scripts/Helpers/Resource-Helpers.ps1 index a5806ea1ea0a..ce8e40d15f48 100644 --- a/eng/common/scripts/Helpers/Resource-Helpers.ps1 +++ b/eng/common/scripts/Helpers/Resource-Helpers.ps1 @@ -232,104 +232,10 @@ function Remove-WormStorageAccounts() { foreach ($group in $groups) { Write-Host "=========================================" $accounts = Get-AzStorageAccount -ResourceGroupName $group.ResourceGroupName - if ($accounts) { - foreach ($account in $accounts) { - if ($WhatIfPreference) { - Write-Host "What if: Removing $($account.StorageAccountName) in $($account.ResourceGroupName)" - } - else { - Write-Host "Removing $($account.StorageAccountName) in $($account.ResourceGroupName)" - } - - $hasContainers = ($account.Kind -ne "FileStorage") - - # If it doesn't have containers then we can skip the explicit clean-up of this storage account - if (!$hasContainers) { continue } - - $ctx = New-AzStorageContext -StorageAccountName $account.StorageAccountName - $containers = $ctx | Get-AzStorageContainer - $blobs = $containers | Get-AzStorageBlob - - $immutableBlobs = $containers ` - | Where-Object { $_.BlobContainerProperties.HasImmutableStorageWithVersioning } ` - | Get-AzStorageBlob - try { - foreach ($blob in $immutableBlobs) { - # We can't edit blobs with customer encryption without using that key - # so just try to delete them fully instead. It is unlikely they - # will also have a legal hold enabled. - if (($blob | Get-Member 'ListBlobProperties') ` - -and $blob.ListBlobProperties.Properties.CustomerProvidedKeySha256) { - Write-Host "Removing customer encrypted blob: $($blob.Name), account: $($account.StorageAccountName), group: $($group.ResourceGroupName)" - $blob | Remove-AzStorageBlob -Force - continue - } - - if (!($blob | Get-Member 'BlobProperties')) { - continue - } - - if ($blob.BlobProperties.LeaseState -eq 'Leased') { - Write-Host "Breaking blob lease: $($blob.Name), account: $($account.StorageAccountName), group: $($group.ResourceGroupName)" - $blob.ICloudBlob.BreakLease() - } + if (!$accounts) { break } - if ($blob.BlobProperties.HasLegalHold) { - Write-Host "Removing legal hold - blob: $($blob.Name), account: $($account.StorageAccountName), group: $($group.ResourceGroupName)" - $blob | Set-AzStorageBlobLegalHold -DisableLegalHold | Out-Null - } - } - } catch { - Write-Warning "Ensure user has 'Storage Blob Data Owner' RBAC permission on subscription or resource group" - Write-Error $_ - throw - } - # Sometimes we get a 404 blob not found but can still delete containers, - # and sometimes we must delete the blob if there's a legal hold. - # Try to remove the blob, but keep running regardless. - $succeeded = $false - for ($attempt = 0; $attempt -lt 2; $attempt++) { - if ($succeeded) { - break - } - - try { - foreach ($blob in $blobs) { - if ($blob.BlobProperties.ImmutabilityPolicy.PolicyMode) { - Write-Host "Removing immutability policy - blob: $($blob.Name), account: $($ctx.StorageAccountName), group: $($group.ResourceGroupName)" - $null = $blob | Remove-AzStorageBlobImmutabilityPolicy - } - } - } - catch {} - - try { - foreach ($blob in $blobs) { - $blob | Remove-AzStorageBlob -Force - } - $succeeded = $true - } - catch { - Write-Warning "Failed to remove blobs - account: $($ctx.StorageAccountName), group: $($group.ResourceGroupName)" - Write-Warning $_ - } - } - - try { - # Use AzRm cmdlet as deletion will only work through ARM with the immutability policies defined on the blobs - $containers | ForEach-Object { Remove-AzRmStorageContainer -Name $_.Name -StorageAccountName $ctx.StorageAccountName -ResourceGroupName $group.ResourceGroupName -Force } - } catch { - Write-Warning "Container removal failed. Ignoring the error and trying to delete the storage account." - Write-Warning $_ - } - Remove-AzStorageAccount -StorageAccountName $account.StorageAccountName -ResourceGroupName $account.ResourceGroupName -Force - } - } - if ($WhatIfPreference) { - Write-Host "What if: Removing resource group $($group.ResourceGroupName)" - } - else { - Remove-AzResourceGroup -ResourceGroupName $group.ResourceGroupName -Force -AsJob + foreach ($account in $accounts) { + RemoveStorageAccount -Account $account } } } @@ -401,6 +307,96 @@ function SetStorageNetworkAccessRules([string]$ResourceGroupName, [array]$AllowI } } +function RemoveStorageAccount($Account) { + Write-Host ($WhatIfPreference ? 'What if: ' : '') + "Readying $($Account.StorageAccountName) in $($Account.ResourceGroupName) for deletion" + # If it doesn't have containers then we can skip the explicit clean-up of this storage account + if ($Account.Kind -eq "FileStorage") { return } + + $containers = New-AzStorageContext -StorageAccountName $Account.StorageAccountName | Get-AzStorageContainer + $blobs = $containers | Get-AzStorageBlob + $deleteNow = @() + + try { + foreach ($blob in $blobs) { + $shouldDelete = EnableBlobDeletion -Blob $blob -StorageAccountName $Account.StorageAccountName -ResourceGroupName $Account.ResourceGroupName + if ($shouldDelete) { + $deleteNow += $blob + } + } + } catch { + Write-Warning "Ensure user has 'Storage Blob Data Owner' RBAC permission on subscription or resource group" + Write-Error $_ + throw + } + + # Blobs with legal holds or immutability policies must be deleted individually + # before the container/account can be deleted + foreach ($blobToDelete in $deleteNow) { + try { + $blobToDelete | Remove-AzStorageBlob -Force + } catch { + Write-Host "Blob removal failed: $($Blob.Name), account: $($Account.storageAccountName), group: $($Account.ResourceGroupName)" + Write-Warning "Ignoring the error and trying to delete the storage account" + Write-Warning $_ + } + } + + foreach ($container in $containers) { + if ($container.BlobContainerProperties.HasImmutableStorageWithVersioning) { + try { + # Use AzRm cmdlet as deletion will only work through ARM with the immutability policies defined on the blobs + Remove-AzRmStorageContainer -Name $container.Name -StorageAccountName $Account.StorageAccountName -ResourceGroupName $Account.ResourceGroupName -Force + #$container | Remove-AzStorageContainer + } catch { + Write-Host "Container removal failed: $($container.Name), account: $($Account.storageAccountName), group: $($Account.ResourceGroupName)" + Write-Warning "Ignoring the error and trying to delete the storage account" + Write-Warning $_ + } + } + } + + if ($containers) { + Remove-AzStorageAccount -StorageAccountName $Account.StorageAccountName -ResourceGroupName $Account.ResourceGroupName -Force + } +} + +function EnableBlobDeletion($Blob, $StorageAccountName, $ResourceGroupName) { + # Some properties like immutability policies require the blob to be + # deleted before the container can be deleted + $forceBlobDeletion = $false + + # We can't edit blobs with customer encryption without using that key + # so just try to delete them fully instead. It is unlikely they + # will also have a legal hold enabled. + if (($Blob | Get-Member 'ListBlobProperties') ` + -and $Blob.ListBlobProperties.Properties.CustomerProvidedKeySha256) { + return $true + } + + if (!($Blob | Get-Member 'BlobProperties')) { + return $false + } + + if ($Blob.BlobProperties.ImmutabilityPolicy.PolicyMode) { + Write-Host "Removing immutability policy - blob: $($Blob.Name), account: $StorageAccountName, group: $ResourceGroupName" + $null = $Blob | Remove-AzStorageBlobImmutabilityPolicy + $forceBlobDeletion = $true + } + + if ($Blob.BlobProperties.HasLegalHold) { + Write-Host "Removing legal hold - blob: $($Blob.Name), account: $StorageAccountName, group: $ResourceGroupName" + $Blob | Set-AzStorageBlobLegalHold -DisableLegalHold | Out-Null + $forceBlobDeletion = $true + } + + if ($Blob.BlobProperties.LeaseState -eq 'Leased') { + Write-Host "Breaking blob lease: $($Blob.Name), account: $StorageAccountName, group: $ResourceGroupName" + $Blob.ICloudBlob.BreakLease() + } + + return $forceBlobDeletion +} + function DoesSubnetOverlap([string]$ipOrCidr, [string]$overlapIp) { [System.Net.IPAddress]$overlapIpAddress = $overlapIp $parsed = $ipOrCidr -split '/' diff --git a/eng/common/scripts/Package-Properties.ps1 b/eng/common/scripts/Package-Properties.ps1 index 61054f10f22a..38d181eaac50 100644 --- a/eng/common/scripts/Package-Properties.ps1 +++ b/eng/common/scripts/Package-Properties.ps1 @@ -1,8 +1,7 @@ # Helper functions for retrieving useful information from azure-sdk-for-* repo . "${PSScriptRoot}\logging.ps1" . "${PSScriptRoot}\Helpers\Package-Helpers.ps1" -class PackageProps -{ +class PackageProps { [string]$Name [string]$Version [string]$DevVersion @@ -21,14 +20,13 @@ class PackageProps # additional packages required for validation of this one [string[]]$AdditionalValidationPackages [HashTable]$ArtifactDetails + [HashTable[]]$CIMatrixConfigs - PackageProps([string]$name, [string]$version, [string]$directoryPath, [string]$serviceDirectory) - { + PackageProps([string]$name, [string]$version, [string]$directoryPath, [string]$serviceDirectory) { $this.Initialize($name, $version, $directoryPath, $serviceDirectory) } - PackageProps([string]$name, [string]$version, [string]$directoryPath, [string]$serviceDirectory, [string]$group = "") - { + PackageProps([string]$name, [string]$version, [string]$directoryPath, [string]$serviceDirectory, [string]$group = "") { $this.Initialize($name, $version, $directoryPath, $serviceDirectory, $group) } @@ -37,35 +35,29 @@ class PackageProps [string]$version, [string]$directoryPath, [string]$serviceDirectory - ) - { + ) { $this.Name = $name $this.Version = $version $this.DirectoryPath = $directoryPath $this.ServiceDirectory = $serviceDirectory $this.IncludedForValidation = $false - if (Test-Path (Join-Path $directoryPath "README.md")) - { + if (Test-Path (Join-Path $directoryPath "README.md")) { $this.ReadMePath = Join-Path $directoryPath "README.md" } - else - { + else { $this.ReadMePath = $null } - if (Test-Path (Join-Path $directoryPath "CHANGELOG.md")) - { + if (Test-Path (Join-Path $directoryPath "CHANGELOG.md")) { $this.ChangeLogPath = Join-Path $directoryPath "CHANGELOG.md" # Get release date for current version and set in package property $changeLogEntry = Get-ChangeLogEntry -ChangeLogLocation $this.ChangeLogPath -VersionString $this.Version - if ($changeLogEntry -and $changeLogEntry.ReleaseStatus) - { - $this.ReleaseStatus = $changeLogEntry.ReleaseStatus.Trim().Trim("()") + if ($changeLogEntry -and $changeLogEntry.ReleaseStatus) { + $this.ReleaseStatus = $changeLogEntry.ReleaseStatus.Trim().Trim("()") } } - else - { + else { $this.ChangeLogPath = $null } @@ -78,14 +70,12 @@ class PackageProps [string]$directoryPath, [string]$serviceDirectory, [string]$group - ) - { + ) { $this.Initialize($name, $version, $directoryPath, $serviceDirectory) $this.Group = $group } - hidden [HashTable]ParseYmlForArtifact([string]$ymlPath) { - + hidden [PSCustomObject]ParseYmlForArtifact([string]$ymlPath) { $content = LoadFrom-Yaml $ymlPath if ($content) { $artifacts = GetValueSafelyFrom-Yaml $content @("extends", "parameters", "Artifacts") @@ -95,24 +85,40 @@ class PackageProps $artifactForCurrentPackage = $artifacts | Where-Object { $_["name"] -eq $this.ArtifactName -or $_["name"] -eq $this.Name } } + # if we found an artifact for the current package, we should count this ci file as the source of the matrix for this package if ($artifactForCurrentPackage) { - return [HashTable]$artifactForCurrentPackage + $result = [PSCustomObject]@{ + ArtifactConfig = [HashTable]$artifactForCurrentPackage + MatrixConfigs = @() + } + + # if we know this is the matrix for our file, we should now see if there is a custom matrix config for the package + $matrixConfigList = GetValueSafelyFrom-Yaml $content @("extends", "parameters", "MatrixConfigs") + + if ($matrixConfigList) { + $result.MatrixConfigs = $matrixConfigList + } + + return $result } } return $null } - [void]InitializeCIArtifacts(){ + [void]InitializeCIArtifacts() { $RepoRoot = Resolve-Path (Join-Path $PSScriptRoot ".." ".." "..") $ciFolderPath = Join-Path -Path $RepoRoot -ChildPath (Join-Path "sdk" $this.ServiceDirectory) $ciFiles = Get-ChildItem -Path $ciFolderPath -Filter "ci*.yml" -File if (-not $this.ArtifactDetails) { - foreach($ciFile in $ciFiles) { + foreach ($ciFile in $ciFiles) { $ciArtifactResult = $this.ParseYmlForArtifact($ciFile.FullName) if ($ciArtifactResult) { - $this.ArtifactDetails = [Hashtable]$ciArtifactResult + $this.ArtifactDetails = [Hashtable]$ciArtifactResult.ArtifactConfig + $this.CIMatrixConfigs = $ciArtifactResult.MatrixConfigs + # if this package appeared in this ci file, then we should + # treat this CI file as the source of the Matrix for this package break } } @@ -124,8 +130,7 @@ class PackageProps # Returns important properties of the package relative to the language repo # Returns a PS Object with properties @ { pkgName, pkgVersion, pkgDirectoryPath, pkgReadMePath, pkgChangeLogPath } # Note: python is required for parsing python package properties. -function Get-PkgProperties -{ +function Get-PkgProperties { Param ( [Parameter(Mandatory = $true)] @@ -136,10 +141,8 @@ function Get-PkgProperties $allPkgProps = Get-AllPkgProperties -ServiceDirectory $ServiceDirectory $pkgProps = $allPkgProps.Where({ $_.Name -eq $PackageName -or $_.ArtifactName -eq $PackageName }); - if ($pkgProps.Count -ge 1) - { - if ($pkgProps.Count -gt 1) - { + if ($pkgProps.Count -ge 1) { + if ($pkgProps.Count -gt 1) { Write-Host "Found more than one project with the name [$PackageName], choosing the first one under $($pkgProps[0].DirectoryPath)" } return $pkgProps[0] @@ -159,14 +162,12 @@ function Get-PrPkgProperties([string]$InputDiffJson) { $additionalValidationPackages = @() $lookup = @{} - foreach ($pkg in $allPackageProperties) - { + foreach ($pkg in $allPackageProperties) { $pkgDirectory = Resolve-Path "$($pkg.DirectoryPath)" $lookupKey = ($pkg.DirectoryPath).Replace($RepoRoot, "").TrimStart('\/') $lookup[$lookupKey] = $pkg - foreach ($file in $targetedFiles) - { + foreach ($file in $targetedFiles) { $filePath = Resolve-Path (Join-Path $RepoRoot $file) $shouldInclude = $filePath -like "$pkgDirectory*" if ($shouldInclude) { @@ -191,8 +192,7 @@ function Get-PrPkgProperties([string]$InputDiffJson) { } } - if ($AdditionalValidationPackagesFromPackageSetFn -and (Test-Path "Function:$AdditionalValidationPackagesFromPackageSetFn")) - { + if ($AdditionalValidationPackagesFromPackageSetFn -and (Test-Path "Function:$AdditionalValidationPackagesFromPackageSetFn")) { $packagesWithChanges += &$AdditionalValidationPackagesFromPackageSetFn $packagesWithChanges $diff $allPackageProperties } @@ -202,25 +202,19 @@ function Get-PrPkgProperties([string]$InputDiffJson) { # Takes ServiceName and Repo Root Directory # Returns important properties for each package in the specified service, or entire repo if the serviceName is not specified # Returns a Table of service key to array values of PS Object with properties @ { pkgName, pkgVersion, pkgDirectoryPath, pkgReadMePath, pkgChangeLogPath } -function Get-AllPkgProperties ([string]$ServiceDirectory = $null) -{ +function Get-AllPkgProperties ([string]$ServiceDirectory = $null) { $pkgPropsResult = @() - if (Test-Path "Function:Get-AllPackageInfoFromRepo") - { + if (Test-Path "Function:Get-AllPackageInfoFromRepo") { $pkgPropsResult = Get-AllPackageInfoFromRepo -ServiceDirectory $serviceDirectory } - else - { - if ([string]::IsNullOrEmpty($ServiceDirectory)) - { - foreach ($dir in (Get-ChildItem (Join-Path $RepoRoot "sdk") -Directory)) - { + else { + if ([string]::IsNullOrEmpty($ServiceDirectory)) { + foreach ($dir in (Get-ChildItem (Join-Path $RepoRoot "sdk") -Directory)) { $pkgPropsResult += Get-PkgPropsForEntireService -serviceDirectoryPath $dir.FullName } } - else - { + else { $pkgPropsResult = Get-PkgPropsForEntireService -serviceDirectoryPath (Join-Path $RepoRoot "sdk" $ServiceDirectory) } } @@ -230,29 +224,24 @@ function Get-AllPkgProperties ([string]$ServiceDirectory = $null) # Given the metadata url under https://github.com/Azure/azure-sdk/tree/main/_data/releases/latest, # the function will return the csv metadata back as part of the response. -function Get-CSVMetadata ([string]$MetadataUri=$MetadataUri) -{ +function Get-CSVMetadata ([string]$MetadataUri = $MetadataUri) { $metadataResponse = Invoke-RestMethod -Uri $MetadataUri -method "GET" -MaximumRetryCount 3 -RetryIntervalSec 10 | ConvertFrom-Csv return $metadataResponse } -function Get-PkgPropsForEntireService ($serviceDirectoryPath) -{ +function Get-PkgPropsForEntireService ($serviceDirectoryPath) { $projectProps = @() # Properties from every project in the service $serviceDirectory = $serviceDirectoryPath -replace '^.*[\\/]+sdk[\\/]+([^\\/]+).*$', '$1' - if (!$GetPackageInfoFromRepoFn -or !(Test-Path "Function:$GetPackageInfoFromRepoFn")) - { + if (!$GetPackageInfoFromRepoFn -or !(Test-Path "Function:$GetPackageInfoFromRepoFn")) { LogError "The function for '$GetPackageInfoFromRepoFn' was not found.` Make sure it is present in eng/scripts/Language-Settings.ps1 and referenced in eng/common/scripts/common.ps1.` See https://github.com/Azure/azure-sdk-tools/blob/main/doc/common/common_engsys.md#code-structure" } - foreach ($directory in (Get-ChildItem $serviceDirectoryPath -Directory)) - { + foreach ($directory in (Get-ChildItem $serviceDirectoryPath -Directory)) { $pkgProps = &$GetPackageInfoFromRepoFn $directory.FullName $serviceDirectory - if ($null -ne $pkgProps) - { + if ($null -ne $pkgProps) { $projectProps += $pkgProps } } diff --git a/eng/common/scripts/job-matrix/Create-PrJobMatrix.ps1 b/eng/common/scripts/job-matrix/Create-PrJobMatrix.ps1 new file mode 100644 index 000000000000..03fc6422e3aa --- /dev/null +++ b/eng/common/scripts/job-matrix/Create-PrJobMatrix.ps1 @@ -0,0 +1,130 @@ +<# +.SYNOPSIS +Generates a combined PR job matrix from a package properties folder. It is effectively a combination of +Create-JobMatrix and distribute-packages-to-matrix. + +.DESCRIPTION +Create-JobMatrix has a limitation in that it accepts one or multiple matrix files, but it doesn't allow runtime +selection of the matrix file based on what is being built. Due to this, this script exists to provide exactly +that mapping. + +It should be called from a PR build only. + +It generates the matrix by the following algorithm: + - load all package properties files + - group the package properties by their targeted CI Matrix Configs + - for each package group, generate the matrix for each matrix config in the group (remember MatrixConfigs is a list not a single object) + - for each matrix config, generate the matrix + - calculate if batching is necessary for this matrix config + - for each batch + - create combined property name for the batch + - walk each matrix item + - add suffixes for batch and matrix config if nececessary to the job name + - add the combined property name to the parameters of the matrix item + - add the matrix item to the overall result + +.EXAMPLE +./eng/common/scripts/job-matrix/Create-PrJobMatrix.ps1 ` + -PackagePropertiesFolder "path/to/populated/PackageInfo" ` + -PrMatrixSetting "" +#> + +[CmdletBinding()] +param ( + [Parameter(Mandatory = $true)][string] $PackagePropertiesFolder, + [Parameter(Mandatory = $true)][string] $PRMatrixFile, + [Parameter(Mandatory = $true)][string] $PRMatrixSetting, + [Parameter(Mandatory = $False)][string] $DisplayNameFilter, + [Parameter(Mandatory = $False)][array] $Filters, + [Parameter(Mandatory = $False)][array] $Replace, + [Parameter()][switch] $CI = ($null -ne $env:SYSTEM_TEAMPROJECTID) +) + +. $PSScriptRoot/job-matrix-functions.ps1 +. $PSScriptRoot/../Helpers/Package-Helpers.ps1 +$BATCHSIZE = 10 + +if (!(Test-Path $PackagePropertiesFolder)) { + Write-Error "Package Properties folder doesn't exist" + exit 1 +} + +if (!(Test-Path $PRMatrixFile)) { + Write-Error "PR Matrix file doesn't exist" + exit 1 +} + +Write-Host "Generating PR job matrix for $PackagePropertiesFolder" + +$configs = Get-Content -Raw $PRMatrixFile | ConvertFrom-Json + +# calculate general targeting information and create our batches prior to generating any matrix +$packageProperties = Get-ChildItem -Recurse "$PackagePropertiesFolder" *.json ` +| ForEach-Object { Get-Content -Path $_.FullName | ConvertFrom-Json } + +# set default matrix config for each package if there isn't an override +$packageProperties | ForEach-Object { + if (-not $_.CIMatrixConfigs) { + $_.CIMatrixConfigs = $configs + } +} + +# The key here is that after we group the packages by the matrix config objects, we can use the first item's MatrixConfig +# to generate the matrix for the group, no reason to have to parse the key value backwards to get the matrix config. +$matrixBatchesByConfig = Group-ByObjectKey $packageProperties "CIMatrixConfigs" + +$OverallResult = @() +foreach ($matrixBatchKey in $matrixBatchesByConfig.Keys) { + $matrixBatch = $matrixBatchesByConfig[$matrixBatchKey] + $matrixConfigs = $matrixBatch | Select-Object -First 1 -ExpandProperty CIMatrixConfigs + + $matrixResults = @() + foreach ($matrixConfig in $matrixConfigs) { + Write-Host "Generating config for $($matrixConfig.Path)" + $matrixResults = GenerateMatrixForConfig ` + -ConfigPath $matrixConfig.Path ` + -Selection $matrixConfig.Selection ` + -DisplayNameFilter $DisplayNameFilter ` + -Filters $Filters ` + -Replace $Replace + + $packageBatches = Split-ArrayIntoBatches -InputArray $matrixBatch -BatchSize $BATCHSIZE + + # we only need to modify the generated job name if there is more than one matrix config or batch in the matrix + $matrixSuffixNecessary = $matrixConfigs.Count -gt 1 + $batchSuffixNecessary = $packageBatches.Length -gt 1 + $batchCounter = 1 + + foreach ($batch in $packageBatches) { + # to understand this iteration, one must understand that the matrix is a list of hashtables, each with a couple keys: + # [ + # { "name": "jobname", "parameters": { matrixSetting1: matrixValue1, ...} }, + # ] + foreach ($matrixOutputItem in $matrixResults) { + $namesForBatch = ($batch | ForEach-Object { $_.ArtifactName }) -join "," + # we just need to iterate across them, grab the parameters hashtable, and add the new key + # if there is more than one batch, we will need to add a suffix including the batch name to the job name + $matrixOutputItem["parameters"]["$PRMatrixSetting"] = $namesForBatch + + if ($matrixSuffixNecessary) { + $matrixOutputItem["name"] = $matrixOutputItem["name"] + $matrixConfig.Name + } + + if ($batchSuffixNecessary) { + $matrixOutputItem["name"] = $matrixOutputItem["name"] + "b$batchCounter" + } + + $OverallResult += $matrixOutputItem + } + $batchCounter += 1 + } + } +} + +$serialized = SerializePipelineMatrix $OverallResult + +Write-Output $serialized.pretty + +if ($CI) { + Write-Output "##vso[task.setVariable variable=matrix;isOutput=true]$($serialized.compressed)" +} diff --git a/eng/common/scripts/job-matrix/job-matrix-functions.ps1 b/eng/common/scripts/job-matrix/job-matrix-functions.ps1 index f20dbe5281b0..0693f7983f18 100644 --- a/eng/common/scripts/job-matrix/job-matrix-functions.ps1 +++ b/eng/common/scripts/job-matrix/job-matrix-functions.ps1 @@ -740,3 +740,28 @@ function Get4dMatrixIndex([int]$index, [Array]$dimensions) { return @($page3, $page2, $page1, $remainder) } +function GenerateMatrixForConfig { + param ( + [Parameter(Mandatory = $true)][string] $ConfigPath, + [Parameter(Mandatory = $True)][string] $Selection, + [Parameter(Mandatory = $false)][string] $DisplayNameFilter, + [Parameter(Mandatory = $false)][array] $Filters, + [Parameter(Mandatory = $false)][array] $Replace + ) + $matrixFile = Join-Path $PSScriptRoot ".." ".." ".." ".." $ConfigPath + + $resolvedMatrixFile = Resolve-Path $matrixFile + + $config = GetMatrixConfigFromFile (Get-Content $resolvedMatrixFile -Raw) + # Strip empty string filters in order to be able to use azure pipelines yaml join() + $Filters = $Filters | Where-Object { $_ } + + [array]$matrix = GenerateMatrix ` + -config $config ` + -selectFromMatrixType $Selection ` + -displayNameFilter $DisplayNameFilter ` + -filters $Filters ` + -replace $Replace + + return , $matrix +} diff --git a/eng/common/scripts/logging.ps1 b/eng/common/scripts/logging.ps1 index 84adec47fea9..91640cd7eb5d 100644 --- a/eng/common/scripts/logging.ps1 +++ b/eng/common/scripts/logging.ps1 @@ -1,40 +1,93 @@ -function Test-SupportsDevOpsLogging() -{ - return ($null -ne $env:SYSTEM_TEAMPROJECTID) +function Test-SupportsDevOpsLogging() { + return ($null -ne $env:SYSTEM_TEAMPROJECTID) } -function LogWarning -{ - if (Test-SupportsDevOpsLogging) - { - Write-Host "##vso[task.LogIssue type=warning;]$args" - } - else - { - Write-Warning "$args" - } +function Test-SupportsGitHubLogging() { + return ($null -ne $env:GITHUB_ACTIONS) } -function LogError -{ - if (Test-SupportsDevOpsLogging) - { - Write-Host "##vso[task.LogIssue type=error;]$args" - } - else - { - Write-Error "$args" - } +function LogInfo { + Write-Host "$args" +} + +function LogWarning { + if (Test-SupportsDevOpsLogging) { + Write-Host ("##vso[task.LogIssue type=warning;]$args" -replace "`n", "%0D%0A") + } + elseif (Test-SupportsGitHubLogging) { + Write-Warning ("::warning::$args" -replace "`n", "%0D%0A") + } + else { + Write-Warning "$args" + } } -function LogDebug +function LogSuccess { + $esc = [char]27 + $green = "${esc}[32m" + $reset = "${esc}[0m" + + Write-Host "${green}$args${reset}" +} + +function LogErrorForFile($file, $errorString) { - if (Test-SupportsDevOpsLogging) - { - Write-Host "[debug]$args" - } - else - { - Write-Debug "$args" - } + if (Test-SupportsDevOpsLogging) { + Write-Host ("##vso[task.logissue type=error;sourcepath=$file;linenumber=1;columnnumber=1;]$errorString" -replace "`n", "%0D%0A") + } + elseif (Test-SupportsGitHubLogging) { + Write-Error ("::error file=$file,line=1,col=1::$errorString" -replace "`n", "%0D%0A") + } + else { + Write-Error "[Error in file $file]$errorString" + } +} + +function LogError { + if (Test-SupportsDevOpsLogging) { + Write-Host ("##vso[task.LogIssue type=error;]$args" -replace "`n", "%0D%0A") + } + elseif (Test-SupportsGitHubLogging) { + Write-Error ("::error::$args" -replace "`n", "%0D%0A") + } + else { + Write-Error "$args" + } +} + +function LogDebug { + if (Test-SupportsDevOpsLogging) { + Write-Host "[debug]$args" + } + elseif (Test-SupportsGitHubLogging) { + Write-Debug "::debug::$args" + } + else { + Write-Debug "$args" + } +} + +function LogGroupStart() { + if (Test-SupportsDevOpsLogging) { + Write-Host "##[group]$args" + } + elseif (Test-SupportsGitHubLogging) { + Write-Host "::group::$args" + } +} + +function LogGroupEnd() { + if (Test-SupportsDevOpsLogging) { + Write-Host "##[endgroup]" + } + elseif (Test-SupportsGitHubLogging) { + Write-Host "::endgroup::" + } +} + +function LogJobFailure() { + if (Test-SupportsDevOpsLogging) { + Write-Host "##vso[task.complete result=Failed;]" + } + # No equivalent for GitHub Actions. Failure is only determined by nonzero exit code. } diff --git a/eng/pipelines/run-for-all-packages.yml b/eng/pipelines/run-for-all-packages.yml index 33bf6d54dbcd..12c8f9603d9f 100644 --- a/eng/pipelines/run-for-all-packages.yml +++ b/eng/pipelines/run-for-all-packages.yml @@ -21,26 +21,23 @@ stages: ServiceDirectory: core - script: | - node common/scripts/install-run-rush.js install + npm install -g pnpm + pnpm install displayName: "Install library dependencies" - script: | - node common/scripts/install-run-rush.js build -t @azure/eslint-plugin-azure-sdk -t @azure/monitor-opentelemetry-exporter - node common/scripts/install-run-rush.js lint -p max + pnpm build --filter=@azure/eslint-plugin-azure-sdk ---filter=@azure/monitor-opentelemetry-exporter + pnpm lint displayName: "Build ESLint Plugin and Lint All Packages" - script: | - node common/scripts/install-run-rush.js build -p max + pnpm build displayName: "Build All Packages" - script: | - node common/scripts/install-run-rush.js build:test -t @azure/identity -t @azure/app-configuration -t @azure/event-hubs -t @azure-rest/synapse-access-control -t @azure/storage-blob - displayName: "Build Tests for Selected Packages" - - - script: | - node common/scripts/install-run-rush.js unit-test -t @azure/identity -t @azure/app-configuration -t @azure/event-hubs -p 1 + pnpm unit-test --filter=@azure/identity --filter=@azure/app-configuration --filter=@azure/event-hubs displayName: "Run Unit Tests for Selected Packages" - script: | - node common/scripts/install-run-rush.js integration-test --only @azure/app-configuration --only @azure/storage-blob --only @azure-rest/synapse-access-control -p 1 + pnpm integration-test --filter=@azure/app-configuration --filter=@azure/storage-blob --filter=@azure-rest/synapse-access-control displayName: "Run Integration Tests for Selected Packages" diff --git a/package.json b/package.json index 49ca6a9e3982..58a0656691e6 100644 --- a/package.json +++ b/package.json @@ -22,18 +22,18 @@ "update-snippets": "turbo run update-snippets" }, "devDependencies": { - "@vitest/browser": "^2.1.2", - "@vitest/coverage-istanbul": "^2.1.2", - "cspell": "^8.15.1", + "@vitest/browser": "^2.1.4", + "@vitest/coverage-istanbul": "^2.1.4", + "cspell": "^8.15.5", "prettier": "^3.3.3", "prettier-plugin-packagejson": "^2.5.3", "rimraf": "^5.0.10", "tsx": "^4.19.1", "turbo": "^2.2.3", - "typescript": "~5.5.4", - "vitest": "^2.1.2" + "typescript": "~5.6.2", + "vitest": "^2.1.4" }, - "packageManager": "pnpm@9.12.2", + "packageManager": "pnpm@9.12.3", "engines": { "pnpm": "^9.0.0" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index cdab38d21296..10a0c4cb7dbd 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -25,14 +25,14 @@ catalogs: specifier: ^18.0.0 version: 18.19.45 '@vitest/browser': - specifier: ^2.1.2 - version: 2.0.5 + specifier: ^2.1.4 + version: 2.1.4 '@vitest/coverage-istanbul': - specifier: ^2.1.2 - version: 2.0.5 + specifier: ^2.1.4 + version: 2.1.4 '@vitest/expect': - specifier: ^2.1.2 - version: 2.1.2 + specifier: ^2.1.4 + version: 2.1.4 chai: specifier: ^5.1.1 version: 5.1.1 @@ -58,8 +58,8 @@ catalogs: specifier: ~5.6.2 version: 5.6.3 vitest: - specifier: ^2.1.2 - version: 2.0.5 + specifier: ^2.1.4 + version: 2.1.4 identity: '@azure/msal-browser': specifier: ^3.26.1 @@ -237,14 +237,14 @@ importers: .: devDependencies: '@vitest/browser': - specifier: ^2.1.2 - version: 2.1.2(@vitest/spy@2.1.2)(playwright@1.46.1)(typescript@5.5.4)(vite@5.4.8(@types/node@22.7.5))(vitest@2.1.2) + specifier: ^2.1.4 + version: 2.1.4(@types/node@22.7.5)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@22.7.5))(vitest@2.1.4) '@vitest/coverage-istanbul': - specifier: ^2.1.2 - version: 2.1.2(vitest@2.1.2) + specifier: ^2.1.4 + version: 2.1.4(vitest@2.1.4) cspell: - specifier: ^8.15.1 - version: 8.15.1 + specifier: ^8.15.5 + version: 8.15.5 prettier: specifier: ^3.3.3 version: 3.3.3 @@ -261,11 +261,11 @@ importers: specifier: ^2.2.3 version: 2.2.3 typescript: - specifier: ~5.5.4 - version: 5.5.4 + specifier: ~5.6.2 + version: 5.6.3 vitest: - specifier: ^2.1.2 - version: 2.1.2(@types/node@22.7.5)(@vitest/browser@2.1.2)(msw@2.4.10(typescript@5.5.4)) + specifier: ^2.1.4 + version: 2.1.4(@types/node@22.7.5)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@22.7.5)(typescript@5.6.3)) common/tools/dev-tool: dependencies: @@ -359,9 +359,6 @@ importers: typescript: specifier: ~5.6.2 version: 5.6.3 - uglify-js: - specifier: ^3.19.3 - version: 3.19.3 yaml: specifier: ^2.3.4 version: 2.5.1 @@ -394,8 +391,8 @@ importers: specifier: ^7.5.8 version: 7.5.8 '@vitest/coverage-istanbul': - specifier: ^2.1.2 - version: 2.1.2(vitest@2.1.2) + specifier: ^2.1.4 + version: 2.1.4(vitest@2.1.4) autorest: specifier: ^3.7.1 version: 3.7.1 @@ -417,9 +414,12 @@ importers: typescript-eslint: specifier: ~8.2.0 version: 8.2.0(eslint@9.12.0)(typescript@5.6.3) + uglify-js: + specifier: ^3.4.9 + version: 3.19.3 vitest: - specifier: ^2.1.2 - version: 2.1.2(@types/node@18.19.45)(@vitest/browser@2.1.2)(msw@2.4.10(typescript@5.6.3)) + specifier: ^2.1.4 + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) common/tools/eslint-plugin-azure-sdk: dependencies: @@ -513,7 +513,7 @@ importers: version: 0.5.21 vitest: specifier: ^2.1.2 - version: 2.1.2(@types/node@18.19.45)(@vitest/browser@2.1.2)(msw@2.4.10(typescript@5.6.3)) + version: 2.1.2(@types/node@18.19.45)(@vitest/browser@2.1.2)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) common/tools/vite-plugin-browser-test-map: dependencies: @@ -842,10 +842,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) autorest: specifier: latest version: 3.7.1 @@ -863,7 +863,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/analysisservices/arm-analysisservices: dependencies: @@ -1143,7 +1143,7 @@ importers: version: 21.0.3 '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -1158,7 +1158,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/apimanagement/api-management-custom-widgets-tools: dependencies: @@ -1189,10 +1189,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -1204,7 +1204,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/apimanagement/arm-apimanagement: dependencies: @@ -1390,10 +1390,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -1411,7 +1411,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/appconfiguration/arm-appconfiguration: dependencies: @@ -2036,10 +2036,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) buffer: specifier: ^6.0.0 version: 6.0.3 @@ -2063,7 +2063,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/authorization/arm-authorization: dependencies: @@ -2704,10 +2704,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -2728,7 +2728,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/billing/arm-billing: dependencies: @@ -4084,10 +4084,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -4102,7 +4102,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/communication/communication-email: dependencies: @@ -5771,10 +5771,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -5789,7 +5789,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/computeschedule/arm-computeschedule: dependencies: @@ -5829,10 +5829,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -5847,7 +5847,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/confidentialledger/arm-confidentialledger: dependencies: @@ -6701,8 +6701,8 @@ importers: specifier: catalog:legacy version: 0.1.1 karma-firefox-launcher: - specifier: ^2.1.2 - version: 2.1.3 + specifier: catalog:legacy + version: 1.3.0 karma-junit-reporter: specifier: catalog:legacy version: 2.0.1(karma@6.4.4) @@ -6745,10 +6745,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -6760,7 +6760,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/core/core-amqp: dependencies: @@ -6818,10 +6818,10 @@ importers: version: 8.5.12 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) debug: specifier: ^4.3.4 version: 4.3.7(supports-color@8.1.1) @@ -6836,7 +6836,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) ws: specifier: ^8.17.0 version: 8.18.0 @@ -6864,10 +6864,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -6879,7 +6879,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/core/core-client: dependencies: @@ -6919,10 +6919,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -6934,7 +6934,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/core/core-client-rest: dependencies: @@ -6968,10 +6968,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -6983,7 +6983,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/core/core-http-compat: dependencies: @@ -7008,10 +7008,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -7023,7 +7023,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/core/core-lro: dependencies: @@ -7054,10 +7054,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -7069,7 +7069,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/core/core-paging: dependencies: @@ -7088,10 +7088,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -7103,7 +7103,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/core/core-rest-pipeline: dependencies: @@ -7146,10 +7146,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -7161,7 +7161,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/core/core-sse: dependencies: @@ -7192,10 +7192,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -7216,7 +7216,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/core/core-tracing: dependencies: @@ -7238,10 +7238,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -7253,7 +7253,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/core/core-util: dependencies: @@ -7278,10 +7278,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -7293,7 +7293,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/core/core-xml: dependencies: @@ -7318,10 +7318,10 @@ importers: version: 2.0.7 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -7333,7 +7333,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/core/logger: dependencies: @@ -7352,10 +7352,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -7370,7 +7370,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/core/ts-http-runtime: dependencies: @@ -7398,10 +7398,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) cross-env: specifier: catalog:legacy version: 7.0.3 @@ -7419,7 +7419,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/cosmosdb/arm-cosmosdb: dependencies: @@ -8761,10 +8761,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -8779,7 +8779,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/devhub/arm-devhub: dependencies: @@ -9714,10 +9714,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -9732,7 +9732,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/documenttranslator/ai-document-translator-rest: dependencies: @@ -10115,10 +10115,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -10133,7 +10133,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/education/arm-education: dependencies: @@ -11032,10 +11032,10 @@ importers: version: 7.4.7 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) chai: specifier: ^5.1.1 version: 5.1.1 @@ -11074,7 +11074,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) ws: specifier: ^8.2.0 version: 8.18.0 @@ -11138,16 +11138,16 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) buffer: specifier: ^6.0.3 version: 6.0.3 chai-as-promised: specifier: 'catalog:' - version: 8.0.0(chai@5.1.1) + version: 8.0.0(chai@5.1.2) cross-env: specifier: catalog:legacy version: 7.0.3 @@ -11174,7 +11174,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/eventhub/eventhubs-checkpointstore-table: dependencies: @@ -11226,16 +11226,16 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) buffer: specifier: ^6.0.3 version: 6.0.3 chai-as-promised: specifier: 'catalog:' - version: 8.0.0(chai@5.1.1) + version: 8.0.0(chai@5.1.2) cross-env: specifier: catalog:legacy version: 7.0.3 @@ -11262,7 +11262,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/eventhub/mock-hub: dependencies: @@ -11287,7 +11287,7 @@ importers: version: 18.19.45 '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) cross-env: specifier: catalog:legacy version: 7.0.3 @@ -11305,7 +11305,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/extendedlocation/arm-extendedlocation: dependencies: @@ -11415,10 +11415,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -11433,7 +11433,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/face/ai-vision-face-rest: dependencies: @@ -11485,10 +11485,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -11503,7 +11503,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/features/arm-features: dependencies: @@ -12323,10 +12323,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -12341,7 +12341,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/healthdataaiservices/azure-health-deidentification: dependencies: @@ -12396,10 +12396,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -12414,7 +12414,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/healthinsights/health-insights-cancerprofiling-rest: dependencies: @@ -13487,10 +13487,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -13505,7 +13505,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/iot/iot-modelsrepository: dependencies: @@ -13889,10 +13889,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -13907,7 +13907,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/keyvault/arm-keyvault: dependencies: @@ -14093,10 +14093,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) cross-env: specifier: catalog:legacy version: 7.0.3 @@ -14114,7 +14114,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/keyvault/keyvault-certificates: dependencies: @@ -14181,10 +14181,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) cross-env: specifier: catalog:legacy version: 7.0.3 @@ -14202,7 +14202,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/keyvault/keyvault-common: dependencies: @@ -14245,10 +14245,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -14260,7 +14260,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/keyvault/keyvault-keys: dependencies: @@ -14324,10 +14324,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dayjs: specifier: ^1.10.7 version: 1.11.13 @@ -14345,7 +14345,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/keyvault/keyvault-secrets: dependencies: @@ -14409,7 +14409,7 @@ importers: version: 18.19.45 '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -14424,7 +14424,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/kubernetesconfiguration/arm-kubernetesconfiguration: dependencies: @@ -14534,10 +14534,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -14552,7 +14552,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/kusto/arm-kusto: dependencies: @@ -15916,10 +15916,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -15931,7 +15931,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/maps/maps-geolocation-rest: dependencies: @@ -17034,10 +17034,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -17052,7 +17052,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/monitor/arm-monitor: dependencies: @@ -17475,6 +17475,9 @@ importers: specifier: 'catalog:' version: 2.7.0 devDependencies: + '@azure-tools/test-utils-vitest': + specifier: workspace:* + version: link:../../test-utils/test-utils-vitest '@azure/dev-tool': specifier: workspace:* version: link:../../../common/tools/dev-tool @@ -17490,33 +17493,33 @@ importers: '@opentelemetry/sdk-trace-node': specifier: catalog:otel version: 1.27.0(@opentelemetry/api@1.9.0) - '@types/mocha': - specifier: catalog:legacy - version: 10.0.7 '@types/node': specifier: 'catalog:' version: 18.19.45 + '@vitest/browser': + specifier: 'catalog:' + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) + '@vitest/coverage-istanbul': + specifier: 'catalog:' + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 eslint: specifier: 'catalog:' version: 9.12.0 - mocha: - specifier: catalog:legacy - version: 10.7.3 nock: specifier: catalog:legacy version: 13.5.5 - nyc: - specifier: catalog:legacy - version: 17.0.0 - sinon: - specifier: catalog:legacy - version: 19.0.2 + playwright: + specifier: 'catalog:' + version: 1.46.1 typescript: specifier: 'catalog:' version: 5.6.3 + vitest: + specifier: 'catalog:' + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/monitor/monitor-query: dependencies: @@ -17546,14 +17549,14 @@ importers: version: 2.7.0 devDependencies: '@azure-tools/test-credential': - specifier: catalog:test-credentialV1 - version: 1.2.0 + specifier: workspace:* + version: link:../../test-utils/test-credential '@azure-tools/test-recorder': - specifier: catalog:test-recorderV3 - version: 3.5.2 - '@azure-tools/test-utils': specifier: workspace:* - version: link:../../test-utils/test-utils + version: link:../../test-utils/recorder + '@azure-tools/test-utils-vitest': + specifier: workspace:* + version: link:../../test-utils/test-utils-vitest '@azure/abort-controller': specifier: workspace:* version: link:../../core/abort-controller @@ -17564,8 +17567,8 @@ importers: specifier: workspace:* version: link:../../../common/tools/eslint-plugin-azure-sdk '@azure/identity': - specifier: workspace:* - version: link:../../identity/identity + specifier: catalog:internal + version: 4.5.0 '@azure/monitor-opentelemetry-exporter': specifier: workspace:* version: link:../monitor-opentelemetry-exporter @@ -17578,63 +17581,30 @@ importers: '@opentelemetry/sdk-trace-node': specifier: catalog:otel version: 1.27.0(@opentelemetry/api@1.9.0) - '@types/chai': - specifier: catalog:legacy - version: 4.3.17 - '@types/chai-as-promised': - specifier: ^7.1.0 - version: 7.1.8 - '@types/mocha': - specifier: catalog:legacy - version: 10.0.7 '@types/node': specifier: 'catalog:' version: 18.19.45 - chai: - specifier: catalog:legacy - version: 4.5.0 - chai-as-promised: - specifier: catalog:legacy - version: 7.1.2(chai@4.5.0) + '@vitest/browser': + specifier: 'catalog:' + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) + '@vitest/coverage-istanbul': + specifier: 'catalog:' + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 eslint: specifier: 'catalog:' version: 9.12.0 - karma: - specifier: catalog:legacy - version: 6.4.4 - karma-chrome-launcher: - specifier: catalog:legacy - version: 3.2.0 - karma-coverage: - specifier: catalog:legacy - version: 2.2.1 - karma-env-preprocessor: - specifier: catalog:legacy - version: 0.1.1 - karma-firefox-launcher: - specifier: catalog:legacy - version: 1.3.0 - karma-junit-reporter: - specifier: catalog:legacy - version: 2.0.1(karma@6.4.4) - karma-mocha: - specifier: catalog:legacy - version: 2.0.1 - karma-mocha-reporter: - specifier: catalog:legacy - version: 2.2.5(karma@6.4.4) - mocha: - specifier: catalog:legacy - version: 10.7.3 - nyc: - specifier: catalog:legacy - version: 17.0.0 + playwright: + specifier: 'catalog:' + version: 1.46.1 typescript: specifier: 'catalog:' version: 5.6.3 + vitest: + specifier: 'catalog:' + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/msi/arm-msi: dependencies: @@ -18509,10 +18479,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -18527,7 +18497,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/oep/arm-oep: dependencies: @@ -18631,10 +18601,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) cross-env: specifier: catalog:legacy version: 7.0.3 @@ -18655,7 +18625,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/operationalinsights/arm-operationalinsights: dependencies: @@ -19101,7 +19071,7 @@ importers: version: 2.4.9 '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) eslint: specifier: 'catalog:' version: 9.12.0 @@ -19110,7 +19080,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/playwrighttesting/microsoft-playwright-testing: dependencies: @@ -20032,8 +20002,8 @@ importers: specifier: catalog:legacy version: 0.1.1 karma-firefox-launcher: - specifier: ^2.1.2 - version: 2.1.3 + specifier: catalog:legacy + version: 1.3.0 karma-junit-reporter: specifier: catalog:legacy version: 2.0.1(karma@6.4.4) @@ -21904,10 +21874,10 @@ importers: version: 10.0.0 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) buffer: specifier: ^6.0.3 version: 6.0.3 @@ -21937,7 +21907,7 @@ importers: version: 10.0.0 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/schemaregistry/schema-registry-json: dependencies: @@ -22795,10 +22765,10 @@ importers: version: 7.4.7 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) chai: specifier: 'catalog:' version: 5.1.1 @@ -22837,7 +22807,7 @@ importers: version: 10.0.0 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) ws: specifier: ^8.0.0 version: 8.18.0 @@ -23602,10 +23572,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -23620,7 +23590,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/storage/arm-storage: dependencies: @@ -25970,10 +25940,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) cross-env: specifier: catalog:legacy version: 7.0.3 @@ -25994,7 +25964,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/template/template-dpg: dependencies: @@ -26037,10 +26007,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -26055,7 +26025,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/templatespecs/arm-templatespecs: dependencies: @@ -26202,10 +26172,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) concurrently: specifier: ^9.0.1 version: 9.0.1 @@ -26226,7 +26196,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/test-utils/test-credential: dependencies: @@ -26366,7 +26336,7 @@ importers: version: 2.7.0 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) devDependencies: '@azure-tools/vite-plugin-browser-test-map': specifier: workspace:* @@ -26382,13 +26352,13 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) '@vitest/expect': specifier: 'catalog:' - version: 2.1.2 + version: 2.1.4 eslint: specifier: 'catalog:' version: 9.12.0 @@ -26892,10 +26862,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -26910,7 +26880,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/vision/ai-vision-image-analysis-rest: dependencies: @@ -27524,7 +27494,7 @@ importers: version: 18.19.45 '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) cpy-cli: specifier: ^5.0.0 version: 5.0.0 @@ -27545,7 +27515,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/web-pubsub/web-pubsub-express: dependencies: @@ -27576,10 +27546,10 @@ importers: version: 18.19.45 '@vitest/browser': specifier: 'catalog:' - version: 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + version: 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) '@vitest/coverage-istanbul': specifier: 'catalog:' - version: 2.0.5(vitest@2.0.5) + version: 2.1.4(vitest@2.1.4) dotenv: specifier: 'catalog:' version: 16.4.5 @@ -27594,7 +27564,7 @@ importers: version: 5.6.3 vitest: specifier: 'catalog:' - version: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + version: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) sdk/workloads/arm-workloads: dependencies: @@ -28014,33 +27984,36 @@ packages: resolution: {integrity: sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==} engines: {node: '>=0.1.90'} - '@cspell/cspell-bundled-dicts@8.15.1': - resolution: {integrity: sha512-BimBlwdY4gD1cnx8nAaCPLY+yHpAgTuB25rQmpCLMSslQJBFkynRtOmtYQR+Mh4hX9nLaA3oPO4uVKOHVhQ00Q==} + '@cspell/cspell-bundled-dicts@8.15.5': + resolution: {integrity: sha512-Su1gnTBbE7ouMQvM4DISUmP6sZiFyQRE+ODvjBzW+c/x9ZLbVp+2hBEEmxFSn5fdZCJzPOMwzwsjlLYykb9iUg==} engines: {node: '>=18'} - '@cspell/cspell-json-reporter@8.15.1': - resolution: {integrity: sha512-mU4eWHYjGGdhmLd4oGz4kEry2udUl3thzz3clLiutijPrmNU/5sS5C6tiKBZCytWhhCkTwA5eDM3rr7cIt4DYQ==} + '@cspell/cspell-json-reporter@8.15.5': + resolution: {integrity: sha512-yXd7KDBfUkA6y+MrOqK3q/UWorZgLIgyCZoFb0Pj67OU2ZMtgJ1VGFXAdzpKAEgEmdcblyoFzHkleYbg08qS6g==} engines: {node: '>=18'} - '@cspell/cspell-pipe@8.15.1': - resolution: {integrity: sha512-euErNW69K6+rCirGtORbgapcNtvlObTlO7SHftRRjGbvMh1F5J1rEc+KwW3qhM5H73NSwFrQwR5KzWrUrGimog==} + '@cspell/cspell-pipe@8.15.5': + resolution: {integrity: sha512-X8QY73060hkR8040jabNJsvydeTG0owpqr9S0QJDdhG1z8uzenNcwR3hfwaIwQq5d6sIKcDFZY5qrO4x6eEAMw==} engines: {node: '>=18'} - '@cspell/cspell-resolver@8.15.1': - resolution: {integrity: sha512-9GVRSZKLc7P4S1aOzBiyXbtVMu3yeDHpp/sAeKd7Z869T2ddvMrmQoOTRBmKW90PNP2j4aQkPebPJe85GnOf+A==} + '@cspell/cspell-resolver@8.15.5': + resolution: {integrity: sha512-ejzUGLEwI8TQWXovQzzvAgSNToRrQe3h97YrH2XaB9rZDKkeA7dIBZDQ/OgOfidO+ZAsPIOxdHai3CBzEHYX3A==} engines: {node: '>=18'} - '@cspell/cspell-service-bus@8.15.1': - resolution: {integrity: sha512-SFnJNw0BOagdx29soC8tiDNObENLU2FFhfT7JHbILHbJ5IdtsRLAxYIf99rDb1zLB3pdA/optqPwPUdAgMIQLg==} + '@cspell/cspell-service-bus@8.15.5': + resolution: {integrity: sha512-zZJRRvNhvUJntnw8sX4J5gE4uIHpX2oe+Tqs3lu2vRwogadNEXE4QNJbEQyQqgMePgmqULtRdxSBzG4wy4HoQg==} engines: {node: '>=18'} - '@cspell/cspell-types@8.15.1': - resolution: {integrity: sha512-6QY0147RmiXIpTMkwI7a6dx+/CtPserPxxsK2p0DFf4bTHOGExx3dlPg7eGL8UFO0/C/nrXPAMy5kZEstPclXA==} + '@cspell/cspell-types@8.15.5': + resolution: {integrity: sha512-bMRq9slD/D0vXckxe9vubG02HXrV4cASo6Ytkaw8rTfxMKpkBgxJWjFWphCFLOCICD71q45fUSg+W5vCp83f/Q==} engines: {node: '>=18'} '@cspell/dict-ada@4.0.5': resolution: {integrity: sha512-6/RtZ/a+lhFVmrx/B7bfP7rzC4yjEYe8o74EybXcvu4Oue6J4Ey2WSYj96iuodloj1LWrkNCQyX5h4Pmcj0Iag==} + '@cspell/dict-al@1.0.3': + resolution: {integrity: sha512-V1HClwlfU/qwSq2Kt+MkqRAsonNu3mxjSCDyGRecdLGIHmh7yeEeaxqRiO/VZ4KP+eVSiSIlbwrb5YNFfxYZbw==} + '@cspell/dict-aws@4.0.7': resolution: {integrity: sha512-PoaPpa2NXtSkhGIMIKhsJUXB6UbtTt6Ao3x9JdU9kn7fRZkwD4RjHDGqulucIOz7KeEX/dNRafap6oK9xHe4RA==} @@ -28050,8 +28023,8 @@ packages: '@cspell/dict-companies@3.1.7': resolution: {integrity: sha512-ncVs/efuAkP1/tLDhWbXukBjgZ5xOUfe03neHMWsE8zvXXc5+Lw6TX5jaJXZLOoES/f4j4AhRE20jsPCF5pm+A==} - '@cspell/dict-cpp@5.1.22': - resolution: {integrity: sha512-g1/8P5/Q+xnIc8Js4UtBg3XOhcFrFlFbG3UWVtyEx49YTf0r9eyDtDt1qMMDBZT91pyCwLcAEbwS+4i5PIfNZw==} + '@cspell/dict-cpp@5.1.23': + resolution: {integrity: sha512-59VUam6bYWzn50j8FASWWLww0rBPA0PZfjMZBvvt0aqMpkvXzoJPnAAI4eDDSibPWVHKutjpqLmast+uMLHVsQ==} '@cspell/dict-cryptocurrencies@5.0.3': resolution: {integrity: sha512-bl5q+Mk+T3xOZ12+FG37dB30GDxStza49Rmoax95n37MTLksk9wBo1ICOlPJ6PnDUSyeuv4SIVKgRKMKkJJglA==} @@ -28071,8 +28044,8 @@ packages: '@cspell/dict-django@4.1.3': resolution: {integrity: sha512-yBspeL3roJlO0a1vKKNaWABURuHdHZ9b1L8d3AukX0AsBy9snSggc8xCavPmSzNfeMDXbH+1lgQiYBd3IW03fg==} - '@cspell/dict-docker@1.1.10': - resolution: {integrity: sha512-vWybMfsG/8jhN6kmPoilMon36GB3+Ef+m/mgYUfY8tJN23K/x4KD1rU1OOiNWzDqePhu3MMWVKO5W5x6VI6Gbw==} + '@cspell/dict-docker@1.1.11': + resolution: {integrity: sha512-s0Yhb16/R+UT1y727ekbR/itWQF3Qz275DR1ahOa66wYtPjHUXmhM3B/LT3aPaX+hD6AWmK23v57SuyfYHUjsw==} '@cspell/dict-dotnet@5.0.8': resolution: {integrity: sha512-MD8CmMgMEdJAIPl2Py3iqrx3B708MbCIXAuOeZ0Mzzb8YmLmiisY7QEYSZPg08D7xuwARycP0Ki+bb0GAkFSqg==} @@ -28089,8 +28062,8 @@ packages: '@cspell/dict-en_us@4.3.26': resolution: {integrity: sha512-hDbHYJsi3UgU1J++B0WLiYhWQdsmve3CH53FIaMRAdhrWOHcuw7h1dYkQXHFEP5lOjaq53KUHp/oh5su6VkIZg==} - '@cspell/dict-filetypes@3.0.7': - resolution: {integrity: sha512-/DN0Ujp9/EXvpTcgih9JmBaE8n+G0wtsspyNdvHT5luRfpfol1xm/CIQb6xloCXCiLkWX+EMPeLSiVIZq+24dA==} + '@cspell/dict-filetypes@3.0.8': + resolution: {integrity: sha512-D3N8sm/iptzfVwsib/jvpX+K/++rM8SRpLDFUaM4jxm8EyGmSIYRbKZvdIv5BkAWmMlTWoRqlLn7Yb1b11jKJg==} '@cspell/dict-flutter@1.0.3': resolution: {integrity: sha512-52C9aUEU22ptpgYh6gQyIdA4MP6NPwzbEqndfgPh3Sra191/kgs7CVqXiO1qbtZa9gnYHUoVApkoxRE7mrXHfg==} @@ -28122,8 +28095,8 @@ packages: '@cspell/dict-html-symbol-entities@4.0.3': resolution: {integrity: sha512-aABXX7dMLNFdSE8aY844X4+hvfK7977sOWgZXo4MTGAmOzR8524fjbJPswIBK7GaD3+SgFZ2yP2o0CFvXDGF+A==} - '@cspell/dict-html@4.0.9': - resolution: {integrity: sha512-BNp7w3m910K4qIVyOBOZxHuFNbVojUY6ES8Y8r7YjYgJkm2lCuQoVwwhPjurnomJ7BPmZTb+3LLJ58XIkgF7JQ==} + '@cspell/dict-html@4.0.10': + resolution: {integrity: sha512-I9uRAcdtHbh0wEtYZlgF0TTcgH0xaw1B54G2CW+tx4vHUwlde/+JBOfIzird4+WcMv4smZOfw+qHf7puFUbI5g==} '@cspell/dict-java@5.0.10': resolution: {integrity: sha512-pVNcOnmoGiNL8GSVq4WbX/Vs2FGS0Nej+1aEeGuUY9CU14X8yAVCG+oih5ZoLt1jaR8YfR8byUF8wdp4qG4XIw==} @@ -28146,6 +28119,14 @@ packages: '@cspell/dict-makefile@1.0.3': resolution: {integrity: sha512-R3U0DSpvTs6qdqfyBATnePj9Q/pypkje0Nj26mQJ8TOBQutCRAJbr2ZFAeDjgRx5EAJU/+8txiyVF97fbVRViw==} + '@cspell/dict-markdown@2.0.7': + resolution: {integrity: sha512-F9SGsSOokFn976DV4u/1eL4FtKQDSgJHSZ3+haPRU5ki6OEqojxKa8hhj4AUrtNFpmBaJx/WJ4YaEzWqG7hgqg==} + peerDependencies: + '@cspell/dict-css': ^4.0.16 + '@cspell/dict-html': ^4.0.10 + '@cspell/dict-html-symbol-entities': ^4.0.3 + '@cspell/dict-typescript': ^3.1.11 + '@cspell/dict-monkeyc@1.0.9': resolution: {integrity: sha512-Jvf6g5xlB4+za3ThvenYKREXTEgzx5gMUSzrAxIiPleVG4hmRb/GBSoSjtkGaibN3XxGx5x809gSTYCA/IHCpA==} @@ -28164,8 +28145,8 @@ packages: '@cspell/dict-public-licenses@2.0.11': resolution: {integrity: sha512-rR5KjRUSnVKdfs5G+gJ4oIvQvm8+NJ6cHWY2N+GE69/FSGWDOPHxulCzeGnQU/c6WWZMSimG9o49i9r//lUQyA==} - '@cspell/dict-python@4.2.11': - resolution: {integrity: sha512-bshNZqP5FYRO0CtZ9GgtVjHidrSuRRF537MU/sPew8oaqWPg066F9KQfPllbRi9AzFqqeS2l7/ACYUrFMe21gw==} + '@cspell/dict-python@4.2.12': + resolution: {integrity: sha512-U25eOFu+RE0aEcF2AsxZmq3Lic7y9zspJ9SzjrC0mfJz+yr3YmSCw4E0blMD3mZoNcf7H/vMshuKIY5AY36U+Q==} '@cspell/dict-r@2.0.4': resolution: {integrity: sha512-cBpRsE/U0d9BRhiNRMLMH1PpWgw+N+1A2jumgt1if9nBGmQw4MUpg2u9I0xlFVhstTIdzXiLXMxP45cABuiUeQ==} @@ -28179,8 +28160,8 @@ packages: '@cspell/dict-scala@5.0.6': resolution: {integrity: sha512-tl0YWAfjUVb4LyyE4JIMVE8DlLzb1ecHRmIWc4eT6nkyDqQgHKzdHsnusxFEFMVLIQomgSg0Zz6hJ5S1E4W4ww==} - '@cspell/dict-software-terms@4.1.10': - resolution: {integrity: sha512-+9PuQ9MHQhlET6Hv1mGcWDh6Rb+StzjBMrjfksDeBHBIVdT66u9uCkaZapIzfgktflY4m9oK7+dEynr+BAxvtQ==} + '@cspell/dict-software-terms@4.1.12': + resolution: {integrity: sha512-MHDAK/WlEdMJiDQ6lJ3SF7VogdfJcRXGYWfO4v90rxW8HDVfKDXVk3zpJhjoZGq56ujR1qmeYkQsM6MlB69uJA==} '@cspell/dict-sql@2.1.8': resolution: {integrity: sha512-dJRE4JV1qmXTbbGm6WIcg1knmR6K5RXnQxF4XHs5HA3LAjc/zf77F95i5LC+guOGppVF6Hdl66S2UyxT+SAF3A==} @@ -28194,26 +28175,26 @@ packages: '@cspell/dict-terraform@1.0.5': resolution: {integrity: sha512-qH3epPB2d6d5w1l4hR2OsnN8qDQ4P0z6oDB7+YiNH+BoECXv4Z38MIV1H8cxIzD2wkzkt2JTcFYaVW72MDZAlg==} - '@cspell/dict-typescript@3.1.9': - resolution: {integrity: sha512-ZtO1/cVWvvR477ftTl2TFR09+IIzXG1rcin8CGYA0FO5WhyDAbn8v3A85QikS158BhTVUoq09lPYuSF9HBzqvw==} + '@cspell/dict-typescript@3.1.11': + resolution: {integrity: sha512-FwvK5sKbwrVpdw0e9+1lVTl8FPoHYvfHRuQRQz2Ql5XkC0gwPPkpoyD1zYImjIyZRoYXk3yp9j8ss4iz7A7zoQ==} '@cspell/dict-vue@3.0.3': resolution: {integrity: sha512-akmYbrgAGumqk1xXALtDJcEcOMYBYMnkjpmGzH13Ozhq1mkPF4VgllFQlm1xYde+BUKNnzMgPEzxrL2qZllgYA==} - '@cspell/dynamic-import@8.15.1': - resolution: {integrity: sha512-Zc7tAn1EBFgPcpws0zoZrMyi0likUb3Kpnpq4FGmssmf4PnhSaDF2suqLlcCTPxCML87lF26UT6qUK01G9gIPA==} + '@cspell/dynamic-import@8.15.5': + resolution: {integrity: sha512-xfLRVi8zHKCGK1fg1ixXQ0bAlIU9sGm7xfbTmGG8TQt+iaKHVMIlt+XeCAo0eE7aKjIaIfqcC/PCIdUJiODuGA==} engines: {node: '>=18.0'} - '@cspell/filetypes@8.15.1': - resolution: {integrity: sha512-SgwTDmy5Omc67ThA89t1+kNZcbwGr43ck0Il+tqSoNOBHbs+S5YftUgfinLFIN2pdRm4COPmAnEN2SEAsMh0UA==} + '@cspell/filetypes@8.15.5': + resolution: {integrity: sha512-ljEFUp61mw5RWZ3S6ke6rvGKy8m4lZZjRd5KO07RYyGwSeLa4PX9AyTgSzuqXiN9y1BwogD3xolCMfPsMrtZIQ==} engines: {node: '>=18'} - '@cspell/strong-weak-map@8.15.1': - resolution: {integrity: sha512-QmtDb0TBdLBlDqOCrOtqhg9e7k4T4t8akx+1LgNI/jGqj/mQVyYtHCHWVHYNxh7S7DumrlmmsJo62NzIZLqtCQ==} + '@cspell/strong-weak-map@8.15.5': + resolution: {integrity: sha512-7VzDAXsJPDXllTIi9mvQwd7PR43TPk1Ix3ocLTZDVNssf1cQbmLiQX6YWk0k8FWGfIPoIMlByw4tTSizRJcTcw==} engines: {node: '>=18'} - '@cspell/url@8.15.1': - resolution: {integrity: sha512-LsLoeLRTrdQY1iLsnOxSta/+YvnT3Jm/Ofohhh6XBSegMl2CoJjzdY8wbfsc3YgdB6SHJ1PSZecftXRhMNIEeg==} + '@cspell/url@8.15.5': + resolution: {integrity: sha512-z8q7LUppFiNvytX2qrKDkXcsmOrwjqFf/5RkcpNppDezLrFejaMZu4BEVNcPrFCeS2J04K+uksNL1LYSob8jCg==} engines: {node: '>=18.0'} '@cspotcode/source-map-support@0.8.1': @@ -28574,25 +28555,25 @@ packages: resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} engines: {node: '>=18.18'} - '@inquirer/confirm@3.2.0': - resolution: {integrity: sha512-oOIwPs0Dvq5220Z8lGL/6LHRTEr9TgLHmiI99Rj1PJ1p1czTys+olrgBqZk4E2qC0YTzeHprxSQmoHioVdJ7Lw==} + '@inquirer/confirm@5.0.1': + resolution: {integrity: sha512-6ycMm7k7NUApiMGfVc32yIPp28iPKxhGRMqoNDiUjq2RyTAkbs5Fx0TdzBqhabcKvniDdAAvHCmsRjnNfTsogw==} engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' - '@inquirer/core@9.2.1': - resolution: {integrity: sha512-F2VBt7W/mwqEU4bL0RnHNZmC/OxzNx9cOYxHqnXX3MP6ruYvZUZAW9imgN9+h/uBT/oP8Gh888J2OZSbjSeWcg==} + '@inquirer/core@10.0.1': + resolution: {integrity: sha512-KKTgjViBQUi3AAssqjUFMnMO3CM3qwCHvePV9EW+zTKGKafFGFF01sc1yOIYjLJ7QU52G/FbzKc+c01WLzXmVQ==} engines: {node: '>=18'} '@inquirer/figures@1.0.7': resolution: {integrity: sha512-m+Trk77mp54Zma6xLkLuY+mvanPxlE4A7yNKs2HBiyZ4UkVs28Mv5c/pgWrHeInx+USHeX/WEPzjrWrcJiQgjw==} engines: {node: '>=18'} - '@inquirer/type@1.5.5': - resolution: {integrity: sha512-MzICLu4yS7V8AA61sANROZ9vT1H3ooca5dSmI1FjZkzq7o/koMsRfQSzRtFo+F3Ao4Sf1C0bpLKejpKB/+j6MA==} - engines: {node: '>=18'} - - '@inquirer/type@2.0.0': - resolution: {integrity: sha512-XvJRx+2KR3YXyYtPUUy+qd9i7p+GO9Ko6VIIpWlBrpWwXDv8WLFeHTxz35CfQFUiBMLXlGHhGzys7lqit9gWag==} + '@inquirer/type@3.0.0': + resolution: {integrity: sha512-YYykfbw/lefC7yKj7nanzQXILM7r3suIvyFlCcMskc99axmsSewXWkAfXKwMbgxL76iAFVmRwmYdwNZNc8gjog==} engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' '@isaacs/cliui@8.0.2': resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} @@ -28659,8 +28640,8 @@ packages: '@microsoft/tsdoc@0.15.0': resolution: {integrity: sha512-HZpPoABogPvjeJOdzCOSJsXeL/SMCBgBZMVC3X3d7YYp2gf31MfxhUoYUNwf1ERPJOnQc0wkFn9trqI6ZEdZuA==} - '@mswjs/interceptors@0.35.9': - resolution: {integrity: sha512-SSnyl/4ni/2ViHKkiZb8eajA/eN1DNFaHjhGiLUdZvDz6PKF4COSf/17xqSz64nOo2Ia29SA6B2KNCsyCbVmaQ==} + '@mswjs/interceptors@0.36.7': + resolution: {integrity: sha512-sdx02Wlus5hv6Bx7uUDb25gb0WGjCuSgnJB2LVERemoSGuqkZMe3QI6nEXhieFGtYwPrZbYrT2vPbsFN2XfbUw==} engines: {node: '>=18'} '@nodelib/fs.scandir@2.1.5': @@ -29307,9 +29288,6 @@ packages: '@types/mustache@4.2.5': resolution: {integrity: sha512-PLwiVvTBg59tGFL/8VpcGvqOu3L4OuveNvPi0EYbWchRdEVP++yRUXJPFl+CApKEq13017/4Nf7aQ5lTtHUNsA==} - '@types/mute-stream@0.0.4': - resolution: {integrity: sha512-CPM9nzrCPPJHQNA9keH9CVkVI+WR5kMa+7XEs5jcGQ0VoAGnLv242w8lIVgwAEfmE4oufJRaTc9PNLQl0ioAow==} - '@types/mysql@2.15.26': resolution: {integrity: sha512-DSLCOXhkvfS5WNNPbfn2KdICAmk8lLc+/PNvnPnF7gOdMZCxopXduqv0OQ13y/yA/zXTSikZZqVgybUxOEg6YQ==} @@ -29406,9 +29384,6 @@ packages: '@types/uuid@8.3.4': resolution: {integrity: sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==} - '@types/wrap-ansi@3.0.0': - resolution: {integrity: sha512-ltIpx+kM7g/MLRZfkbL7EsCEjfzCcScLpkg37eXEtx5kmrAKBkTJwd1GIAjDSL8wTpM6Hzn5YO4pSb91BEwu1g==} - '@types/ws@7.4.7': resolution: {integrity: sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==} @@ -29544,12 +29519,12 @@ packages: resolution: {integrity: sha512-sbgsPMW9yLvS7IhCi8IpuK1oBmtbWUNP+hBdwl/I9nzqVsszGnNGti5r9dUtF5RLivHUFFIdRvLiTsPhzSyJ3Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@vitest/browser@2.0.5': - resolution: {integrity: sha512-VbOYtu/6R3d7ASZREcrJmRY/sQuRFO9wMVsEDqfYbWiJRh2fDNi8CL1Csn7Ux31pOcPmmM5QvzFCMpiojvVh8g==} + '@vitest/browser@2.1.2': + resolution: {integrity: sha512-tqpGfz2sfjFFNuZ2iLZ6EGRVnH8z18O93ZIicbLsxDhiLgRNz84UcjSvX4pbheuddW+BJeNbLGdM3BU8vohbEg==} peerDependencies: playwright: '*' safaridriver: '*' - vitest: 2.0.5 + vitest: 2.1.2 webdriverio: '*' peerDependenciesMeta: playwright: @@ -29559,12 +29534,12 @@ packages: webdriverio: optional: true - '@vitest/browser@2.1.2': - resolution: {integrity: sha512-tqpGfz2sfjFFNuZ2iLZ6EGRVnH8z18O93ZIicbLsxDhiLgRNz84UcjSvX4pbheuddW+BJeNbLGdM3BU8vohbEg==} + '@vitest/browser@2.1.4': + resolution: {integrity: sha512-89SrvShW6kWzmEYtBj5k1gBq88emoC2qrngw5hE1vNpRFteQ5/1URbKIVww391rIALTpzhhCt5yJt5tjLPZxYw==} peerDependencies: playwright: '*' safaridriver: '*' - vitest: 2.1.2 + vitest: 2.1.4 webdriverio: '*' peerDependenciesMeta: playwright: @@ -29574,22 +29549,22 @@ packages: webdriverio: optional: true - '@vitest/coverage-istanbul@2.0.5': - resolution: {integrity: sha512-BvjWKtp7fiMAeYUD0mO5cuADzn1gmjTm54jm5qUEnh/O08riczun8rI4EtQlg3bWoRo2lT3FO8DmjPDX9ZthPw==} - peerDependencies: - vitest: 2.0.5 - '@vitest/coverage-istanbul@2.1.2': resolution: {integrity: sha512-dg7ex3GKrTIenAV0oEp78JucTVFsPMzjl1gYWun22O7SBDxcHFC/REZjWLhMTHRHY8ihm4uBCvmu+CvEu5/Adg==} peerDependencies: vitest: 2.1.2 - '@vitest/expect@2.0.5': - resolution: {integrity: sha512-yHZtwuP7JZivj65Gxoi8upUN2OzHTi3zVfjwdpu2WrvCZPLwsJ2Ey5ILIPccoW23dd/zQBlJ4/dhi7DWNyXCpA==} + '@vitest/coverage-istanbul@2.1.4': + resolution: {integrity: sha512-NLmfjzXnRSmLF/h4hYkzjvd7hZ85DRZzPUqXu0McPFCMczDfNmOjMoM3KaxjFaEmOc1YzX9HHbU/Rr9VO+35ow==} + peerDependencies: + vitest: 2.1.4 '@vitest/expect@2.1.2': resolution: {integrity: sha512-FEgtlN8mIUSEAAnlvn7mP8vzaWhEaAEvhSXCqrsijM7K6QqjB11qoRZYEd4AKSCDz8p0/+yH5LzhZ47qt+EyPg==} + '@vitest/expect@2.1.4': + resolution: {integrity: sha512-DOETT0Oh1avie/D/o2sgMHGrzYUFFo3zqESB2Hn70z6QB1HrS2IQ9z5DfyTqU8sg4Bpu13zZe9V4+UTNQlUeQA==} + '@vitest/mocker@2.1.2': resolution: {integrity: sha512-ExElkCGMS13JAJy+812fw1aCv2QO/LBK6CyO4WOPAzLTmve50gydOlWhgdBJPx2ztbADUq3JVI0C5U+bShaeEA==} peerDependencies: @@ -29602,36 +29577,47 @@ packages: vite: optional: true - '@vitest/pretty-format@2.0.5': - resolution: {integrity: sha512-h8k+1oWHfwTkyTkb9egzwNMfJAEx4veaPSnMeKbVSjp4euqGSbQlm5+6VHwTr7u4FJslVVsUG5nopCaAYdOmSQ==} + '@vitest/mocker@2.1.4': + resolution: {integrity: sha512-Ky/O1Lc0QBbutJdW0rqLeFNbuLEyS+mIPiNdlVlp2/yhJ0SbyYqObS5IHdhferJud8MbbwMnexg4jordE5cCoQ==} + peerDependencies: + msw: ^2.4.9 + vite: ^5.0.0 + peerDependenciesMeta: + msw: + optional: true + vite: + optional: true '@vitest/pretty-format@2.1.2': resolution: {integrity: sha512-FIoglbHrSUlOJPDGIrh2bjX1sNars5HbxlcsFKCtKzu4+5lpsRhOCVcuzp0fEhAGHkPZRIXVNzPcpSlkoZ3LuA==} - '@vitest/runner@2.0.5': - resolution: {integrity: sha512-TfRfZa6Bkk9ky4tW0z20WKXFEwwvWhRY+84CnSEtq4+3ZvDlJyY32oNTJtM7AW9ihW90tX/1Q78cb6FjoAs+ig==} + '@vitest/pretty-format@2.1.4': + resolution: {integrity: sha512-L95zIAkEuTDbUX1IsjRl+vyBSLh3PwLLgKpghl37aCK9Jvw0iP+wKwIFhfjdUtA2myLgjrG6VU6JCFLv8q/3Ww==} '@vitest/runner@2.1.2': resolution: {integrity: sha512-UCsPtvluHO3u7jdoONGjOSil+uON5SSvU9buQh3lP7GgUXHp78guN1wRmZDX4wGK6J10f9NUtP6pO+SFquoMlw==} - '@vitest/snapshot@2.0.5': - resolution: {integrity: sha512-SgCPUeDFLaM0mIUHfaArq8fD2WbaXG/zVXjRupthYfYGzc8ztbFbu6dUNOblBG7XLMR1kEhS/DNnfCZ2IhdDew==} + '@vitest/runner@2.1.4': + resolution: {integrity: sha512-sKRautINI9XICAMl2bjxQM8VfCMTB0EbsBc/EDFA57V6UQevEKY/TOPOF5nzcvCALltiLfXWbq4MaAwWx/YxIA==} '@vitest/snapshot@2.1.2': resolution: {integrity: sha512-xtAeNsZ++aRIYIUsek7VHzry/9AcxeULlegBvsdLncLmNCR6tR8SRjn8BbDP4naxtccvzTqZ+L1ltZlRCfBZFA==} - '@vitest/spy@2.0.5': - resolution: {integrity: sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==} + '@vitest/snapshot@2.1.4': + resolution: {integrity: sha512-3Kab14fn/5QZRog5BPj6Rs8dc4B+mim27XaKWFWHWA87R56AKjHTGcBFKpvZKDzC4u5Wd0w/qKsUIio3KzWW4Q==} '@vitest/spy@2.1.2': resolution: {integrity: sha512-GSUi5zoy+abNRJwmFhBDC0yRuVUn8WMlQscvnbbXdKLXX9dE59YbfwXxuJ/mth6eeqIzofU8BB5XDo/Ns/qK2A==} - '@vitest/utils@2.0.5': - resolution: {integrity: sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==} + '@vitest/spy@2.1.4': + resolution: {integrity: sha512-4JOxa+UAizJgpZfaCPKK2smq9d8mmjZVPMt2kOsg/R8QkoRzydHH1qHxIYNvr1zlEaFj4SXiaaJWxq/LPLKaLg==} '@vitest/utils@2.1.2': resolution: {integrity: sha512-zMO2KdYy6mx56btx9JvAqAZ6EyS3g49krMPPrgOp1yxGZiA93HumGk+bZ5jIZtOg5/VBYl5eBmGRQHqq4FG6uQ==} + '@vitest/utils@2.1.4': + resolution: {integrity: sha512-MXDnZn0Awl2S86PSNIim5PWXgIAx8CIkzu35mBdSApUip6RFOGXBCf3YFyeEu8n1IHk4bWD46DeYFu9mQlFIRg==} + abort-controller@3.0.0: resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} engines: {node: '>=6.5'} @@ -29966,6 +29952,10 @@ packages: resolution: {integrity: sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==} engines: {node: '>=12'} + chai@5.1.2: + resolution: {integrity: sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==} + engines: {node: '>=12'} + chalk-template@1.1.0: resolution: {integrity: sha512-T2VJbcDuZQ0Tb2EWwSotMPJjgpy1/tGee1BTpUNsGZ/qgNjV2t7Mvu+d4600U564nbLesN1x2dPL+xii174Ekg==} engines: {node: '>=14.16'} @@ -30187,42 +30177,42 @@ packages: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} engines: {node: '>= 8'} - cspell-config-lib@8.15.1: - resolution: {integrity: sha512-hDkaRRsqJbvAKA5ZoUBobozAA8iTcNzgo3mHK+FCVbGGaA2903q8mG3yFBviFioXUHsBBlN7Em/3JQDnasO3qQ==} + cspell-config-lib@8.15.5: + resolution: {integrity: sha512-16XBjAlUWO46uEuUKHQvSeiU7hQzG9Pqg6lwKQOyZ/rVLZyihk7JGtnWuG83BbW0RFokB/BcgT1q6OegWJiEZw==} engines: {node: '>=18'} - cspell-dictionary@8.15.1: - resolution: {integrity: sha512-N0Wz/hQlRDVuAH2OqlU9Uad++XccwsZuTmdV82HUHGCjmtHUxCiHD51+d2tsLX8ZXur0/eL988RIMPFePYIOww==} + cspell-dictionary@8.15.5: + resolution: {integrity: sha512-L+4MD3KItFGsxR8eY2ed6InsD7hZU1TIAeV2V4sG0wIbUXJXbPFxBTNZJrPLxTzAeCutHmkZwAl4ZCGu18bgtw==} engines: {node: '>=18'} - cspell-gitignore@8.15.1: - resolution: {integrity: sha512-RBJnOIXYKk9ZpYx/y8Hcl/jIhdKposid5Em/GUpj65vXPa0N9arpVXCiIObAtu3645NeHd+Z6RrhNLdKhyZprQ==} + cspell-gitignore@8.15.5: + resolution: {integrity: sha512-z5T0Xswfiu2NbkoVdf6uwEWzOgxCBb3L8kwB6lxzK5iyQDW2Bqlk+5b6KQaY38OtjTjJ9zzIJfFN3MfFlMFd3A==} engines: {node: '>=18'} hasBin: true - cspell-glob@8.15.1: - resolution: {integrity: sha512-INKBWUVGg595+F8V8kEEP07OPqQGJs+qp6Q587UwP+yvxMZ4PYA6PudvZEwa5capVxIbSYDNafqtcc2F3MaPbw==} + cspell-glob@8.15.5: + resolution: {integrity: sha512-VpfP16bRbkHEyGGjf6/EifFxETfS7lpcHbYt1tRi6VhCv1FTMqbB7H7Aw+DQkDezOUN8xdw0gYe/fk5AJGOBDg==} engines: {node: '>=18'} - cspell-grammar@8.15.1: - resolution: {integrity: sha512-4sZ3uh3rgrcoBMwXCmq8rDazVYKR2AUAm36t/EU5uiD+Ju1FfoEaxw1DTKtVDGMNNad6JmNmqxOoFdLAqL1sQA==} + cspell-grammar@8.15.5: + resolution: {integrity: sha512-2YnlSATtWHNL6cgx1qmTsY5ZO0zu8VdEmfcLQKgHr67T7atLRUnWAlmh06WMLd5qqp8PpWNPaOJF2prEYAXsUA==} engines: {node: '>=18'} hasBin: true - cspell-io@8.15.1: - resolution: {integrity: sha512-PvzOm4utZuhb97hqlWS1F+ZHbMVbFsUUC0HQcubquLkjV8s/yryuBlgP52gOxNGTZjyEULWk9MYUldRZK3oB8g==} + cspell-io@8.15.5: + resolution: {integrity: sha512-6kBK+EGTG9hiUDfB55r3xbhc7YUA5vJTXoc65pe9PXd4vgXXfrPRuy+5VRtvgSMoQj59oWOQw3ZqTAR95gbGnw==} engines: {node: '>=18'} - cspell-lib@8.15.1: - resolution: {integrity: sha512-qwfeok4DKYhNjlXOLDZ1hagKAKIXByfMSizTlwIMmmZVJ+8SL61P+PJG0ggwLteq9fEK+oLwaf/N2bVRH6M28Q==} + cspell-lib@8.15.5: + resolution: {integrity: sha512-DGieMWc82ouHb6Rq2LRKAlG4ExeQL1D5uvemgaouVHMZq4GvPtVaTwA6qHhw772/5z665oOVsRCicYbDtP4V3w==} engines: {node: '>=18'} - cspell-trie-lib@8.15.1: - resolution: {integrity: sha512-/m7GYH2ICictHt4cpuXQDMtcLDnfj3Picc/uV87n1JQPiB1lHyu4IawhaZB5nRS5cZgYab4wQKKVD8dLbwWXHQ==} + cspell-trie-lib@8.15.5: + resolution: {integrity: sha512-DAEkp51aFgpp9DFuJkNki0kVm2SVR1Hp0hD3Pnta7S4X2h5424TpTVVPltAIWtcdxRLGbX6N2x26lTI4K/YfpQ==} engines: {node: '>=18'} - cspell@8.15.1: - resolution: {integrity: sha512-bF2RNErisDg3pfm1tOrq/74g9n09wprg2Im+TNwDSmivusE9LxFoyhEPOiGBVg25/iMSu/BPx5nDNL1WDGwZqA==} + cspell@8.15.5: + resolution: {integrity: sha512-Vp1WI6axghVvenZS7GUlsZf6JFF7jDXdV5f4nXWjrZLbTrH+wbnFEO2mg+QJWa4IN35igjNYeu9TbA9/EGJzog==} engines: {node: '>=18'} hasBin: true @@ -30646,14 +30636,14 @@ packages: resolution: {integrity: sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - execa@8.0.1: - resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} - engines: {node: '>=16.17'} - expand-template@2.0.3: resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} engines: {node: '>=6'} + expect-type@1.1.0: + resolution: {integrity: sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA==} + engines: {node: '>=12.0.0'} + express@4.21.1: resolution: {integrity: sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==} engines: {node: '>= 0.10.0'} @@ -30711,6 +30701,14 @@ packages: picomatch: optional: true + fdir@6.4.2: + resolution: {integrity: sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + fecha@4.2.3: resolution: {integrity: sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==} @@ -30889,10 +30887,6 @@ packages: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} - get-stream@8.0.1: - resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} - engines: {node: '>=16'} - get-tsconfig@4.8.1: resolution: {integrity: sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==} @@ -31037,10 +31031,6 @@ packages: resolution: {integrity: sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==} engines: {node: '>=12.20.0'} - human-signals@5.0.0: - resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} - engines: {node: '>=16.17.0'} - humanize-ms@1.2.1: resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} @@ -31374,9 +31364,6 @@ packages: karma-firefox-launcher@1.3.0: resolution: {integrity: sha512-Fi7xPhwrRgr+94BnHX0F5dCl1miIW4RHnzjIGxF8GaIEp7rNqX7LSi7ok63VXs3PS/5MQaQMhGxw+bvD+pibBQ==} - karma-firefox-launcher@2.1.3: - resolution: {integrity: sha512-LMM2bseebLbYjODBOVt7TCPP9OI2vZIXCavIXhkO9m+10Uj5l7u/SKoeRmYx8FYHTVGZSpk6peX+3BMHC1WwNw==} - karma-ie-launcher@1.0.0: resolution: {integrity: sha512-ts71ke8pHvw6qdRtq0+7VY3ANLoZuUNNkA8abRaWV13QRPNm7TtSOqyszjHUtuwOWKcsSz4tbUtrNICrQC+SXQ==} peerDependencies: @@ -31750,8 +31737,8 @@ packages: ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - msw@2.4.10: - resolution: {integrity: sha512-bDQh9b25JK4IKMs5hnamwAkcNZ9RwA4mR/4YcgWkzwHOxj7UICbVJfmChJvY1UCAAMraPpvjHdxjoUDpc3F+Qw==} + msw@2.6.0: + resolution: {integrity: sha512-n3tx2w0MZ3H4pxY0ozrQ4sNPzK/dGtlr2cIIyuEsgq2Bhy4wvcW6ZH2w/gXM9+MEUY6HC1fWhqtcXDxVZr5Jxw==} engines: {node: '>=18'} hasBin: true peerDependencies: @@ -31768,6 +31755,10 @@ packages: resolution: {integrity: sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + mute-stream@2.0.0: + resolution: {integrity: sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==} + engines: {node: ^18.17.0 || >=20.5.0} + nanoid@3.3.7: resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -32502,6 +32493,10 @@ packages: resolution: {integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==} engines: {node: '>= 10'} + sirv@3.0.0: + resolution: {integrity: sha512-BPwJGUeDaDCHihkORDchNyyTvWFhcusy1XMmhEVTQTwGeybFbp8YEmB+njbPnth1FibULBSBVwCQni25XlCUDg==} + engines: {node: '>=18'} + sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} @@ -32752,6 +32747,13 @@ packages: tinyexec@0.3.0: resolution: {integrity: sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg==} + tinyexec@0.3.1: + resolution: {integrity: sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==} + + tinyglobby@0.2.10: + resolution: {integrity: sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==} + engines: {node: '>=12.0.0'} + tinyglobby@0.2.9: resolution: {integrity: sha512-8or1+BGEdk1Zkkw2ii16qSS7uVrQJPre5A9o/XkWPATkk23FZh/15BKFxPnlTy6vkljZxLqYCzzBMj30ZrSvjw==} engines: {node: '>=12.0.0'} @@ -32963,11 +32965,6 @@ packages: engines: {node: '>=14.17'} hasBin: true - typescript@5.5.4: - resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==} - engines: {node: '>=14.17'} - hasBin: true - typescript@5.6.3: resolution: {integrity: sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==} engines: {node: '>=14.17'} @@ -33067,13 +33064,13 @@ packages: resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} engines: {node: '>= 0.8'} - vite-node@2.0.5: - resolution: {integrity: sha512-LdsW4pxj0Ot69FAoXZ1yTnA9bjGohr2yNBU7QKRxpz8ITSkhuDl6h3zS/tvgz4qrNjeRnvrWeXQ8ZF7Um4W00Q==} + vite-node@2.1.2: + resolution: {integrity: sha512-HPcGNN5g/7I2OtPjLqgOtCRu/qhVvBxTUD3qzitmL0SrG1cWFzxzhMDWussxSbrRYWqnKf8P2jiNhPMSN+ymsQ==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true - vite-node@2.1.2: - resolution: {integrity: sha512-HPcGNN5g/7I2OtPjLqgOtCRu/qhVvBxTUD3qzitmL0SrG1cWFzxzhMDWussxSbrRYWqnKf8P2jiNhPMSN+ymsQ==} + vite-node@2.1.4: + resolution: {integrity: sha512-kqa9v+oi4HwkG6g8ufRnb5AeplcRw8jUF6/7/Qz1qRQOXHImG8YnLbB+LLszENwFnoBl9xIf9nVdCFzNd7GQEg==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -33108,15 +33105,15 @@ packages: terser: optional: true - vitest@2.0.5: - resolution: {integrity: sha512-8GUxONfauuIdeSl5f9GTgVEpg5BTOlplET4WEDaeY2QBiN8wSm68vxN/tb5z405OwppfoCavnwXafiaYBC/xOA==} + vitest@2.1.2: + resolution: {integrity: sha512-veNjLizOMkRrJ6xxb+pvxN6/QAWg95mzcRjtmkepXdN87FNfxAss9RKe2far/G9cQpipfgP2taqg0KiWsquj8A==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@types/node': ^18.0.0 || >=20.0.0 - '@vitest/browser': 2.0.5 - '@vitest/ui': 2.0.5 + '@vitest/browser': 2.1.2 + '@vitest/ui': 2.1.2 happy-dom: '*' jsdom: '*' peerDependenciesMeta: @@ -33133,15 +33130,15 @@ packages: jsdom: optional: true - vitest@2.1.2: - resolution: {integrity: sha512-veNjLizOMkRrJ6xxb+pvxN6/QAWg95mzcRjtmkepXdN87FNfxAss9RKe2far/G9cQpipfgP2taqg0KiWsquj8A==} + vitest@2.1.4: + resolution: {integrity: sha512-eDjxbVAJw1UJJCHr5xr/xM86Zx+YxIEXGAR+bmnEID7z9qWfoxpHw0zdobz+TQAFOLT+nEXz3+gx6nUJ7RgmlQ==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@types/node': ^18.0.0 || >=20.0.0 - '@vitest/browser': 2.1.2 - '@vitest/ui': 2.1.2 + '@vitest/browser': 2.1.4 + '@vitest/ui': 2.1.4 happy-dom: '*' jsdom: '*' peerDependenciesMeta: @@ -33196,11 +33193,6 @@ packages: engines: {node: '>= 8'} hasBin: true - which@3.0.1: - resolution: {integrity: sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - hasBin: true - why-is-node-running@2.3.0: resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} engines: {node: '>=8'} @@ -33956,25 +33948,26 @@ snapshots: '@colors/colors@1.6.0': {} - '@cspell/cspell-bundled-dicts@8.15.1': + '@cspell/cspell-bundled-dicts@8.15.5': dependencies: '@cspell/dict-ada': 4.0.5 + '@cspell/dict-al': 1.0.3 '@cspell/dict-aws': 4.0.7 '@cspell/dict-bash': 4.1.8 '@cspell/dict-companies': 3.1.7 - '@cspell/dict-cpp': 5.1.22 + '@cspell/dict-cpp': 5.1.23 '@cspell/dict-cryptocurrencies': 5.0.3 '@cspell/dict-csharp': 4.0.5 '@cspell/dict-css': 4.0.16 '@cspell/dict-dart': 2.2.4 '@cspell/dict-django': 4.1.3 - '@cspell/dict-docker': 1.1.10 + '@cspell/dict-docker': 1.1.11 '@cspell/dict-dotnet': 5.0.8 '@cspell/dict-elixir': 4.0.6 '@cspell/dict-en-common-misspellings': 2.0.7 '@cspell/dict-en-gb': 1.1.33 '@cspell/dict-en_us': 4.3.26 - '@cspell/dict-filetypes': 3.0.7 + '@cspell/dict-filetypes': 3.0.8 '@cspell/dict-flutter': 1.0.3 '@cspell/dict-fonts': 4.0.3 '@cspell/dict-fsharp': 1.0.4 @@ -33984,7 +33977,7 @@ snapshots: '@cspell/dict-golang': 6.0.16 '@cspell/dict-google': 1.0.4 '@cspell/dict-haskell': 4.0.4 - '@cspell/dict-html': 4.0.9 + '@cspell/dict-html': 4.0.10 '@cspell/dict-html-symbol-entities': 4.0.3 '@cspell/dict-java': 5.0.10 '@cspell/dict-julia': 1.0.4 @@ -33993,48 +33986,51 @@ snapshots: '@cspell/dict-lorem-ipsum': 4.0.3 '@cspell/dict-lua': 4.0.6 '@cspell/dict-makefile': 1.0.3 + '@cspell/dict-markdown': 2.0.7(@cspell/dict-css@4.0.16)(@cspell/dict-html-symbol-entities@4.0.3)(@cspell/dict-html@4.0.10)(@cspell/dict-typescript@3.1.11) '@cspell/dict-monkeyc': 1.0.9 '@cspell/dict-node': 5.0.4 '@cspell/dict-npm': 5.1.8 '@cspell/dict-php': 4.0.13 '@cspell/dict-powershell': 5.0.13 '@cspell/dict-public-licenses': 2.0.11 - '@cspell/dict-python': 4.2.11 + '@cspell/dict-python': 4.2.12 '@cspell/dict-r': 2.0.4 '@cspell/dict-ruby': 5.0.7 '@cspell/dict-rust': 4.0.9 '@cspell/dict-scala': 5.0.6 - '@cspell/dict-software-terms': 4.1.10 + '@cspell/dict-software-terms': 4.1.12 '@cspell/dict-sql': 2.1.8 '@cspell/dict-svelte': 1.0.5 '@cspell/dict-swift': 2.0.4 '@cspell/dict-terraform': 1.0.5 - '@cspell/dict-typescript': 3.1.9 + '@cspell/dict-typescript': 3.1.11 '@cspell/dict-vue': 3.0.3 - '@cspell/cspell-json-reporter@8.15.1': + '@cspell/cspell-json-reporter@8.15.5': dependencies: - '@cspell/cspell-types': 8.15.1 + '@cspell/cspell-types': 8.15.5 - '@cspell/cspell-pipe@8.15.1': {} + '@cspell/cspell-pipe@8.15.5': {} - '@cspell/cspell-resolver@8.15.1': + '@cspell/cspell-resolver@8.15.5': dependencies: global-directory: 4.0.1 - '@cspell/cspell-service-bus@8.15.1': {} + '@cspell/cspell-service-bus@8.15.5': {} - '@cspell/cspell-types@8.15.1': {} + '@cspell/cspell-types@8.15.5': {} '@cspell/dict-ada@4.0.5': {} + '@cspell/dict-al@1.0.3': {} + '@cspell/dict-aws@4.0.7': {} '@cspell/dict-bash@4.1.8': {} '@cspell/dict-companies@3.1.7': {} - '@cspell/dict-cpp@5.1.22': {} + '@cspell/dict-cpp@5.1.23': {} '@cspell/dict-cryptocurrencies@5.0.3': {} @@ -34048,7 +34044,7 @@ snapshots: '@cspell/dict-django@4.1.3': {} - '@cspell/dict-docker@1.1.10': {} + '@cspell/dict-docker@1.1.11': {} '@cspell/dict-dotnet@5.0.8': {} @@ -34060,7 +34056,7 @@ snapshots: '@cspell/dict-en_us@4.3.26': {} - '@cspell/dict-filetypes@3.0.7': {} + '@cspell/dict-filetypes@3.0.8': {} '@cspell/dict-flutter@1.0.3': {} @@ -34082,7 +34078,7 @@ snapshots: '@cspell/dict-html-symbol-entities@4.0.3': {} - '@cspell/dict-html@4.0.9': {} + '@cspell/dict-html@4.0.10': {} '@cspell/dict-java@5.0.10': {} @@ -34098,6 +34094,13 @@ snapshots: '@cspell/dict-makefile@1.0.3': {} + '@cspell/dict-markdown@2.0.7(@cspell/dict-css@4.0.16)(@cspell/dict-html-symbol-entities@4.0.3)(@cspell/dict-html@4.0.10)(@cspell/dict-typescript@3.1.11)': + dependencies: + '@cspell/dict-css': 4.0.16 + '@cspell/dict-html': 4.0.10 + '@cspell/dict-html-symbol-entities': 4.0.3 + '@cspell/dict-typescript': 3.1.11 + '@cspell/dict-monkeyc@1.0.9': {} '@cspell/dict-node@5.0.4': {} @@ -34110,7 +34113,7 @@ snapshots: '@cspell/dict-public-licenses@2.0.11': {} - '@cspell/dict-python@4.2.11': + '@cspell/dict-python@4.2.12': dependencies: '@cspell/dict-data-science': 2.0.5 @@ -34122,7 +34125,7 @@ snapshots: '@cspell/dict-scala@5.0.6': {} - '@cspell/dict-software-terms@4.1.10': {} + '@cspell/dict-software-terms@4.1.12': {} '@cspell/dict-sql@2.1.8': {} @@ -34132,19 +34135,19 @@ snapshots: '@cspell/dict-terraform@1.0.5': {} - '@cspell/dict-typescript@3.1.9': {} + '@cspell/dict-typescript@3.1.11': {} '@cspell/dict-vue@3.0.3': {} - '@cspell/dynamic-import@8.15.1': + '@cspell/dynamic-import@8.15.5': dependencies: import-meta-resolve: 4.1.0 - '@cspell/filetypes@8.15.1': {} + '@cspell/filetypes@8.15.5': {} - '@cspell/strong-weak-map@8.15.1': {} + '@cspell/strong-weak-map@8.15.5': {} - '@cspell/url@8.15.1': {} + '@cspell/url@8.15.5': {} '@cspotcode/source-map-support@0.8.1': dependencies: @@ -34359,35 +34362,55 @@ snapshots: '@humanwhocodes/retry@0.3.1': {} - '@inquirer/confirm@3.2.0': + '@inquirer/confirm@5.0.1(@types/node@18.19.45)': dependencies: - '@inquirer/core': 9.2.1 - '@inquirer/type': 1.5.5 + '@inquirer/core': 10.0.1(@types/node@18.19.45) + '@inquirer/type': 3.0.0(@types/node@18.19.45) + '@types/node': 18.19.45 - '@inquirer/core@9.2.1': + '@inquirer/confirm@5.0.1(@types/node@22.7.5)': dependencies: - '@inquirer/figures': 1.0.7 - '@inquirer/type': 2.0.0 - '@types/mute-stream': 0.0.4 + '@inquirer/core': 10.0.1(@types/node@22.7.5) + '@inquirer/type': 3.0.0(@types/node@22.7.5) '@types/node': 22.7.5 - '@types/wrap-ansi': 3.0.0 + + '@inquirer/core@10.0.1(@types/node@18.19.45)': + dependencies: + '@inquirer/figures': 1.0.7 + '@inquirer/type': 3.0.0(@types/node@18.19.45) ansi-escapes: 4.3.2 cli-width: 4.1.0 - mute-stream: 1.0.0 + mute-stream: 2.0.0 + signal-exit: 4.1.0 + strip-ansi: 6.0.1 + wrap-ansi: 6.2.0 + yoctocolors-cjs: 2.1.2 + transitivePeerDependencies: + - '@types/node' + + '@inquirer/core@10.0.1(@types/node@22.7.5)': + dependencies: + '@inquirer/figures': 1.0.7 + '@inquirer/type': 3.0.0(@types/node@22.7.5) + ansi-escapes: 4.3.2 + cli-width: 4.1.0 + mute-stream: 2.0.0 signal-exit: 4.1.0 strip-ansi: 6.0.1 wrap-ansi: 6.2.0 yoctocolors-cjs: 2.1.2 + transitivePeerDependencies: + - '@types/node' '@inquirer/figures@1.0.7': {} - '@inquirer/type@1.5.5': + '@inquirer/type@3.0.0(@types/node@18.19.45)': dependencies: - mute-stream: 1.0.0 + '@types/node': 18.19.45 - '@inquirer/type@2.0.0': + '@inquirer/type@3.0.0(@types/node@22.7.5)': dependencies: - mute-stream: 1.0.0 + '@types/node': 22.7.5 '@isaacs/cliui@8.0.2': dependencies: @@ -34490,7 +34513,7 @@ snapshots: '@microsoft/tsdoc@0.15.0': {} - '@mswjs/interceptors@0.35.9': + '@mswjs/interceptors@0.36.7': dependencies: '@open-draft/deferred-promise': 2.2.0 '@open-draft/logger': 0.3.0 @@ -35217,10 +35240,6 @@ snapshots: '@types/mustache@4.2.5': {} - '@types/mute-stream@0.0.4': - dependencies: - '@types/node': 18.19.45 - '@types/mysql@2.15.26': dependencies: '@types/node': 18.19.45 @@ -35320,8 +35339,6 @@ snapshots: '@types/uuid@8.3.4': {} - '@types/wrap-ansi@3.0.0': {} - '@types/ws@7.4.7': dependencies: '@types/node': 18.19.45 @@ -35516,67 +35533,72 @@ snapshots: '@typescript-eslint/types': 8.2.0 eslint-visitor-keys: 3.4.3 - '@vitest/browser@2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5)': + '@vitest/browser@2.1.2(@types/node@18.19.45)(@vitest/spy@2.1.2)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.2)': dependencies: '@testing-library/dom': 10.4.0 '@testing-library/user-event': 14.5.2(@testing-library/dom@10.4.0) - '@vitest/utils': 2.0.5 + '@vitest/mocker': 2.1.2(@vitest/spy@2.1.2)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3))(vite@5.4.8(@types/node@18.19.45)) + '@vitest/utils': 2.1.2 magic-string: 0.30.12 - msw: 2.4.10(typescript@5.6.3) + msw: 2.6.0(@types/node@18.19.45)(typescript@5.6.3) sirv: 2.0.4 - vitest: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + tinyrainbow: 1.2.0 + vitest: 2.1.2(@types/node@18.19.45)(@vitest/browser@2.1.2)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) ws: 8.18.0 optionalDependencies: playwright: 1.46.1 transitivePeerDependencies: + - '@types/node' + - '@vitest/spy' - bufferutil - typescript - utf-8-validate + - vite + optional: true - '@vitest/browser@2.1.2(@vitest/spy@2.1.2)(playwright@1.46.1)(typescript@5.5.4)(vite@5.4.8(@types/node@22.7.5))(vitest@2.1.2)': + '@vitest/browser@2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4)': dependencies: '@testing-library/dom': 10.4.0 '@testing-library/user-event': 14.5.2(@testing-library/dom@10.4.0) - '@vitest/mocker': 2.1.2(@vitest/spy@2.1.2)(msw@2.4.10(typescript@5.5.4))(vite@5.4.8(@types/node@22.7.5)) - '@vitest/utils': 2.1.2 + '@vitest/mocker': 2.1.4(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3))(vite@5.4.8(@types/node@18.19.45)) + '@vitest/utils': 2.1.4 magic-string: 0.30.12 - msw: 2.4.10(typescript@5.5.4) - sirv: 2.0.4 + msw: 2.6.0(@types/node@18.19.45)(typescript@5.6.3) + sirv: 3.0.0 tinyrainbow: 1.2.0 - vitest: 2.1.2(@types/node@22.7.5)(@vitest/browser@2.1.2)(msw@2.4.10(typescript@5.5.4)) + vitest: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) ws: 8.18.0 optionalDependencies: playwright: 1.46.1 transitivePeerDependencies: - - '@vitest/spy' + - '@types/node' - bufferutil - typescript - utf-8-validate - vite - '@vitest/browser@2.1.2(@vitest/spy@2.1.2)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.2)': + '@vitest/browser@2.1.4(@types/node@22.7.5)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@22.7.5))(vitest@2.1.4)': dependencies: '@testing-library/dom': 10.4.0 '@testing-library/user-event': 14.5.2(@testing-library/dom@10.4.0) - '@vitest/mocker': 2.1.2(@vitest/spy@2.1.2)(msw@2.4.10(typescript@5.6.3))(vite@5.4.8(@types/node@18.19.45)) - '@vitest/utils': 2.1.2 + '@vitest/mocker': 2.1.4(msw@2.6.0(@types/node@22.7.5)(typescript@5.6.3))(vite@5.4.8(@types/node@22.7.5)) + '@vitest/utils': 2.1.4 magic-string: 0.30.12 - msw: 2.4.10(typescript@5.6.3) - sirv: 2.0.4 + msw: 2.6.0(@types/node@22.7.5)(typescript@5.6.3) + sirv: 3.0.0 tinyrainbow: 1.2.0 - vitest: 2.1.2(@types/node@18.19.45)(@vitest/browser@2.1.2)(msw@2.4.10(typescript@5.6.3)) + vitest: 2.1.4(@types/node@22.7.5)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@22.7.5)(typescript@5.6.3)) ws: 8.18.0 optionalDependencies: playwright: 1.46.1 transitivePeerDependencies: - - '@vitest/spy' + - '@types/node' - bufferutil - typescript - utf-8-validate - vite - optional: true - '@vitest/coverage-istanbul@2.0.5(vitest@2.0.5)': + '@vitest/coverage-istanbul@2.1.2(vitest@2.1.2)': dependencies: '@istanbuljs/schema': 0.1.3 debug: 4.3.7(supports-color@8.1.1) @@ -35588,11 +35610,11 @@ snapshots: magicast: 0.3.5 test-exclude: 7.0.1 tinyrainbow: 1.2.0 - vitest: 2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5) + vitest: 2.1.2(@types/node@18.19.45)(@vitest/browser@2.1.2)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) transitivePeerDependencies: - supports-color - '@vitest/coverage-istanbul@2.1.2(vitest@2.1.2)': + '@vitest/coverage-istanbul@2.1.4(vitest@2.1.4)': dependencies: '@istanbuljs/schema': 0.1.3 debug: 4.3.7(supports-color@8.1.1) @@ -35604,17 +35626,10 @@ snapshots: magicast: 0.3.5 test-exclude: 7.0.1 tinyrainbow: 1.2.0 - vitest: 2.1.2(@types/node@18.19.45)(@vitest/browser@2.1.2)(msw@2.4.10(typescript@5.6.3)) + vitest: 2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)) transitivePeerDependencies: - supports-color - '@vitest/expect@2.0.5': - dependencies: - '@vitest/spy': 2.0.5 - '@vitest/utils': 2.0.5 - chai: 5.1.1 - tinyrainbow: 1.2.0 - '@vitest/expect@2.1.2': dependencies: '@vitest/spy': 2.1.2 @@ -35622,46 +35637,56 @@ snapshots: chai: 5.1.1 tinyrainbow: 1.2.0 - '@vitest/mocker@2.1.2(@vitest/spy@2.1.2)(msw@2.4.10(typescript@5.5.4))(vite@5.4.8(@types/node@22.7.5))': + '@vitest/expect@2.1.4': + dependencies: + '@vitest/spy': 2.1.4 + '@vitest/utils': 2.1.4 + chai: 5.1.2 + tinyrainbow: 1.2.0 + + '@vitest/mocker@2.1.2(@vitest/spy@2.1.2)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3))(vite@5.4.8(@types/node@18.19.45))': dependencies: '@vitest/spy': 2.1.2 estree-walker: 3.0.3 magic-string: 0.30.12 optionalDependencies: - msw: 2.4.10(typescript@5.5.4) - vite: 5.4.8(@types/node@22.7.5) + msw: 2.6.0(@types/node@18.19.45)(typescript@5.6.3) + vite: 5.4.8(@types/node@18.19.45) - '@vitest/mocker@2.1.2(@vitest/spy@2.1.2)(msw@2.4.10(typescript@5.6.3))(vite@5.4.8(@types/node@18.19.45))': + '@vitest/mocker@2.1.4(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3))(vite@5.4.8(@types/node@18.19.45))': dependencies: - '@vitest/spy': 2.1.2 + '@vitest/spy': 2.1.4 estree-walker: 3.0.3 magic-string: 0.30.12 optionalDependencies: - msw: 2.4.10(typescript@5.6.3) + msw: 2.6.0(@types/node@18.19.45)(typescript@5.6.3) vite: 5.4.8(@types/node@18.19.45) - '@vitest/pretty-format@2.0.5': + '@vitest/mocker@2.1.4(msw@2.6.0(@types/node@22.7.5)(typescript@5.6.3))(vite@5.4.8(@types/node@22.7.5))': dependencies: - tinyrainbow: 1.2.0 + '@vitest/spy': 2.1.4 + estree-walker: 3.0.3 + magic-string: 0.30.12 + optionalDependencies: + msw: 2.6.0(@types/node@22.7.5)(typescript@5.6.3) + vite: 5.4.8(@types/node@22.7.5) '@vitest/pretty-format@2.1.2': dependencies: tinyrainbow: 1.2.0 - '@vitest/runner@2.0.5': + '@vitest/pretty-format@2.1.4': dependencies: - '@vitest/utils': 2.0.5 - pathe: 1.1.2 + tinyrainbow: 1.2.0 '@vitest/runner@2.1.2': dependencies: '@vitest/utils': 2.1.2 pathe: 1.1.2 - '@vitest/snapshot@2.0.5': + '@vitest/runner@2.1.4': dependencies: - '@vitest/pretty-format': 2.0.5 - magic-string: 0.30.12 + '@vitest/utils': 2.1.4 pathe: 1.1.2 '@vitest/snapshot@2.1.2': @@ -35670,20 +35695,19 @@ snapshots: magic-string: 0.30.11 pathe: 1.1.2 - '@vitest/spy@2.0.5': + '@vitest/snapshot@2.1.4': dependencies: - tinyspy: 3.0.2 + '@vitest/pretty-format': 2.1.4 + magic-string: 0.30.12 + pathe: 1.1.2 '@vitest/spy@2.1.2': dependencies: tinyspy: 3.0.2 - '@vitest/utils@2.0.5': + '@vitest/spy@2.1.4': dependencies: - '@vitest/pretty-format': 2.0.5 - estree-walker: 3.0.3 - loupe: 3.1.2 - tinyrainbow: 1.2.0 + tinyspy: 3.0.2 '@vitest/utils@2.1.2': dependencies: @@ -35691,6 +35715,12 @@ snapshots: loupe: 3.1.2 tinyrainbow: 1.2.0 + '@vitest/utils@2.1.4': + dependencies: + '@vitest/pretty-format': 2.1.4 + loupe: 3.1.2 + tinyrainbow: 1.2.0 + abort-controller@3.0.0: dependencies: event-target-shim: 5.0.1 @@ -35996,6 +36026,11 @@ snapshots: chai: 5.1.1 check-error: 2.1.1 + chai-as-promised@8.0.0(chai@5.1.2): + dependencies: + chai: 5.1.2 + check-error: 2.1.1 + chai-exclude@2.1.1(chai@4.5.0): dependencies: chai: 4.5.0 @@ -36034,6 +36069,14 @@ snapshots: loupe: 3.1.2 pathval: 2.0.0 + chai@5.1.2: + dependencies: + assertion-error: 2.0.1 + check-error: 2.1.1 + deep-eql: 5.0.2 + loupe: 3.1.2 + pathval: 2.0.0 + chalk-template@1.1.0: dependencies: chalk: 5.3.0 @@ -36274,59 +36317,59 @@ snapshots: shebang-command: 2.0.0 which: 2.0.2 - cspell-config-lib@8.15.1: + cspell-config-lib@8.15.5: dependencies: - '@cspell/cspell-types': 8.15.1 + '@cspell/cspell-types': 8.15.5 comment-json: 4.2.5 yaml: 2.6.0 - cspell-dictionary@8.15.1: + cspell-dictionary@8.15.5: dependencies: - '@cspell/cspell-pipe': 8.15.1 - '@cspell/cspell-types': 8.15.1 - cspell-trie-lib: 8.15.1 + '@cspell/cspell-pipe': 8.15.5 + '@cspell/cspell-types': 8.15.5 + cspell-trie-lib: 8.15.5 fast-equals: 5.0.1 - cspell-gitignore@8.15.1: + cspell-gitignore@8.15.5: dependencies: - '@cspell/url': 8.15.1 - cspell-glob: 8.15.1 - cspell-io: 8.15.1 + '@cspell/url': 8.15.5 + cspell-glob: 8.15.5 + cspell-io: 8.15.5 find-up-simple: 1.0.0 - cspell-glob@8.15.1: + cspell-glob@8.15.5: dependencies: - '@cspell/url': 8.15.1 + '@cspell/url': 8.15.5 micromatch: 4.0.8 - cspell-grammar@8.15.1: + cspell-grammar@8.15.5: dependencies: - '@cspell/cspell-pipe': 8.15.1 - '@cspell/cspell-types': 8.15.1 + '@cspell/cspell-pipe': 8.15.5 + '@cspell/cspell-types': 8.15.5 - cspell-io@8.15.1: + cspell-io@8.15.5: dependencies: - '@cspell/cspell-service-bus': 8.15.1 - '@cspell/url': 8.15.1 + '@cspell/cspell-service-bus': 8.15.5 + '@cspell/url': 8.15.5 - cspell-lib@8.15.1: + cspell-lib@8.15.5: dependencies: - '@cspell/cspell-bundled-dicts': 8.15.1 - '@cspell/cspell-pipe': 8.15.1 - '@cspell/cspell-resolver': 8.15.1 - '@cspell/cspell-types': 8.15.1 - '@cspell/dynamic-import': 8.15.1 - '@cspell/filetypes': 8.15.1 - '@cspell/strong-weak-map': 8.15.1 - '@cspell/url': 8.15.1 + '@cspell/cspell-bundled-dicts': 8.15.5 + '@cspell/cspell-pipe': 8.15.5 + '@cspell/cspell-resolver': 8.15.5 + '@cspell/cspell-types': 8.15.5 + '@cspell/dynamic-import': 8.15.5 + '@cspell/filetypes': 8.15.5 + '@cspell/strong-weak-map': 8.15.5 + '@cspell/url': 8.15.5 clear-module: 4.1.2 comment-json: 4.2.5 - cspell-config-lib: 8.15.1 - cspell-dictionary: 8.15.1 - cspell-glob: 8.15.1 - cspell-grammar: 8.15.1 - cspell-io: 8.15.1 - cspell-trie-lib: 8.15.1 + cspell-config-lib: 8.15.5 + cspell-dictionary: 8.15.5 + cspell-glob: 8.15.5 + cspell-grammar: 8.15.5 + cspell-io: 8.15.5 + cspell-trie-lib: 8.15.5 env-paths: 3.0.0 fast-equals: 5.0.1 gensequence: 7.0.0 @@ -36336,32 +36379,32 @@ snapshots: vscode-uri: 3.0.8 xdg-basedir: 5.1.0 - cspell-trie-lib@8.15.1: + cspell-trie-lib@8.15.5: dependencies: - '@cspell/cspell-pipe': 8.15.1 - '@cspell/cspell-types': 8.15.1 + '@cspell/cspell-pipe': 8.15.5 + '@cspell/cspell-types': 8.15.5 gensequence: 7.0.0 - cspell@8.15.1: + cspell@8.15.5: dependencies: - '@cspell/cspell-json-reporter': 8.15.1 - '@cspell/cspell-pipe': 8.15.1 - '@cspell/cspell-types': 8.15.1 - '@cspell/dynamic-import': 8.15.1 - '@cspell/url': 8.15.1 + '@cspell/cspell-json-reporter': 8.15.5 + '@cspell/cspell-pipe': 8.15.5 + '@cspell/cspell-types': 8.15.5 + '@cspell/dynamic-import': 8.15.5 + '@cspell/url': 8.15.5 chalk: 5.3.0 chalk-template: 1.1.0 commander: 12.1.0 - cspell-dictionary: 8.15.1 - cspell-gitignore: 8.15.1 - cspell-glob: 8.15.1 - cspell-io: 8.15.1 - cspell-lib: 8.15.1 + cspell-dictionary: 8.15.5 + cspell-gitignore: 8.15.5 + cspell-glob: 8.15.5 + cspell-io: 8.15.5 + cspell-lib: 8.15.5 fast-json-stable-stringify: 2.1.0 file-entry-cache: 9.1.0 get-stdin: 9.0.0 semver: 7.6.3 - tinyglobby: 0.2.9 + tinyglobby: 0.2.10 csv-parse@5.5.6: {} @@ -36826,20 +36869,10 @@ snapshots: signal-exit: 3.0.7 strip-final-newline: 3.0.0 - execa@8.0.1: - dependencies: - cross-spawn: 7.0.3 - get-stream: 8.0.1 - human-signals: 5.0.0 - is-stream: 3.0.0 - merge-stream: 2.0.0 - npm-run-path: 5.3.0 - onetime: 6.0.0 - signal-exit: 4.1.0 - strip-final-newline: 3.0.0 - expand-template@2.0.3: {} + expect-type@1.1.0: {} + express@4.21.1: dependencies: accepts: 1.3.8 @@ -36930,6 +36963,10 @@ snapshots: optionalDependencies: picomatch: 4.0.2 + fdir@6.4.2(picomatch@4.0.2): + optionalDependencies: + picomatch: 4.0.2 + fecha@4.2.3: {} file-entry-cache@8.0.0: @@ -37100,8 +37137,6 @@ snapshots: get-stream@6.0.1: {} - get-stream@8.0.1: {} - get-tsconfig@4.8.1: dependencies: resolve-pkg-maps: 1.0.0 @@ -37259,8 +37294,6 @@ snapshots: human-signals@3.0.1: {} - human-signals@5.0.0: {} - humanize-ms@1.2.1: dependencies: ms: 2.1.3 @@ -37608,11 +37641,6 @@ snapshots: dependencies: is-wsl: 2.2.0 - karma-firefox-launcher@2.1.3: - dependencies: - is-wsl: 2.2.0 - which: 3.0.1 - karma-ie-launcher@1.0.0(karma@6.4.4): dependencies: karma: 6.4.4 @@ -38010,13 +38038,14 @@ snapshots: ms@2.1.3: {} - msw@2.4.10(typescript@5.5.4): + msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3): dependencies: '@bundled-es-modules/cookie': 2.0.0 '@bundled-es-modules/statuses': 1.0.1 '@bundled-es-modules/tough-cookie': 0.1.6 - '@inquirer/confirm': 3.2.0 - '@mswjs/interceptors': 0.35.9 + '@inquirer/confirm': 5.0.1(@types/node@18.19.45) + '@mswjs/interceptors': 0.36.7 + '@open-draft/deferred-promise': 2.2.0 '@open-draft/until': 2.1.0 '@types/cookie': 0.6.0 '@types/statuses': 2.0.5 @@ -38030,15 +38059,18 @@ snapshots: type-fest: 4.26.1 yargs: 17.7.2 optionalDependencies: - typescript: 5.5.4 + typescript: 5.6.3 + transitivePeerDependencies: + - '@types/node' - msw@2.4.10(typescript@5.6.3): + msw@2.6.0(@types/node@22.7.5)(typescript@5.6.3): dependencies: '@bundled-es-modules/cookie': 2.0.0 '@bundled-es-modules/statuses': 1.0.1 '@bundled-es-modules/tough-cookie': 0.1.6 - '@inquirer/confirm': 3.2.0 - '@mswjs/interceptors': 0.35.9 + '@inquirer/confirm': 5.0.1(@types/node@22.7.5) + '@mswjs/interceptors': 0.36.7 + '@open-draft/deferred-promise': 2.2.0 '@open-draft/until': 2.1.0 '@types/cookie': 0.6.0 '@types/statuses': 2.0.5 @@ -38053,11 +38085,15 @@ snapshots: yargs: 17.7.2 optionalDependencies: typescript: 5.6.3 + transitivePeerDependencies: + - '@types/node' mustache@4.2.0: {} mute-stream@1.0.0: {} + mute-stream@2.0.0: {} + nanoid@3.3.7: {} napi-build-utils@1.0.2: {} @@ -38885,6 +38921,13 @@ snapshots: '@polka/url': 1.0.0-next.28 mrmime: 2.0.0 totalist: 3.0.1 + optional: true + + sirv@3.0.0: + dependencies: + '@polka/url': 1.0.0-next.28 + mrmime: 2.0.0 + totalist: 3.0.1 sisteransi@1.0.5: {} @@ -39180,6 +39223,13 @@ snapshots: tinyexec@0.3.0: {} + tinyexec@0.3.1: {} + + tinyglobby@0.2.10: + dependencies: + fdir: 6.4.2(picomatch@4.0.2) + picomatch: 4.0.2 + tinyglobby@0.2.9: dependencies: fdir: 6.4.0(picomatch@4.0.2) @@ -39369,8 +39419,6 @@ snapshots: typescript@5.4.2: {} - typescript@5.5.4: {} - typescript@5.6.3: {} ua-parser-js@0.7.38: {} @@ -39444,12 +39492,11 @@ snapshots: vary@1.1.2: {} - vite-node@2.0.5(@types/node@18.19.45): + vite-node@2.1.2(@types/node@18.19.45): dependencies: cac: 6.7.14 debug: 4.3.7(supports-color@8.1.1) pathe: 1.1.2 - tinyrainbow: 1.2.0 vite: 5.4.8(@types/node@18.19.45) transitivePeerDependencies: - '@types/node' @@ -39462,7 +39509,7 @@ snapshots: - supports-color - terser - vite-node@2.1.2(@types/node@18.19.45): + vite-node@2.1.4(@types/node@18.19.45): dependencies: cac: 6.7.14 debug: 4.3.7(supports-color@8.1.1) @@ -39479,7 +39526,7 @@ snapshots: - supports-color - terser - vite-node@2.1.2(@types/node@22.7.5): + vite-node@2.1.4(@types/node@22.7.5): dependencies: cac: 6.7.14 debug: 4.3.7(supports-color@8.1.1) @@ -39514,33 +39561,34 @@ snapshots: '@types/node': 22.7.5 fsevents: 2.3.3 - vitest@2.0.5(@types/node@18.19.45)(@vitest/browser@2.0.5): + vitest@2.1.2(@types/node@18.19.45)(@vitest/browser@2.1.2)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)): dependencies: - '@ampproject/remapping': 2.3.0 - '@vitest/expect': 2.0.5 + '@vitest/expect': 2.1.2 + '@vitest/mocker': 2.1.2(@vitest/spy@2.1.2)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3))(vite@5.4.8(@types/node@18.19.45)) '@vitest/pretty-format': 2.1.2 - '@vitest/runner': 2.0.5 - '@vitest/snapshot': 2.0.5 - '@vitest/spy': 2.0.5 - '@vitest/utils': 2.0.5 + '@vitest/runner': 2.1.2 + '@vitest/snapshot': 2.1.2 + '@vitest/spy': 2.1.2 + '@vitest/utils': 2.1.2 chai: 5.1.1 debug: 4.3.7(supports-color@8.1.1) - execa: 8.0.1 - magic-string: 0.30.12 + magic-string: 0.30.11 pathe: 1.1.2 std-env: 3.7.0 tinybench: 2.9.0 + tinyexec: 0.3.0 tinypool: 1.0.1 tinyrainbow: 1.2.0 vite: 5.4.8(@types/node@18.19.45) - vite-node: 2.0.5(@types/node@18.19.45) + vite-node: 2.1.2(@types/node@18.19.45) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 18.19.45 - '@vitest/browser': 2.0.5(playwright@1.46.1)(typescript@5.6.3)(vitest@2.0.5) + '@vitest/browser': 2.1.2(@types/node@18.19.45)(@vitest/spy@2.1.2)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.2) transitivePeerDependencies: - less - lightningcss + - msw - sass - sass-embedded - stylus @@ -39548,30 +39596,31 @@ snapshots: - supports-color - terser - vitest@2.1.2(@types/node@18.19.45)(@vitest/browser@2.1.2)(msw@2.4.10(typescript@5.6.3)): + vitest@2.1.4(@types/node@18.19.45)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3)): dependencies: - '@vitest/expect': 2.1.2 - '@vitest/mocker': 2.1.2(@vitest/spy@2.1.2)(msw@2.4.10(typescript@5.6.3))(vite@5.4.8(@types/node@18.19.45)) - '@vitest/pretty-format': 2.1.2 - '@vitest/runner': 2.1.2 - '@vitest/snapshot': 2.1.2 - '@vitest/spy': 2.1.2 - '@vitest/utils': 2.1.2 - chai: 5.1.1 + '@vitest/expect': 2.1.4 + '@vitest/mocker': 2.1.4(msw@2.6.0(@types/node@18.19.45)(typescript@5.6.3))(vite@5.4.8(@types/node@18.19.45)) + '@vitest/pretty-format': 2.1.4 + '@vitest/runner': 2.1.4 + '@vitest/snapshot': 2.1.4 + '@vitest/spy': 2.1.4 + '@vitest/utils': 2.1.4 + chai: 5.1.2 debug: 4.3.7(supports-color@8.1.1) - magic-string: 0.30.11 + expect-type: 1.1.0 + magic-string: 0.30.12 pathe: 1.1.2 std-env: 3.7.0 tinybench: 2.9.0 - tinyexec: 0.3.0 + tinyexec: 0.3.1 tinypool: 1.0.1 tinyrainbow: 1.2.0 vite: 5.4.8(@types/node@18.19.45) - vite-node: 2.1.2(@types/node@18.19.45) + vite-node: 2.1.4(@types/node@18.19.45) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 18.19.45 - '@vitest/browser': 2.1.2(@vitest/spy@2.1.2)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.2) + '@vitest/browser': 2.1.4(@types/node@18.19.45)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@18.19.45))(vitest@2.1.4) transitivePeerDependencies: - less - lightningcss @@ -39583,30 +39632,31 @@ snapshots: - supports-color - terser - vitest@2.1.2(@types/node@22.7.5)(@vitest/browser@2.1.2)(msw@2.4.10(typescript@5.5.4)): + vitest@2.1.4(@types/node@22.7.5)(@vitest/browser@2.1.4)(msw@2.6.0(@types/node@22.7.5)(typescript@5.6.3)): dependencies: - '@vitest/expect': 2.1.2 - '@vitest/mocker': 2.1.2(@vitest/spy@2.1.2)(msw@2.4.10(typescript@5.5.4))(vite@5.4.8(@types/node@22.7.5)) - '@vitest/pretty-format': 2.1.2 - '@vitest/runner': 2.1.2 - '@vitest/snapshot': 2.1.2 - '@vitest/spy': 2.1.2 - '@vitest/utils': 2.1.2 - chai: 5.1.1 + '@vitest/expect': 2.1.4 + '@vitest/mocker': 2.1.4(msw@2.6.0(@types/node@22.7.5)(typescript@5.6.3))(vite@5.4.8(@types/node@22.7.5)) + '@vitest/pretty-format': 2.1.4 + '@vitest/runner': 2.1.4 + '@vitest/snapshot': 2.1.4 + '@vitest/spy': 2.1.4 + '@vitest/utils': 2.1.4 + chai: 5.1.2 debug: 4.3.7(supports-color@8.1.1) - magic-string: 0.30.11 + expect-type: 1.1.0 + magic-string: 0.30.12 pathe: 1.1.2 std-env: 3.7.0 tinybench: 2.9.0 - tinyexec: 0.3.0 + tinyexec: 0.3.1 tinypool: 1.0.1 tinyrainbow: 1.2.0 vite: 5.4.8(@types/node@22.7.5) - vite-node: 2.1.2(@types/node@22.7.5) + vite-node: 2.1.4(@types/node@22.7.5) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 22.7.5 - '@vitest/browser': 2.1.2(@vitest/spy@2.1.2)(playwright@1.46.1)(typescript@5.5.4)(vite@5.4.8(@types/node@22.7.5))(vitest@2.1.2) + '@vitest/browser': 2.1.4(@types/node@22.7.5)(playwright@1.46.1)(typescript@5.6.3)(vite@5.4.8(@types/node@22.7.5))(vitest@2.1.4) transitivePeerDependencies: - less - lightningcss @@ -39649,10 +39699,6 @@ snapshots: dependencies: isexe: 2.0.0 - which@3.0.1: - dependencies: - isexe: 2.0.0 - why-is-node-running@2.3.0: dependencies: siginfo: 2.0.0 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 7ead3129e18d..87e65e5721e7 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -112,9 +112,9 @@ catalog: '@microsoft/api-extractor': ^7.47.7 '@types/chai-as-promised': ^8.0.1 '@types/node': ^18.0.0 - '@vitest/browser': ^2.1.2 - '@vitest/coverage-istanbul': ^2.1.2 - '@vitest/expect': ^2.1.2 + '@vitest/browser': ^2.1.4 + '@vitest/coverage-istanbul': ^2.1.4 + '@vitest/expect': ^2.1.4 chai: ^5.1.1 chai-as-promised: ^8.0.0 chai-exclude: ^3.0.0 @@ -125,7 +125,7 @@ catalog: tshy: ^2.0.0 tslib: ^2.7.0 typescript: ~5.6.2 - vitest: ^2.1.2 + vitest: ^2.1.4 catalogs: abort-controllerV1: diff --git a/sdk/agrifood/agrifood-farming-rest/review/agrifood-farming.api.md b/sdk/agrifood/agrifood-farming-rest/review/agrifood-farming.api.md index 9a41b33ed019..0630fbb6944b 100644 --- a/sdk/agrifood/agrifood-farming-rest/review/agrifood-farming.api.md +++ b/sdk/agrifood/agrifood-farming-rest/review/agrifood-farming.api.md @@ -4,18 +4,18 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { CreateHttpPollerOptions } from '@azure/core-lro'; -import { HttpResponse } from '@azure-rest/core-client'; -import { OperationState } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -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'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { CreateHttpPollerOptions } from '@azure/core-lro'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { OperationState } from '@azure/core-lro'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { SimplePollerLike } from '@azure/core-lro'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AdditionalProviderParameters { diff --git a/sdk/agrifood/agrifood-farming-rest/src/clientDefinitions.ts b/sdk/agrifood/agrifood-farming-rest/src/clientDefinitions.ts index f80ee7bbbfa4..1e1d77b036bd 100644 --- a/sdk/agrifood/agrifood-farming-rest/src/clientDefinitions.ts +++ b/sdk/agrifood/agrifood-farming-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ApplicationDataListParameters, ApplicationDataCreateCascadeDeleteJobParameters, ApplicationDataGetCascadeDeleteJobDetailsParameters, @@ -200,7 +200,7 @@ import { ZonesGetCascadeDeleteJobDetailsParameters, ZonesCreateCascadeDeleteJobParameters, } from "./parameters"; -import { +import type { ApplicationDataList200Response, ApplicationDataListDefaultResponse, ApplicationDataCreateCascadeDeleteJob202Response, @@ -624,7 +624,7 @@ import { ZonesCreateCascadeDeleteJob202Response, ZonesCreateCascadeDeleteJobDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface ApplicationDataList { /** Returns a paginated list of application data resources across all parties. */ diff --git a/sdk/agrifood/agrifood-farming-rest/src/farmBeats.ts b/sdk/agrifood/agrifood-farming-rest/src/farmBeats.ts index 41e7b251f626..86069e3a42b3 100644 --- a/sdk/agrifood/agrifood-farming-rest/src/farmBeats.ts +++ b/sdk/agrifood/agrifood-farming-rest/src/farmBeats.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { FarmBeatsClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { FarmBeatsClient } from "./clientDefinitions"; /** * Initialize a new instance of `FarmBeatsClient` diff --git a/sdk/agrifood/agrifood-farming-rest/src/isUnexpected.ts b/sdk/agrifood/agrifood-farming-rest/src/isUnexpected.ts index e4abaa6ebcbd..d112c2e260e7 100644 --- a/sdk/agrifood/agrifood-farming-rest/src/isUnexpected.ts +++ b/sdk/agrifood/agrifood-farming-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ApplicationDataList200Response, ApplicationDataListDefaultResponse, ApplicationDataCreateCascadeDeleteJob202Response, diff --git a/sdk/agrifood/agrifood-farming-rest/src/paginateHelper.ts b/sdk/agrifood/agrifood-farming-rest/src/paginateHelper.ts index e27846d32a90..5d541b4e406d 100644 --- a/sdk/agrifood/agrifood-farming-rest/src/paginateHelper.ts +++ b/sdk/agrifood/agrifood-farming-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/agrifood/agrifood-farming-rest/src/parameters.ts b/sdk/agrifood/agrifood-farming-rest/src/parameters.ts index 7d3b72396b46..cd5b831d1cee 100644 --- a/sdk/agrifood/agrifood-farming-rest/src/parameters.ts +++ b/sdk/agrifood/agrifood-farming-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RequestParameters } from "@azure-rest/core-client"; +import type { ApplicationData, SearchBoundaryQuery, Boundary, diff --git a/sdk/agrifood/agrifood-farming-rest/src/pollingHelper.ts b/sdk/agrifood/agrifood-farming-rest/src/pollingHelper.ts index 14134fd92779..a54710cc33bd 100644 --- a/sdk/agrifood/agrifood-farming-rest/src/pollingHelper.ts +++ b/sdk/agrifood/agrifood-farming-rest/src/pollingHelper.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { CreateHttpPollerOptions, LongRunningOperation, LroResponse, OperationState, SimplePollerLike, - createHttpPoller, } from "@azure/core-lro"; +import { createHttpPoller } from "@azure/core-lro"; /** * 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. diff --git a/sdk/agrifood/agrifood-farming-rest/src/responses.ts b/sdk/agrifood/agrifood-farming-rest/src/responses.ts index 61d202e16944..d6ae5f7ee0a7 100644 --- a/sdk/agrifood/agrifood-farming-rest/src/responses.ts +++ b/sdk/agrifood/agrifood-farming-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse } from "@azure-rest/core-client"; +import type { ApplicationDataListResponseOutput, ErrorResponseOutput, CascadeDeleteJobOutput, diff --git a/sdk/agrifood/agrifood-farming-rest/test/public/farmHeirarchy.spec.ts b/sdk/agrifood/agrifood-farming-rest/test/public/farmHeirarchy.spec.ts index 18cd5ddf3b5d..4d86198e6b2d 100644 --- a/sdk/agrifood/agrifood-farming-rest/test/public/farmHeirarchy.spec.ts +++ b/sdk/agrifood/agrifood-farming-rest/test/public/farmHeirarchy.spec.ts @@ -1,16 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { FarmBeatsClient, - getLongRunningPoller, SatelliteDataIngestionJobOutput, SceneListResponseOutput, - isUnexpected, } from "../../src"; +import { getLongRunningPoller, isUnexpected } from "../../src"; import { createClient, createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { isNode } from "@azure/core-util"; diff --git a/sdk/agrifood/agrifood-farming-rest/test/public/smoke.spec.ts b/sdk/agrifood/agrifood-farming-rest/test/public/smoke.spec.ts index 857ec7f17743..bff7940bb075 100644 --- a/sdk/agrifood/agrifood-farming-rest/test/public/smoke.spec.ts +++ b/sdk/agrifood/agrifood-farming-rest/test/public/smoke.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { FarmBeatsClient, Party, paginate, PartiesListParameters } from "../../src"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { FarmBeatsClient, Party, PartiesListParameters } from "../../src"; +import { paginate } from "../../src"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createClient, createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; const partyId = "contoso-party-js"; const boundaryId = "test-boundary"; diff --git a/sdk/agrifood/agrifood-farming-rest/test/public/utils/recordedClient.ts b/sdk/agrifood/agrifood-farming-rest/test/public/utils/recordedClient.ts index 852c82da2e6b..8f847c5d7551 100644 --- a/sdk/agrifood/agrifood-farming-rest/test/public/utils/recordedClient.ts +++ b/sdk/agrifood/agrifood-farming-rest/test/public/utils/recordedClient.ts @@ -1,12 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder, RecorderStartOptions, env } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, env } from "@azure-tools/test-recorder"; import "./env"; -import FarmBeats, { FarmBeatsClient } from "../../../src"; +import type { FarmBeatsClient } from "../../../src"; +import FarmBeats from "../../../src"; import { createTestCredential } from "@azure-tools/test-credential"; -import { ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; const envSetupForPlayback: Record = { FARMBEATS_ENDPOINT: "https://fakeaccount.farmbeats.azure.net", diff --git a/sdk/ai/ai-inference-rest/README.md b/sdk/ai/ai-inference-rest/README.md index 6063851bc37c..32bbce11888d 100644 --- a/sdk/ai/ai-inference-rest/README.md +++ b/sdk/ai/ai-inference-rest/README.md @@ -477,7 +477,7 @@ if (connectionString) { provider.register(); ``` -In addition, you need to register to use instrumentation for Azure SDK. You must do this before you import any dependency of `@azure-core-tracing` +To use instrumentation for Azure SDK, you need to register it before importing any dependencies from `@azure/core-tracing`, such as `@azure-rest/ai-inference`. ```js import { registerInstrumentations } from "@opentelemetry/instrumentation"; @@ -486,6 +486,8 @@ import { createAzureSdkInstrumentation } from "@azure/opentelemetry-instrumentat registerInstrumentations({ instrumentations: [createAzureSdkInstrumentation()], }); + +import ModelClient from "@azure-rest/ai-inference"; ``` Finally when you are making a call for chat completion, you need to include diff --git a/sdk/ai/ai-inference-rest/review/ai-inference.api.md b/sdk/ai/ai-inference-rest/review/ai-inference.api.md index 25855099df23..a14f2d67c932 100644 --- a/sdk/ai/ai-inference-rest/review/ai-inference.api.md +++ b/sdk/ai/ai-inference-rest/review/ai-inference.api.md @@ -4,16 +4,16 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { ErrorResponse } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { ErrorResponse } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface ChatChoiceOutput { diff --git a/sdk/ai/ai-inference-rest/src/clientDefinitions.ts b/sdk/ai/ai-inference-rest/src/clientDefinitions.ts index 30a610ddf7dc..c6715a15ff90 100644 --- a/sdk/ai/ai-inference-rest/src/clientDefinitions.ts +++ b/sdk/ai/ai-inference-rest/src/clientDefinitions.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { GetChatCompletionsParameters, GetModelInfoParameters, GetEmbeddingsParameters, GetImageEmbeddingsParameters, } from "./parameters.js"; -import { +import type { GetChatCompletions200Response, GetChatCompletionsDefaultResponse, GetModelInfo200Response, @@ -17,7 +17,7 @@ import { GetImageEmbeddings200Response, GetImageEmbeddingsDefaultResponse, } from "./responses.js"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface GetChatCompletions { /** diff --git a/sdk/ai/ai-inference-rest/src/isUnexpected.ts b/sdk/ai/ai-inference-rest/src/isUnexpected.ts index 83508f144601..5e626f0b47f1 100644 --- a/sdk/ai/ai-inference-rest/src/isUnexpected.ts +++ b/sdk/ai/ai-inference-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { GetChatCompletions200Response, GetChatCompletionsDefaultResponse, GetModelInfo200Response, diff --git a/sdk/ai/ai-inference-rest/src/modelClient.ts b/sdk/ai/ai-inference-rest/src/modelClient.ts index ae113de9cd20..fa8dcacf8e05 100644 --- a/sdk/ai/ai-inference-rest/src/modelClient.ts +++ b/sdk/ai/ai-inference-rest/src/modelClient.ts @@ -1,10 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "./logger.js"; -import { TokenCredential, KeyCredential, isKeyCredential } from "@azure/core-auth"; -import { ModelClient } from "./clientDefinitions.js"; +import type { TokenCredential, KeyCredential } from "@azure/core-auth"; +import { isKeyCredential } from "@azure/core-auth"; +import type { ModelClient } from "./clientDefinitions.js"; import { tracingPolicy } from "./tracingPolicy.js"; /** The optional parameters for the client */ diff --git a/sdk/ai/ai-inference-rest/src/parameters.ts b/sdk/ai/ai-inference-rest/src/parameters.ts index 1f957666400b..281d219e0209 100644 --- a/sdk/ai/ai-inference-rest/src/parameters.ts +++ b/sdk/ai/ai-inference-rest/src/parameters.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { ExtraParameters, ChatRequestMessage, ChatCompletionsResponseFormat, diff --git a/sdk/ai/ai-inference-rest/src/responses.ts b/sdk/ai/ai-inference-rest/src/responses.ts index 081142e0feff..c91236499fa2 100644 --- a/sdk/ai/ai-inference-rest/src/responses.ts +++ b/sdk/ai/ai-inference-rest/src/responses.ts @@ -1,9 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; -import { ChatCompletionsOutput, ModelInfoOutput, EmbeddingsResultOutput } from "./outputModels.js"; +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; +import type { + ChatCompletionsOutput, + ModelInfoOutput, + EmbeddingsResultOutput, +} from "./outputModels.js"; /** The request has succeeded. */ export interface GetChatCompletions200Response extends HttpResponse { diff --git a/sdk/ai/ai-inference-rest/src/tracingHelper.ts b/sdk/ai/ai-inference-rest/src/tracingHelper.ts index 1b100e181f6c..af47efd2c2e6 100644 --- a/sdk/ai/ai-inference-rest/src/tracingHelper.ts +++ b/sdk/ai/ai-inference-rest/src/tracingHelper.ts @@ -1,21 +1,21 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TracingSpan } from "@azure/core-tracing"; -import { GetChatCompletionsBodyParam } from "./parameters.js"; -import { +import type { TracingSpan } from "@azure/core-tracing"; +import type { GetChatCompletionsBodyParam } from "./parameters.js"; +import type { ChatRequestAssistantMessage, ChatRequestMessage, ChatRequestSystemMessage, ChatRequestToolMessage, } from "./models.js"; -import { +import type { ChatChoiceOutput, ChatCompletionsOutput, ChatCompletionsToolCallOutput, } from "./outputModels.js"; import { isError } from "@azure/core-util"; -import { PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import type { PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; const INFERENCE_GEN_AI_SYSTEM_NAME = "az.ai.inference"; const isContentRecordingEnabled = () => diff --git a/sdk/ai/ai-inference-rest/src/tracingPolicy.ts b/sdk/ai/ai-inference-rest/src/tracingPolicy.ts index 67117b478df4..2b09d7d9e9b2 100644 --- a/sdk/ai/ai-inference-rest/src/tracingPolicy.ts +++ b/sdk/ai/ai-inference-rest/src/tracingPolicy.ts @@ -16,7 +16,7 @@ import { getSpanName, getRequestBody, } from "./tracingHelper.js"; -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/ai/ai-inference-rest/test/public/browser/streamingChat.spec.ts b/sdk/ai/ai-inference-rest/test/public/browser/streamingChat.spec.ts index ff016ccd8f1c..428f9ef29a72 100644 --- a/sdk/ai/ai-inference-rest/test/public/browser/streamingChat.spec.ts +++ b/sdk/ai/ai-inference-rest/test/public/browser/streamingChat.spec.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { createRecorder, createModelClient } from "../utils/recordedClient.js"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert, beforeEach, afterEach, it, describe } from "vitest"; -import { ModelClient } from "../../../src/index.js"; +import type { ModelClient } from "../../../src/index.js"; describe("chat test suite", () => { let recorder: Recorder; diff --git a/sdk/ai/ai-inference-rest/test/public/chatCompletions.spec.ts b/sdk/ai/ai-inference-rest/test/public/chatCompletions.spec.ts index 2fc55efdfb59..3777f54bf4ea 100644 --- a/sdk/ai/ai-inference-rest/test/public/chatCompletions.spec.ts +++ b/sdk/ai/ai-inference-rest/test/public/chatCompletions.spec.ts @@ -2,16 +2,16 @@ // Licensed under the MIT License. import { createRecorder, createModelClient } from "./utils/recordedClient.js"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert, beforeEach, afterEach, it, describe } from "vitest"; -import { +import type { ChatCompletionsOutput, ModelClient, ChatCompletionsToolCall, ChatMessageContentItem, ChatMessageImageContentItem, - isUnexpected, } from "../../src/index.js"; +import { isUnexpected } from "../../src/index.js"; describe("chat test suite", () => { let recorder: Recorder; diff --git a/sdk/ai/ai-inference-rest/test/public/embeddings.spec.ts b/sdk/ai/ai-inference-rest/test/public/embeddings.spec.ts index ca57e1fa4a1e..61e72a09aea9 100644 --- a/sdk/ai/ai-inference-rest/test/public/embeddings.spec.ts +++ b/sdk/ai/ai-inference-rest/test/public/embeddings.spec.ts @@ -2,14 +2,14 @@ // Licensed under the MIT License. import { createRecorder, createModelClient } from "./utils/recordedClient.js"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert, beforeEach, afterEach, it, describe } from "vitest"; -import { +import type { ModelClient, GetEmbeddingsBodyParam, - isUnexpected, EmbeddingsResultOutput, } from "../../src/index.js"; +import { isUnexpected } from "../../src/index.js"; describe("embeddings test suite", () => { let recorder: Recorder; diff --git a/sdk/ai/ai-inference-rest/test/public/node/imageChat.spec.ts b/sdk/ai/ai-inference-rest/test/public/node/imageChat.spec.ts index 3c313e564765..fca26ab5d1d2 100644 --- a/sdk/ai/ai-inference-rest/test/public/node/imageChat.spec.ts +++ b/sdk/ai/ai-inference-rest/test/public/node/imageChat.spec.ts @@ -2,9 +2,10 @@ // Licensed under the MIT License. import { createRecorder, createModelClient } from "../utils/recordedClient.js"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert, beforeEach, afterEach, it, describe } from "vitest"; -import { ModelClient, isUnexpected, ChatCompletionsOutput } from "../../../src/index.js"; +import type { ModelClient, ChatCompletionsOutput } from "../../../src/index.js"; +import { isUnexpected } from "../../../src/index.js"; import fs from "fs"; import path from "path"; diff --git a/sdk/ai/ai-inference-rest/test/public/node/streamingChat.spec.ts b/sdk/ai/ai-inference-rest/test/public/node/streamingChat.spec.ts index 1da0bea777ba..81feddd60211 100644 --- a/sdk/ai/ai-inference-rest/test/public/node/streamingChat.spec.ts +++ b/sdk/ai/ai-inference-rest/test/public/node/streamingChat.spec.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { createRecorder, createModelClient } from "../utils/recordedClient.js"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { createSseStream } from "@azure/core-sse"; import { assert, beforeEach, afterEach, it, describe } from "vitest"; -import { ModelClient } from "../../../src/index.js"; +import type { ModelClient } from "../../../src/index.js"; describe("chat test suite", () => { let recorder: Recorder; diff --git a/sdk/ai/ai-inference-rest/test/public/tracing.spec.ts b/sdk/ai/ai-inference-rest/test/public/tracing.spec.ts index 274691f6f434..356733537fe8 100644 --- a/sdk/ai/ai-inference-rest/test/public/tracing.spec.ts +++ b/sdk/ai/ai-inference-rest/test/public/tracing.spec.ts @@ -2,19 +2,20 @@ // Licensed under the MIT License. import { createRecorder, createModelClient } from "./utils/recordedClient.js"; -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { assert, beforeEach, afterEach, it, describe } from "vitest"; import { context } from "@opentelemetry/api"; -import { +import type { ChatCompletionsOutput, ChatRequestMessage, ChatRequestToolMessage, GetChatCompletions200Response, GetChatCompletionsDefaultResponse, - isUnexpected, ModelClient, } from "../../src/index.js"; -import { +import { isUnexpected } from "../../src/index.js"; +import type { AddEventOptions, Instrumenter, InstrumenterSpanOptions, @@ -22,8 +23,8 @@ import { TracingContext, TracingSpan, TracingSpanOptions, - useInstrumenter, } from "@azure/core-tracing"; +import { useInstrumenter } from "@azure/core-tracing"; describe("tracing test suite", () => { let recorder: Recorder; diff --git a/sdk/ai/ai-inference-rest/test/public/utils/recordedClient.ts b/sdk/ai/ai-inference-rest/test/public/utils/recordedClient.ts index 9aac5c78524c..7aef1ccd4f26 100644 --- a/sdk/ai/ai-inference-rest/test/public/utils/recordedClient.ts +++ b/sdk/ai/ai-inference-rest/test/public/utils/recordedClient.ts @@ -1,16 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - Recorder, - RecorderStartOptions, - VitestTestContext, - assertEnvironmentVariable, -} from "@azure-tools/test-recorder"; +import type { RecorderStartOptions, VitestTestContext } from "@azure-tools/test-recorder"; +import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { createTestCredential } from "@azure-tools/test-credential"; -import { ClientOptions } from "@azure-rest/core-client"; -import createClient, { ModelClient } from "../../../src/index.js"; -import { DeploymentType } from "../types.js"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { ModelClient } from "../../../src/index.js"; +import createClient from "../../../src/index.js"; +import type { DeploymentType } from "../types.js"; import { AzureKeyCredential } from "@azure/core-auth"; const envSetupForPlayback: Record = { diff --git a/sdk/anomalydetector/ai-anomaly-detector-rest/review/ai-anomaly-detector.api.md b/sdk/anomalydetector/ai-anomaly-detector-rest/review/ai-anomaly-detector.api.md index 9fc01e2a7bf9..f0f6629d8029 100644 --- a/sdk/anomalydetector/ai-anomaly-detector-rest/review/ai-anomaly-detector.api.md +++ b/sdk/anomalydetector/ai-anomaly-detector-rest/review/ai-anomaly-detector.api.md @@ -4,15 +4,15 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; // @public export interface AlignPolicy { diff --git a/sdk/anomalydetector/ai-anomaly-detector-rest/src/anomalyDetectorRest.ts b/sdk/anomalydetector/ai-anomaly-detector-rest/src/anomalyDetectorRest.ts index 26a1b5e33c2e..59a5a074a3ba 100644 --- a/sdk/anomalydetector/ai-anomaly-detector-rest/src/anomalyDetectorRest.ts +++ b/sdk/anomalydetector/ai-anomaly-detector-rest/src/anomalyDetectorRest.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; -import { KeyCredential } from "@azure/core-auth"; -import { AnomalyDetectorRestClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { KeyCredential } from "@azure/core-auth"; +import type { AnomalyDetectorRestClient } from "./clientDefinitions"; export interface AnomalyDetectorRestClientOptions extends ClientOptions { ApiVersion?: string; diff --git a/sdk/anomalydetector/ai-anomaly-detector-rest/src/clientDefinitions.ts b/sdk/anomalydetector/ai-anomaly-detector-rest/src/clientDefinitions.ts index 39e1834280d5..8bc4fef6ab60 100644 --- a/sdk/anomalydetector/ai-anomaly-detector-rest/src/clientDefinitions.ts +++ b/sdk/anomalydetector/ai-anomaly-detector-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { DetectUnivariateEntireSeriesParameters, DetectUnivariateLastPointParameters, DetectUnivariateChangePointParameters, @@ -13,7 +13,7 @@ import { DetectMultivariateBatchAnomalyParameters, DetectMultivariateLastAnomalyParameters, } from "./parameters"; -import { +import type { DetectUnivariateEntireSeries200Response, DetectUnivariateEntireSeriesDefaultResponse, DetectUnivariateLastPoint200Response, @@ -35,7 +35,7 @@ import { DetectMultivariateLastAnomaly200Response, DetectMultivariateLastAnomalyDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface DetectUnivariateEntireSeries { /** diff --git a/sdk/anomalydetector/ai-anomaly-detector-rest/src/isUnexpected.ts b/sdk/anomalydetector/ai-anomaly-detector-rest/src/isUnexpected.ts index 115d555067bd..f35681d0c351 100644 --- a/sdk/anomalydetector/ai-anomaly-detector-rest/src/isUnexpected.ts +++ b/sdk/anomalydetector/ai-anomaly-detector-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { DetectUnivariateEntireSeries200Response, DetectUnivariateEntireSeriesDefaultResponse, DetectUnivariateLastPoint200Response, diff --git a/sdk/anomalydetector/ai-anomaly-detector-rest/src/paginateHelper.ts b/sdk/anomalydetector/ai-anomaly-detector-rest/src/paginateHelper.ts index 4b158d7c4983..d45e90821209 100644 --- a/sdk/anomalydetector/ai-anomaly-detector-rest/src/paginateHelper.ts +++ b/sdk/anomalydetector/ai-anomaly-detector-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/anomalydetector/ai-anomaly-detector-rest/src/parameters.ts b/sdk/anomalydetector/ai-anomaly-detector-rest/src/parameters.ts index f8fe5d1d58e4..a9b7dde09f02 100644 --- a/sdk/anomalydetector/ai-anomaly-detector-rest/src/parameters.ts +++ b/sdk/anomalydetector/ai-anomaly-detector-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RequestParameters } from "@azure-rest/core-client"; +import type { UnivariateDetectionOptions, UnivariateChangePointDetectionOptions, ModelInfo, diff --git a/sdk/anomalydetector/ai-anomaly-detector-rest/src/responses.ts b/sdk/anomalydetector/ai-anomaly-detector-rest/src/responses.ts index ee1b07da8065..65bd21e880cd 100644 --- a/sdk/anomalydetector/ai-anomaly-detector-rest/src/responses.ts +++ b/sdk/anomalydetector/ai-anomaly-detector-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse } from "@azure-rest/core-client"; +import type { UnivariateEntireDetectionResultOutput, AnomalyDetectorErrorOutput, UnivariateLastDetectionResultOutput, diff --git a/sdk/anomalydetector/ai-anomaly-detector-rest/test/public/anomalydetector.spec.ts b/sdk/anomalydetector/ai-anomaly-detector-rest/test/public/anomalydetector.spec.ts index f3cab3c3c3a7..f60e4b1cc2a6 100644 --- a/sdk/anomalydetector/ai-anomaly-detector-rest/test/public/anomalydetector.spec.ts +++ b/sdk/anomalydetector/ai-anomaly-detector-rest/test/public/anomalydetector.spec.ts @@ -1,15 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { isPlaybackMode, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { +import type { Context } from "mocha"; +import type { AnomalyDetectorRestClient, - isUnexpected, TrainMultivariateModelParameters, DetectMultivariateBatchAnomalyParameters, } from "../../src"; +import { isUnexpected } from "../../src"; import { createClient, createRecorder } from "./utils/recordedClient"; describe("AnomalyDetectorClient", () => { diff --git a/sdk/anomalydetector/ai-anomaly-detector-rest/test/public/utils/recordedClient.ts b/sdk/anomalydetector/ai-anomaly-detector-rest/test/public/utils/recordedClient.ts index 2f9973f6d6ed..d5e43c8b5878 100644 --- a/sdk/anomalydetector/ai-anomaly-detector-rest/test/public/utils/recordedClient.ts +++ b/sdk/anomalydetector/ai-anomaly-detector-rest/test/public/utils/recordedClient.ts @@ -1,14 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { - Recorder, - RecorderStartOptions, - assertEnvironmentVariable, -} from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; import "./env"; -import AnomalyDetector, { AnomalyDetectorRestClient } from "../../../src"; +import type { AnomalyDetectorRestClient } from "../../../src"; +import AnomalyDetector from "../../../src"; import { AzureKeyCredential } from "@azure/core-auth"; const envSetupForPlayback: Record = { diff --git a/sdk/apimanagement/api-management-custom-widgets-scaffolder/bin/execute.cjs b/sdk/apimanagement/api-management-custom-widgets-scaffolder/bin/execute.cjs index 0d74212aa7fe..c0d163a89c1d 100755 --- a/sdk/apimanagement/api-management-custom-widgets-scaffolder/bin/execute.cjs +++ b/sdk/apimanagement/api-management-custom-widgets-scaffolder/bin/execute.cjs @@ -1,4 +1,3 @@ -#!/usr/bin/env node 'use strict'; var Parser = require('yargs-parser'); @@ -966,6 +965,8 @@ async function generateProject(widgetConfig, deploymentConfig, options = {}) { return; } +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. const log = console.log; const white = (msg) => log(chalk.white(msg)); const green = (msg) => log(chalk.green(msg)); diff --git a/sdk/apimanagement/api-management-custom-widgets-scaffolder/bin/execute.cjs.map b/sdk/apimanagement/api-management-custom-widgets-scaffolder/bin/execute.cjs.map index f2a0f3f989aa..8466256d09e9 100644 --- a/sdk/apimanagement/api-management-custom-widgets-scaffolder/bin/execute.cjs.map +++ b/sdk/apimanagement/api-management-custom-widgets-scaffolder/bin/execute.cjs.map @@ -1 +1 @@ -{"version":3,"file":"execute.cjs","sources":["../dist/esm/scaffolding.js","../dist/esm/bin/execute-configs.js","../../../../node_modules/.pnpm/yargs@17.7.2/node_modules/yargs/build/lib/yerror.js","../../../../node_modules/.pnpm/yargs@17.7.2/node_modules/yargs/build/lib/utils/process-argv.js","../../../../node_modules/.pnpm/cliui@8.0.1/node_modules/cliui/build/lib/index.js","../../../../node_modules/.pnpm/cliui@8.0.1/node_modules/cliui/build/lib/string-utils.js","../../../../node_modules/.pnpm/cliui@8.0.1/node_modules/cliui/index.mjs","../../../../node_modules/.pnpm/escalade@3.2.0/node_modules/escalade/sync/index.mjs","../../../../node_modules/.pnpm/y18n@5.0.8/node_modules/y18n/build/lib/platform-shims/node.js","../../../../node_modules/.pnpm/y18n@5.0.8/node_modules/y18n/build/lib/index.js","../../../../node_modules/.pnpm/y18n@5.0.8/node_modules/y18n/index.mjs","../../../../node_modules/.pnpm/yargs@17.7.2/node_modules/yargs/lib/platform-shims/esm.mjs","../dist/esm/bin/execute-helpers.js","../dist/esm/sourceDir.js","../dist/esm/getTemplates.js","../dist/esm/generateProject.js","../dist/esm/bin/execute.js"],"sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n/**\n * Unique identifier under which is specified which port to use for injecting locally hosted custom widget to a running DevPortal instance.\n */\nexport const OVERRIDE_PORT_KEY = \"MS_APIM_CW_localhost_port\";\n/**\n * Default port for running local dev server on.\n */\nexport const OVERRIDE_DEFAULT_PORT = 3000;\n/** List of all supported technologies to scaffold a widget in. */\nexport const TECHNOLOGIES = [\"typescript\", \"react\", \"vue\"];\n/**\n * Converts user defined name of a custom widget to a unique ID, which is in context of Dev Portal known as \"name\".\n * Prefix \"cw-\" to avoid conflicts with existing widgets.\n *\n * @param displayName - User defined name of the custom widget.\n */\nexport const displayNameToName = (displayName) => encodeURIComponent((\"cw-\" + displayName)\n .normalize(\"NFD\")\n .toLowerCase()\n .replace(/[\\u0300-\\u036f]/g, \"\")\n .replace(/[^a-z0-9-]/g, \"-\"));\n/**\n * Returns name of the folder for widget project.\n *\n * @param name - name of the widget\n */\nexport const widgetFolderName = (name) => `azure-api-management-widget-${name}`;\n//# sourceMappingURL=scaffolding.js.map","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { TECHNOLOGIES, } from \"../scaffolding.js\";\nexport const fieldIdToName = {\n displayName: \"Widget display name\",\n technology: \"Technology\",\n iconUrl: \"iconUrl\",\n resourceId: \"Azure API Management resource ID (following format: subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service/)\",\n managementApiEndpoint: \"Management API hostname\",\n apiVersion: \"Management API version\",\n openUrl: \"Developer portal URL\",\n configAdvancedTenantId: \"Tenant ID\",\n configAdvancedRedirectUri: \"Redirect URI\",\n};\nexport const prefixUrlProtocol = (value) => /https?:\\/\\//.test(value) ? value : `https://${value}`;\nconst validateRequired = (name, msg = `The “${name}” parameter is required.`) => (input) => (input != null && input !== \"\") || msg;\nconst validateUrl = (name, msg = (input) => `Provided “${name}” parameter value (“${prefixUrlProtocol(input)}”) isn’t a valid URL. Use the correct URL format, e.g., https://contoso.com.`) => (input) => {\n try {\n new URL(prefixUrlProtocol(input));\n return true;\n }\n catch (e) {\n return msg(prefixUrlProtocol(input));\n }\n};\nexport const validateWidgetConfig = {\n displayName: validateRequired(fieldIdToName.displayName),\n technology: (input) => {\n const required = validateRequired(fieldIdToName.technology)(input);\n if (required !== true)\n return required;\n if (TECHNOLOGIES.includes(input)) {\n return true;\n }\n else {\n return (\"Provided “technology” parameter value isn’t correct. Use one of the following: \" +\n TECHNOLOGIES.join(\", \"));\n }\n },\n};\nexport const validateDeployConfig = {\n resourceId: (input) => {\n const required = validateRequired(fieldIdToName.resourceId)(input);\n if (required !== true)\n return required;\n const regex = /^\\/?subscriptions\\/[^/]+\\/resourceGroups\\/[^/]+\\/providers\\/Microsoft\\.ApiManagement\\/service\\/[^/]+\\/?$/;\n return input === \"test\" || regex.test(input)\n ? true\n : \"Resource ID needs to be a valid Azure resource ID. For example, subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-group/providers/Microsoft.ApiManagement/service/contoso-apis.\";\n },\n managementApiEndpoint: (input) => validateRequired(fieldIdToName.managementApiEndpoint)(input),\n};\nexport const validateMiscConfig = {\n openUrl: (input) => {\n if (!input)\n return true;\n return validateUrl(fieldIdToName.openUrl)(input);\n },\n configAdvancedTenantId: () => {\n return true;\n },\n configAdvancedRedirectUri: (input) => {\n if (!input)\n return true;\n return validateUrl(fieldIdToName.openUrl)(input);\n },\n};\nexport const promptWidgetConfig = async (partial) => {\n const inquirerImport = await import(\"inquirer\");\n const inquirer = inquirerImport.default;\n return inquirer.prompt([\n {\n name: \"displayName\",\n type: \"input\",\n message: fieldIdToName.displayName,\n validate: validateWidgetConfig.displayName,\n },\n {\n name: \"technology\",\n type: \"list\",\n message: fieldIdToName.technology,\n choices: [\n { name: \"React\", value: \"react\" },\n { name: \"Vue\", value: \"vue\" },\n { name: \"TypeScript\", value: \"typescript\" },\n ],\n },\n ], partial);\n};\nexport const promptServiceInformation = async (partial) => {\n const inquirerImport = await import(\"inquirer\");\n const inquirer = inquirerImport.default;\n return inquirer.prompt([\n {\n name: \"resourceId\",\n type: \"input\",\n message: fieldIdToName.resourceId,\n validate: validateDeployConfig.resourceId,\n },\n {\n name: \"managementApiEndpoint\",\n type: \"list\",\n message: fieldIdToName.managementApiEndpoint,\n choices: [\n {\n name: \"management.azure.com (if you're not sure what to select, use this option)\",\n value: \"management.azure.com\",\n },\n { name: \"management.usgovcloudapi.net\", value: \"management.usgovcloudapi.net\" },\n { name: \"management.chinacloudapi.cn\", value: \"management.chinacloudapi.cn\" },\n ],\n transformer: prefixUrlProtocol,\n validate: validateDeployConfig.managementApiEndpoint,\n },\n {\n name: \"apiVersion\",\n type: \"input\",\n message: fieldIdToName.apiVersion + \" (optional; e.g., 2021-08-01)\",\n },\n ], partial);\n};\nexport const promptMiscConfig = async (partial) => {\n const inquirerImport = await import(\"inquirer\");\n const inquirer = inquirerImport.default;\n return inquirer.prompt([\n {\n name: \"openUrl\",\n type: \"input\",\n message: fieldIdToName.openUrl +\n \" for widget development and testing (optional; e.g., https://contoso.developer.azure-api.net/ or http://localhost:8080)\",\n transformer: prefixUrlProtocol,\n validate: validateMiscConfig.openUrl,\n },\n {\n name: \"configAdvancedTenantId\",\n type: \"input\",\n message: fieldIdToName.configAdvancedTenantId +\n \" to be used in Azure Identity InteractiveBrowserCredential class (optional)\",\n validate: validateMiscConfig.openUrl,\n },\n {\n name: \"configAdvancedRedirectUri\",\n type: \"input\",\n message: fieldIdToName.configAdvancedRedirectUri +\n \" to be used in Azure Identity InteractiveBrowserCredential class (optional; default is http://localhost:1337)\",\n validate: validateMiscConfig.openUrl,\n },\n ], partial);\n};\n//# sourceMappingURL=execute-configs.js.map","export class YError extends Error {\n constructor(msg) {\n super(msg || 'yargs error');\n this.name = 'YError';\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, YError);\n }\n }\n}\n","function getProcessArgvBinIndex() {\n if (isBundledElectronApp())\n return 0;\n return 1;\n}\nfunction isBundledElectronApp() {\n return isElectronApp() && !process.defaultApp;\n}\nfunction isElectronApp() {\n return !!process.versions.electron;\n}\nexport function hideBin(argv) {\n return argv.slice(getProcessArgvBinIndex() + 1);\n}\nexport function getProcessArgvBin() {\n return process.argv[getProcessArgvBinIndex()];\n}\n","'use strict';\nconst align = {\n right: alignRight,\n center: alignCenter\n};\nconst top = 0;\nconst right = 1;\nconst bottom = 2;\nconst left = 3;\nexport class UI {\n constructor(opts) {\n var _a;\n this.width = opts.width;\n this.wrap = (_a = opts.wrap) !== null && _a !== void 0 ? _a : true;\n this.rows = [];\n }\n span(...args) {\n const cols = this.div(...args);\n cols.span = true;\n }\n resetOutput() {\n this.rows = [];\n }\n div(...args) {\n if (args.length === 0) {\n this.div('');\n }\n if (this.wrap && this.shouldApplyLayoutDSL(...args) && typeof args[0] === 'string') {\n return this.applyLayoutDSL(args[0]);\n }\n const cols = args.map(arg => {\n if (typeof arg === 'string') {\n return this.colFromString(arg);\n }\n return arg;\n });\n this.rows.push(cols);\n return cols;\n }\n shouldApplyLayoutDSL(...args) {\n return args.length === 1 && typeof args[0] === 'string' &&\n /[\\t\\n]/.test(args[0]);\n }\n applyLayoutDSL(str) {\n const rows = str.split('\\n').map(row => row.split('\\t'));\n let leftColumnWidth = 0;\n // simple heuristic for layout, make sure the\n // second column lines up along the left-hand.\n // don't allow the first column to take up more\n // than 50% of the screen.\n rows.forEach(columns => {\n if (columns.length > 1 && mixin.stringWidth(columns[0]) > leftColumnWidth) {\n leftColumnWidth = Math.min(Math.floor(this.width * 0.5), mixin.stringWidth(columns[0]));\n }\n });\n // generate a table:\n // replacing ' ' with padding calculations.\n // using the algorithmically generated width.\n rows.forEach(columns => {\n this.div(...columns.map((r, i) => {\n return {\n text: r.trim(),\n padding: this.measurePadding(r),\n width: (i === 0 && columns.length > 1) ? leftColumnWidth : undefined\n };\n }));\n });\n return this.rows[this.rows.length - 1];\n }\n colFromString(text) {\n return {\n text,\n padding: this.measurePadding(text)\n };\n }\n measurePadding(str) {\n // measure padding without ansi escape codes\n const noAnsi = mixin.stripAnsi(str);\n return [0, noAnsi.match(/\\s*$/)[0].length, 0, noAnsi.match(/^\\s*/)[0].length];\n }\n toString() {\n const lines = [];\n this.rows.forEach(row => {\n this.rowToString(row, lines);\n });\n // don't display any lines with the\n // hidden flag set.\n return lines\n .filter(line => !line.hidden)\n .map(line => line.text)\n .join('\\n');\n }\n rowToString(row, lines) {\n this.rasterize(row).forEach((rrow, r) => {\n let str = '';\n rrow.forEach((col, c) => {\n const { width } = row[c]; // the width with padding.\n const wrapWidth = this.negatePadding(row[c]); // the width without padding.\n let ts = col; // temporary string used during alignment/padding.\n if (wrapWidth > mixin.stringWidth(col)) {\n ts += ' '.repeat(wrapWidth - mixin.stringWidth(col));\n }\n // align the string within its column.\n if (row[c].align && row[c].align !== 'left' && this.wrap) {\n const fn = align[row[c].align];\n ts = fn(ts, wrapWidth);\n if (mixin.stringWidth(ts) < wrapWidth) {\n ts += ' '.repeat((width || 0) - mixin.stringWidth(ts) - 1);\n }\n }\n // apply border and padding to string.\n const padding = row[c].padding || [0, 0, 0, 0];\n if (padding[left]) {\n str += ' '.repeat(padding[left]);\n }\n str += addBorder(row[c], ts, '| ');\n str += ts;\n str += addBorder(row[c], ts, ' |');\n if (padding[right]) {\n str += ' '.repeat(padding[right]);\n }\n // if prior row is span, try to render the\n // current row on the prior line.\n if (r === 0 && lines.length > 0) {\n str = this.renderInline(str, lines[lines.length - 1]);\n }\n });\n // remove trailing whitespace.\n lines.push({\n text: str.replace(/ +$/, ''),\n span: row.span\n });\n });\n return lines;\n }\n // if the full 'source' can render in\n // the target line, do so.\n renderInline(source, previousLine) {\n const match = source.match(/^ */);\n const leadingWhitespace = match ? match[0].length : 0;\n const target = previousLine.text;\n const targetTextWidth = mixin.stringWidth(target.trimRight());\n if (!previousLine.span) {\n return source;\n }\n // if we're not applying wrapping logic,\n // just always append to the span.\n if (!this.wrap) {\n previousLine.hidden = true;\n return target + source;\n }\n if (leadingWhitespace < targetTextWidth) {\n return source;\n }\n previousLine.hidden = true;\n return target.trimRight() + ' '.repeat(leadingWhitespace - targetTextWidth) + source.trimLeft();\n }\n rasterize(row) {\n const rrows = [];\n const widths = this.columnWidths(row);\n let wrapped;\n // word wrap all columns, and create\n // a data-structure that is easy to rasterize.\n row.forEach((col, c) => {\n // leave room for left and right padding.\n col.width = widths[c];\n if (this.wrap) {\n wrapped = mixin.wrap(col.text, this.negatePadding(col), { hard: true }).split('\\n');\n }\n else {\n wrapped = col.text.split('\\n');\n }\n if (col.border) {\n wrapped.unshift('.' + '-'.repeat(this.negatePadding(col) + 2) + '.');\n wrapped.push(\"'\" + '-'.repeat(this.negatePadding(col) + 2) + \"'\");\n }\n // add top and bottom padding.\n if (col.padding) {\n wrapped.unshift(...new Array(col.padding[top] || 0).fill(''));\n wrapped.push(...new Array(col.padding[bottom] || 0).fill(''));\n }\n wrapped.forEach((str, r) => {\n if (!rrows[r]) {\n rrows.push([]);\n }\n const rrow = rrows[r];\n for (let i = 0; i < c; i++) {\n if (rrow[i] === undefined) {\n rrow.push('');\n }\n }\n rrow.push(str);\n });\n });\n return rrows;\n }\n negatePadding(col) {\n let wrapWidth = col.width || 0;\n if (col.padding) {\n wrapWidth -= (col.padding[left] || 0) + (col.padding[right] || 0);\n }\n if (col.border) {\n wrapWidth -= 4;\n }\n return wrapWidth;\n }\n columnWidths(row) {\n if (!this.wrap) {\n return row.map(col => {\n return col.width || mixin.stringWidth(col.text);\n });\n }\n let unset = row.length;\n let remainingWidth = this.width;\n // column widths can be set in config.\n const widths = row.map(col => {\n if (col.width) {\n unset--;\n remainingWidth -= col.width;\n return col.width;\n }\n return undefined;\n });\n // any unset widths should be calculated.\n const unsetWidth = unset ? Math.floor(remainingWidth / unset) : 0;\n return widths.map((w, i) => {\n if (w === undefined) {\n return Math.max(unsetWidth, _minWidth(row[i]));\n }\n return w;\n });\n }\n}\nfunction addBorder(col, ts, style) {\n if (col.border) {\n if (/[.']-+[.']/.test(ts)) {\n return '';\n }\n if (ts.trim().length !== 0) {\n return style;\n }\n return ' ';\n }\n return '';\n}\n// calculates the minimum width of\n// a column, based on padding preferences.\nfunction _minWidth(col) {\n const padding = col.padding || [];\n const minWidth = 1 + (padding[left] || 0) + (padding[right] || 0);\n if (col.border) {\n return minWidth + 4;\n }\n return minWidth;\n}\nfunction getWindowWidth() {\n /* istanbul ignore next: depends on terminal */\n if (typeof process === 'object' && process.stdout && process.stdout.columns) {\n return process.stdout.columns;\n }\n return 80;\n}\nfunction alignRight(str, width) {\n str = str.trim();\n const strWidth = mixin.stringWidth(str);\n if (strWidth < width) {\n return ' '.repeat(width - strWidth) + str;\n }\n return str;\n}\nfunction alignCenter(str, width) {\n str = str.trim();\n const strWidth = mixin.stringWidth(str);\n /* istanbul ignore next */\n if (strWidth >= width) {\n return str;\n }\n return ' '.repeat((width - strWidth) >> 1) + str;\n}\nlet mixin;\nexport function cliui(opts, _mixin) {\n mixin = _mixin;\n return new UI({\n width: (opts === null || opts === void 0 ? void 0 : opts.width) || getWindowWidth(),\n wrap: opts === null || opts === void 0 ? void 0 : opts.wrap\n });\n}\n","// Minimal replacement for ansi string helpers \"wrap-ansi\" and \"strip-ansi\".\n// to facilitate ESM and Deno modules.\n// TODO: look at porting https://www.npmjs.com/package/wrap-ansi to ESM.\n// The npm application\n// Copyright (c) npm, Inc. and Contributors\n// Licensed on the terms of The Artistic License 2.0\n// See: https://github.com/npm/cli/blob/4c65cd952bc8627811735bea76b9b110cc4fc80e/lib/utils/ansi-trim.js\nconst ansi = new RegExp('\\x1b(?:\\\\[(?:\\\\d+[ABCDEFGJKSTm]|\\\\d+;\\\\d+[Hfm]|' +\n '\\\\d+;\\\\d+;\\\\d+m|6n|s|u|\\\\?25[lh])|\\\\w)', 'g');\nexport function stripAnsi(str) {\n return str.replace(ansi, '');\n}\nexport function wrap(str, width) {\n const [start, end] = str.match(ansi) || ['', ''];\n str = stripAnsi(str);\n let wrapped = '';\n for (let i = 0; i < str.length; i++) {\n if (i !== 0 && (i % width) === 0) {\n wrapped += '\\n';\n }\n wrapped += str.charAt(i);\n }\n if (start && end) {\n wrapped = `${start}${wrapped}${end}`;\n }\n return wrapped;\n}\n","// Bootstrap cliui with CommonJS dependencies:\nimport { cliui } from './build/lib/index.js'\nimport { wrap, stripAnsi } from './build/lib/string-utils.js'\n\nexport default function ui (opts) {\n return cliui(opts, {\n stringWidth: (str) => {\n return [...str].length\n },\n stripAnsi,\n wrap\n })\n}\n","import { dirname, resolve } from 'path';\nimport { readdirSync, statSync } from 'fs';\n\nexport default function (start, callback) {\n\tlet dir = resolve('.', start);\n\tlet tmp, stats = statSync(dir);\n\n\tif (!stats.isDirectory()) {\n\t\tdir = dirname(dir);\n\t}\n\n\twhile (true) {\n\t\ttmp = callback(dir, readdirSync(dir));\n\t\tif (tmp) return resolve(dir, tmp);\n\t\tdir = dirname(tmp = dir);\n\t\tif (tmp === dir) break;\n\t}\n}\n","import { readFileSync, statSync, writeFile } from 'fs';\nimport { format } from 'util';\nimport { resolve } from 'path';\nexport default {\n fs: {\n readFileSync,\n writeFile\n },\n format,\n resolve,\n exists: (file) => {\n try {\n return statSync(file).isFile();\n }\n catch (err) {\n return false;\n }\n }\n};\n","let shim;\nclass Y18N {\n constructor(opts) {\n // configurable options.\n opts = opts || {};\n this.directory = opts.directory || './locales';\n this.updateFiles = typeof opts.updateFiles === 'boolean' ? opts.updateFiles : true;\n this.locale = opts.locale || 'en';\n this.fallbackToLanguage = typeof opts.fallbackToLanguage === 'boolean' ? opts.fallbackToLanguage : true;\n // internal stuff.\n this.cache = Object.create(null);\n this.writeQueue = [];\n }\n __(...args) {\n if (typeof arguments[0] !== 'string') {\n return this._taggedLiteral(arguments[0], ...arguments);\n }\n const str = args.shift();\n let cb = function () { }; // start with noop.\n if (typeof args[args.length - 1] === 'function')\n cb = args.pop();\n cb = cb || function () { }; // noop.\n if (!this.cache[this.locale])\n this._readLocaleFile();\n // we've observed a new string, update the language file.\n if (!this.cache[this.locale][str] && this.updateFiles) {\n this.cache[this.locale][str] = str;\n // include the current directory and locale,\n // since these values could change before the\n // write is performed.\n this._enqueueWrite({\n directory: this.directory,\n locale: this.locale,\n cb\n });\n }\n else {\n cb();\n }\n return shim.format.apply(shim.format, [this.cache[this.locale][str] || str].concat(args));\n }\n __n() {\n const args = Array.prototype.slice.call(arguments);\n const singular = args.shift();\n const plural = args.shift();\n const quantity = args.shift();\n let cb = function () { }; // start with noop.\n if (typeof args[args.length - 1] === 'function')\n cb = args.pop();\n if (!this.cache[this.locale])\n this._readLocaleFile();\n let str = quantity === 1 ? singular : plural;\n if (this.cache[this.locale][singular]) {\n const entry = this.cache[this.locale][singular];\n str = entry[quantity === 1 ? 'one' : 'other'];\n }\n // we've observed a new string, update the language file.\n if (!this.cache[this.locale][singular] && this.updateFiles) {\n this.cache[this.locale][singular] = {\n one: singular,\n other: plural\n };\n // include the current directory and locale,\n // since these values could change before the\n // write is performed.\n this._enqueueWrite({\n directory: this.directory,\n locale: this.locale,\n cb\n });\n }\n else {\n cb();\n }\n // if a %d placeholder is provided, add quantity\n // to the arguments expanded by util.format.\n const values = [str];\n if (~str.indexOf('%d'))\n values.push(quantity);\n return shim.format.apply(shim.format, values.concat(args));\n }\n setLocale(locale) {\n this.locale = locale;\n }\n getLocale() {\n return this.locale;\n }\n updateLocale(obj) {\n if (!this.cache[this.locale])\n this._readLocaleFile();\n for (const key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n this.cache[this.locale][key] = obj[key];\n }\n }\n }\n _taggedLiteral(parts, ...args) {\n let str = '';\n parts.forEach(function (part, i) {\n const arg = args[i + 1];\n str += part;\n if (typeof arg !== 'undefined') {\n str += '%s';\n }\n });\n return this.__.apply(this, [str].concat([].slice.call(args, 1)));\n }\n _enqueueWrite(work) {\n this.writeQueue.push(work);\n if (this.writeQueue.length === 1)\n this._processWriteQueue();\n }\n _processWriteQueue() {\n const _this = this;\n const work = this.writeQueue[0];\n // destructure the enqueued work.\n const directory = work.directory;\n const locale = work.locale;\n const cb = work.cb;\n const languageFile = this._resolveLocaleFile(directory, locale);\n const serializedLocale = JSON.stringify(this.cache[locale], null, 2);\n shim.fs.writeFile(languageFile, serializedLocale, 'utf-8', function (err) {\n _this.writeQueue.shift();\n if (_this.writeQueue.length > 0)\n _this._processWriteQueue();\n cb(err);\n });\n }\n _readLocaleFile() {\n let localeLookup = {};\n const languageFile = this._resolveLocaleFile(this.directory, this.locale);\n try {\n // When using a bundler such as webpack, readFileSync may not be defined:\n if (shim.fs.readFileSync) {\n localeLookup = JSON.parse(shim.fs.readFileSync(languageFile, 'utf-8'));\n }\n }\n catch (err) {\n if (err instanceof SyntaxError) {\n err.message = 'syntax error in ' + languageFile;\n }\n if (err.code === 'ENOENT')\n localeLookup = {};\n else\n throw err;\n }\n this.cache[this.locale] = localeLookup;\n }\n _resolveLocaleFile(directory, locale) {\n let file = shim.resolve(directory, './', locale + '.json');\n if (this.fallbackToLanguage && !this._fileExistsSync(file) && ~locale.lastIndexOf('_')) {\n // attempt fallback to language only\n const languageFile = shim.resolve(directory, './', locale.split('_')[0] + '.json');\n if (this._fileExistsSync(languageFile))\n file = languageFile;\n }\n return file;\n }\n _fileExistsSync(file) {\n return shim.exists(file);\n }\n}\nexport function y18n(opts, _shim) {\n shim = _shim;\n const y18n = new Y18N(opts);\n return {\n __: y18n.__.bind(y18n),\n __n: y18n.__n.bind(y18n),\n setLocale: y18n.setLocale.bind(y18n),\n getLocale: y18n.getLocale.bind(y18n),\n updateLocale: y18n.updateLocale.bind(y18n),\n locale: y18n.locale\n };\n}\n","import shim from './build/lib/platform-shims/node.js'\nimport { y18n as _y18n } from './build/lib/index.js'\n\nconst y18n = (opts) => {\n return _y18n(opts, shim)\n}\n\nexport default y18n\n","'use strict'\n\nimport { notStrictEqual, strictEqual } from 'assert'\nimport cliui from 'cliui'\nimport escalade from 'escalade/sync'\nimport { inspect } from 'util'\nimport { readFileSync } from 'fs'\nimport { fileURLToPath } from 'url';\nimport Parser from 'yargs-parser'\nimport { basename, dirname, extname, relative, resolve } from 'path'\nimport { getProcessArgvBin } from '../../build/lib/utils/process-argv.js'\nimport { YError } from '../../build/lib/yerror.js'\nimport y18n from 'y18n'\n\nconst REQUIRE_ERROR = 'require is not supported by ESM'\nconst REQUIRE_DIRECTORY_ERROR = 'loading a directory of commands is not supported yet for ESM'\n\nlet __dirname;\ntry {\n __dirname = fileURLToPath(import.meta.url);\n} catch (e) {\n __dirname = process.cwd();\n}\nconst mainFilename = __dirname.substring(0, __dirname.lastIndexOf('node_modules'));\n\nexport default {\n assert: {\n notStrictEqual,\n strictEqual\n },\n cliui,\n findUp: escalade,\n getEnv: (key) => {\n return process.env[key]\n },\n inspect,\n getCallerFile: () => {\n throw new YError(REQUIRE_DIRECTORY_ERROR)\n },\n getProcessArgvBin,\n mainFilename: mainFilename || process.cwd(),\n Parser,\n path: {\n basename,\n dirname,\n extname,\n relative,\n resolve\n },\n process: {\n argv: () => process.argv,\n cwd: process.cwd,\n emitWarning: (warning, type) => process.emitWarning(warning, type),\n execPath: () => process.execPath,\n exit: process.exit,\n nextTick: process.nextTick,\n stdColumns: typeof process.stdout.columns !== 'undefined' ? process.stdout.columns : null\n },\n readFileSync,\n require: () => {\n throw new YError(REQUIRE_ERROR)\n },\n requireDirectory: () => {\n throw new YError(REQUIRE_DIRECTORY_ERROR)\n },\n stringWidth: (str) => {\n return [...str].length\n },\n y18n: y18n({\n directory: resolve(__dirname, '../../../locales'),\n updateFiles: false\n })\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { fieldIdToName, } from \"./execute-configs.js\";\nimport { hideBin } from \"yargs/helpers\";\nimport yargsParser from \"yargs-parser\";\nexport const extractConfigFromArgs = (argv, validateConfig, red) => {\n const configPartial = {};\n let missing = false;\n Object.entries(validateConfig).forEach(([key, v]) => {\n const validate = v;\n const value = argv[key];\n const response = validate(value);\n if (response === true) {\n if (value !== null && value !== undefined) {\n configPartial[key] = value;\n }\n }\n else if (value === null || value === undefined) {\n missing = true;\n }\n else {\n missing = true;\n red(`\"${value}\" is not a valid value for \"${key}\"`);\n if (typeof response === \"string\")\n red(response);\n }\n });\n return { configPartial, missing };\n};\nexport const buildGetConfig = (gray, red) => {\n const argv = yargsParser(hideBin(process.argv));\n return async (promptForConfig, validateConfig) => {\n const { configPartial, missing } = extractConfigFromArgs(argv, validateConfig, red);\n if (missing || !Object.values(configPartial).length) {\n return promptForConfig(configPartial);\n }\n else {\n gray(\"Retrieved from the command parameters\");\n Object.entries(configPartial).forEach(([key, value]) => { var _a; return value != null && gray(`${(_a = fieldIdToName[key]) !== null && _a !== void 0 ? _a : key}: ${value}`); });\n return configPartial;\n }\n };\n};\n//# sourceMappingURL=execute-helpers.js.map","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { dirname } from \"node:path\";\nimport { fileURLToPath } from \"node:url\";\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nexport const sourceDir = dirname(fileURLToPath(import.meta.url));\n//# sourceMappingURL=sourceDir.js.map","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { glob } from \"glob\";\nimport { join as pathJoin } from \"node:path\";\nimport { sourceDir } from \"./sourceDir.js\";\nexport async function getTemplates(template) {\n const sharedFiles = await getFiles(pathJoin(sourceDir, \"..\", \"templates\", \"_shared\", \"**\", \"**\", \"*.*\"));\n const templateFiles = await getFiles(pathJoin(sourceDir, \"..\", \"templates\", template, \"**\", \"**\", \"*.*\"));\n return [...sharedFiles, ...templateFiles];\n}\nasync function getFiles(path) {\n // Starting from glob v8 `\\` is only used as an escape character, and never as a path separator in glob patterns.\n // Glob pattern paths must use forward-slashes as path separators.\n // See https://github.com/isaacs/node-glob/blob/af57da21c7722bb6edb687ccd4ad3b99d3e7a333/changelog.md#80\n const normalizedPath = path.replace(/\\\\/g, \"/\");\n return glob(normalizedPath, { dot: true });\n}\n//# sourceMappingURL=getTemplates.js.map","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { OVERRIDE_DEFAULT_PORT, OVERRIDE_PORT_KEY, displayNameToName, widgetFolderName, } from \"./scaffolding.js\";\nimport { sourceDir } from \"./sourceDir.js\";\nimport { join as joinPath, parse as parsePath } from \"node:path\";\nimport * as fs from \"node:fs/promises\";\nimport { getTemplates } from \"./getTemplates.js\";\nimport mustache from \"mustache\";\nconst templateSuffix = \".mustache\";\n/**\n * Generates a scaffold project of Custom widget for API Managements' Dev Portal.\n *\n * @param widgetConfig - JSON object with data required by DevPortal to handle a widget integration.\n * @param deploymentConfig - JSON object with data for deployment.\n * @param options - JSON object with other data, which will not be stored in the DevPortal.\n */\nexport async function generateProject(widgetConfig, deploymentConfig, options = {}) {\n const { openUrl, configAdvancedTenantId, configAdvancedRedirectUri } = options;\n const openUrlParsed = openUrl ? new URL(openUrl) : null;\n if (openUrlParsed) {\n openUrlParsed.searchParams.append(OVERRIDE_PORT_KEY, String(OVERRIDE_DEFAULT_PORT));\n }\n const name = displayNameToName(widgetConfig.displayName);\n const serverSettings = {\n port: OVERRIDE_DEFAULT_PORT,\n open: openUrlParsed ? openUrlParsed.toString() : true,\n };\n const configAdditional = {\n interactiveBrowserCredentialOptions: { redirectUri: \"http://localhost:1337\" },\n };\n if (configAdvancedTenantId) {\n configAdditional.interactiveBrowserCredentialOptions.tenantId = configAdvancedTenantId;\n }\n if (configAdvancedRedirectUri) {\n configAdditional.interactiveBrowserCredentialOptions.redirectUri = configAdvancedRedirectUri;\n }\n const renderTemplate = async (file) => {\n const isTemplate = file.endsWith(templateSuffix);\n const encoding = file.endsWith(\".ttf\") ? \"binary\" : \"utf8\";\n let fileData = await fs.readFile(file, { encoding });\n if (isTemplate) {\n fileData = mustache.render(fileData, {\n name,\n displayName: widgetConfig.displayName,\n config: JSON.stringify(Object.assign(Object.assign({}, widgetConfig), { name }), null, \"\\t\"),\n configDeploy: JSON.stringify(deploymentConfig, null, \"\\t\"),\n configAdditional: JSON.stringify(configAdditional, null, \"\\t\"),\n serverSettings: JSON.stringify(serverSettings, null, \"\\t\"),\n });\n }\n let relativePath = file;\n if (sourceDir.includes(\"\\\\\")) {\n relativePath = relativePath.replace(/\\//g, \"\\\\\");\n }\n relativePath = relativePath\n .replace(joinPath(sourceDir, \"..\", \"templates\", \"_shared\"), \"\")\n .replace(joinPath(sourceDir, \"..\", \"templates\", widgetConfig.technology), \"\")\n .replace(templateSuffix, \"\");\n const newFilePath = joinPath(process.cwd(), widgetFolderName(name), relativePath);\n const dir = parsePath(newFilePath).dir;\n await fs.mkdir(dir, { recursive: true });\n await fs.writeFile(newFilePath, fileData, { encoding });\n };\n const templates = await getTemplates(widgetConfig.technology);\n for (const file of Object.values(templates)) {\n await renderTemplate(file);\n }\n return;\n}\n//# sourceMappingURL=generateProject.js.map","#!/usr/bin/env node\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { buildGetConfig } from \"./execute-helpers.js\";\nimport { prefixUrlProtocol, promptServiceInformation, promptMiscConfig, promptWidgetConfig, validateDeployConfig, validateMiscConfig, validateWidgetConfig, } from \"./execute-configs.js\";\nimport chalk from \"chalk\";\nimport { generateProject } from \"../generateProject.js\";\nconst log = console.log;\nconst white = (msg) => log(chalk.white(msg));\nconst green = (msg) => log(chalk.green(msg));\nconst red = (msg) => log(chalk.red(msg));\nconst gray = (msg) => log(chalk.gray(msg));\nasync function main() {\n green(\"\\nThis tool generates code scaffold for custom widgets in the Azure API Management’s developer portal. Learn more at https://aka.ms/apimdocs/portal/customwidgets.\\n\");\n const getConfig = buildGetConfig(gray, red);\n white(\"Specify the custom widget configuration.\");\n const widgetConfig = await getConfig(promptWidgetConfig, validateWidgetConfig);\n white(\"Specify the Azure API Management service configuration.\");\n const serviceInformation = await getConfig(promptServiceInformation, validateDeployConfig);\n white(\"Specify other options\");\n const miscConfig = await getConfig(promptMiscConfig, validateMiscConfig);\n if (serviceInformation.resourceId[0] === \"/\") {\n serviceInformation.resourceId = serviceInformation.resourceId.slice(1);\n }\n if (serviceInformation.resourceId.slice(-1) === \"/\") {\n serviceInformation.resourceId = serviceInformation.resourceId.slice(0, -1);\n }\n if (serviceInformation.apiVersion === \"\") {\n delete serviceInformation.apiVersion;\n }\n serviceInformation.managementApiEndpoint = prefixUrlProtocol(serviceInformation.managementApiEndpoint);\n miscConfig.openUrl = miscConfig.openUrl\n ? prefixUrlProtocol(miscConfig.openUrl)\n : miscConfig.openUrl;\n return generateProject(widgetConfig, serviceInformation, miscConfig)\n .then(() => green(\"\\nThe custom widget’s code scaffold has been successfully generated.\\n\"))\n .catch(console.error);\n}\nmain()\n .then(() => process.exit(0))\n .catch((err) => {\n console.error(err);\n process.exit(1);\n});\n//# sourceMappingURL=execute.js.map"],"names":["resolve","statSync","dirname","readdirSync","readFileSync","writeFile","format","y18n","_y18n","shim","__dirname","fileURLToPath","notStrictEqual","strictEqual","cliui","inspect","basename","extname","relative","yargsParser","pathJoin","glob","fs","joinPath","parsePath"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA;AACO,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiB,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA2B,CAAC;AAC7D,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA;AACO,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqB,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC;AAC1C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACO,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,GAAG,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,EAAE,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC;AAC3D,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA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CAAK,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,GAAG,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAI,CAAA,CAAA,CAAA;AACnE,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAC;AACP,CAAA;;AC9RA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAiD,CAAA,CAAA,CAAA,CAAA,C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AA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACS,sBAAa,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,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CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAI,CAAA,CAAA,CAAA,CAAC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAG,CAAA,CAAA,CAAC,CAAC;AACpD,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOC,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAE,CAAA,CAAA,CAAA,CAAG,CAAE,CAAA,CAAA,CAAA,CAAA,CAAI,CAAE,CAAA,CAAC,CAAC;AAC/C,CAAA;;AChBA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAOA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAC;AACnC,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA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","x_google_ignoreList":[2,3,4,5,6,7,8,9,10,11]} \ No newline at end of file +{"version":3,"file":"execute.cjs","sources":["../dist/esm/scaffolding.js","../dist/esm/bin/execute-configs.js","../../../../node_modules/.pnpm/yargs@17.7.2/node_modules/yargs/build/lib/yerror.js","../../../../node_modules/.pnpm/yargs@17.7.2/node_modules/yargs/build/lib/utils/process-argv.js","../../../../node_modules/.pnpm/cliui@8.0.1/node_modules/cliui/build/lib/index.js","../../../../node_modules/.pnpm/cliui@8.0.1/node_modules/cliui/build/lib/string-utils.js","../../../../node_modules/.pnpm/cliui@8.0.1/node_modules/cliui/index.mjs","../../../../node_modules/.pnpm/escalade@3.2.0/node_modules/escalade/sync/index.mjs","../../../../node_modules/.pnpm/y18n@5.0.8/node_modules/y18n/build/lib/platform-shims/node.js","../../../../node_modules/.pnpm/y18n@5.0.8/node_modules/y18n/build/lib/index.js","../../../../node_modules/.pnpm/y18n@5.0.8/node_modules/y18n/index.mjs","../../../../node_modules/.pnpm/yargs@17.7.2/node_modules/yargs/lib/platform-shims/esm.mjs","../dist/esm/bin/execute-helpers.js","../dist/esm/sourceDir.js","../dist/esm/getTemplates.js","../dist/esm/generateProject.js","../dist/esm/bin/execute.js"],"sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n/**\n * Unique identifier under which is specified which port to use for injecting locally hosted custom widget to a running DevPortal instance.\n */\nexport const OVERRIDE_PORT_KEY = \"MS_APIM_CW_localhost_port\";\n/**\n * Default port for running local dev server on.\n */\nexport const OVERRIDE_DEFAULT_PORT = 3000;\n/** List of all supported technologies to scaffold a widget in. */\nexport const TECHNOLOGIES = [\"typescript\", \"react\", \"vue\"];\n/**\n * Converts user defined name of a custom widget to a unique ID, which is in context of Dev Portal known as \"name\".\n * Prefix \"cw-\" to avoid conflicts with existing widgets.\n *\n * @param displayName - User defined name of the custom widget.\n */\nexport const displayNameToName = (displayName) => encodeURIComponent((\"cw-\" + displayName)\n .normalize(\"NFD\")\n .toLowerCase()\n .replace(/[\\u0300-\\u036f]/g, \"\")\n .replace(/[^a-z0-9-]/g, \"-\"));\n/**\n * Returns name of the folder for widget project.\n *\n * @param name - name of the widget\n */\nexport const widgetFolderName = (name) => `azure-api-management-widget-${name}`;\n//# sourceMappingURL=scaffolding.js.map","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { TECHNOLOGIES, } from \"../scaffolding.js\";\nexport const fieldIdToName = {\n displayName: \"Widget display name\",\n technology: \"Technology\",\n iconUrl: \"iconUrl\",\n resourceId: \"Azure API Management resource ID (following format: subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service/)\",\n managementApiEndpoint: \"Management API hostname\",\n apiVersion: \"Management API version\",\n openUrl: \"Developer portal URL\",\n configAdvancedTenantId: \"Tenant ID\",\n configAdvancedRedirectUri: \"Redirect URI\",\n};\nexport const prefixUrlProtocol = (value) => /https?:\\/\\//.test(value) ? value : `https://${value}`;\nconst validateRequired = (name, msg = `The “${name}” parameter is required.`) => (input) => (input != null && input !== \"\") || msg;\nconst validateUrl = (name, msg = (input) => `Provided “${name}” parameter value (“${prefixUrlProtocol(input)}”) isn’t a valid URL. Use the correct URL format, e.g., https://contoso.com.`) => (input) => {\n try {\n new URL(prefixUrlProtocol(input));\n return true;\n }\n catch (e) {\n return msg(prefixUrlProtocol(input));\n }\n};\nexport const validateWidgetConfig = {\n displayName: validateRequired(fieldIdToName.displayName),\n technology: (input) => {\n const required = validateRequired(fieldIdToName.technology)(input);\n if (required !== true)\n return required;\n if (TECHNOLOGIES.includes(input)) {\n return true;\n }\n else {\n return (\"Provided “technology” parameter value isn’t correct. Use one of the following: \" +\n TECHNOLOGIES.join(\", \"));\n }\n },\n};\nexport const validateDeployConfig = {\n resourceId: (input) => {\n const required = validateRequired(fieldIdToName.resourceId)(input);\n if (required !== true)\n return required;\n const regex = /^\\/?subscriptions\\/[^/]+\\/resourceGroups\\/[^/]+\\/providers\\/Microsoft\\.ApiManagement\\/service\\/[^/]+\\/?$/;\n return input === \"test\" || regex.test(input)\n ? true\n : \"Resource ID needs to be a valid Azure resource ID. For example, subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-group/providers/Microsoft.ApiManagement/service/contoso-apis.\";\n },\n managementApiEndpoint: (input) => validateRequired(fieldIdToName.managementApiEndpoint)(input),\n};\nexport const validateMiscConfig = {\n openUrl: (input) => {\n if (!input)\n return true;\n return validateUrl(fieldIdToName.openUrl)(input);\n },\n configAdvancedTenantId: () => {\n return true;\n },\n configAdvancedRedirectUri: (input) => {\n if (!input)\n return true;\n return validateUrl(fieldIdToName.openUrl)(input);\n },\n};\nexport const promptWidgetConfig = async (partial) => {\n const inquirerImport = await import(\"inquirer\");\n const inquirer = inquirerImport.default;\n return inquirer.prompt([\n {\n name: \"displayName\",\n type: \"input\",\n message: fieldIdToName.displayName,\n validate: validateWidgetConfig.displayName,\n },\n {\n name: \"technology\",\n type: \"list\",\n message: fieldIdToName.technology,\n choices: [\n { name: \"React\", value: \"react\" },\n { name: \"Vue\", value: \"vue\" },\n { name: \"TypeScript\", value: \"typescript\" },\n ],\n },\n ], partial);\n};\nexport const promptServiceInformation = async (partial) => {\n const inquirerImport = await import(\"inquirer\");\n const inquirer = inquirerImport.default;\n return inquirer.prompt([\n {\n name: \"resourceId\",\n type: \"input\",\n message: fieldIdToName.resourceId,\n validate: validateDeployConfig.resourceId,\n },\n {\n name: \"managementApiEndpoint\",\n type: \"list\",\n message: fieldIdToName.managementApiEndpoint,\n choices: [\n {\n name: \"management.azure.com (if you're not sure what to select, use this option)\",\n value: \"management.azure.com\",\n },\n { name: \"management.usgovcloudapi.net\", value: \"management.usgovcloudapi.net\" },\n { name: \"management.chinacloudapi.cn\", value: \"management.chinacloudapi.cn\" },\n ],\n transformer: prefixUrlProtocol,\n validate: validateDeployConfig.managementApiEndpoint,\n },\n {\n name: \"apiVersion\",\n type: \"input\",\n message: fieldIdToName.apiVersion + \" (optional; e.g., 2021-08-01)\",\n },\n ], partial);\n};\nexport const promptMiscConfig = async (partial) => {\n const inquirerImport = await import(\"inquirer\");\n const inquirer = inquirerImport.default;\n return inquirer.prompt([\n {\n name: \"openUrl\",\n type: \"input\",\n message: fieldIdToName.openUrl +\n \" for widget development and testing (optional; e.g., https://contoso.developer.azure-api.net/ or http://localhost:8080)\",\n transformer: prefixUrlProtocol,\n validate: validateMiscConfig.openUrl,\n },\n {\n name: \"configAdvancedTenantId\",\n type: \"input\",\n message: fieldIdToName.configAdvancedTenantId +\n \" to be used in Azure Identity InteractiveBrowserCredential class (optional)\",\n validate: validateMiscConfig.openUrl,\n },\n {\n name: \"configAdvancedRedirectUri\",\n type: \"input\",\n message: fieldIdToName.configAdvancedRedirectUri +\n \" to be used in Azure Identity InteractiveBrowserCredential class (optional; default is http://localhost:1337)\",\n validate: validateMiscConfig.openUrl,\n },\n ], partial);\n};\n//# sourceMappingURL=execute-configs.js.map","export class YError extends Error {\n constructor(msg) {\n super(msg || 'yargs error');\n this.name = 'YError';\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, YError);\n }\n }\n}\n","function getProcessArgvBinIndex() {\n if (isBundledElectronApp())\n return 0;\n return 1;\n}\nfunction isBundledElectronApp() {\n return isElectronApp() && !process.defaultApp;\n}\nfunction isElectronApp() {\n return !!process.versions.electron;\n}\nexport function hideBin(argv) {\n return argv.slice(getProcessArgvBinIndex() + 1);\n}\nexport function getProcessArgvBin() {\n return process.argv[getProcessArgvBinIndex()];\n}\n","'use strict';\nconst align = {\n right: alignRight,\n center: alignCenter\n};\nconst top = 0;\nconst right = 1;\nconst bottom = 2;\nconst left = 3;\nexport class UI {\n constructor(opts) {\n var _a;\n this.width = opts.width;\n this.wrap = (_a = opts.wrap) !== null && _a !== void 0 ? _a : true;\n this.rows = [];\n }\n span(...args) {\n const cols = this.div(...args);\n cols.span = true;\n }\n resetOutput() {\n this.rows = [];\n }\n div(...args) {\n if (args.length === 0) {\n this.div('');\n }\n if (this.wrap && this.shouldApplyLayoutDSL(...args) && typeof args[0] === 'string') {\n return this.applyLayoutDSL(args[0]);\n }\n const cols = args.map(arg => {\n if (typeof arg === 'string') {\n return this.colFromString(arg);\n }\n return arg;\n });\n this.rows.push(cols);\n return cols;\n }\n shouldApplyLayoutDSL(...args) {\n return args.length === 1 && typeof args[0] === 'string' &&\n /[\\t\\n]/.test(args[0]);\n }\n applyLayoutDSL(str) {\n const rows = str.split('\\n').map(row => row.split('\\t'));\n let leftColumnWidth = 0;\n // simple heuristic for layout, make sure the\n // second column lines up along the left-hand.\n // don't allow the first column to take up more\n // than 50% of the screen.\n rows.forEach(columns => {\n if (columns.length > 1 && mixin.stringWidth(columns[0]) > leftColumnWidth) {\n leftColumnWidth = Math.min(Math.floor(this.width * 0.5), mixin.stringWidth(columns[0]));\n }\n });\n // generate a table:\n // replacing ' ' with padding calculations.\n // using the algorithmically generated width.\n rows.forEach(columns => {\n this.div(...columns.map((r, i) => {\n return {\n text: r.trim(),\n padding: this.measurePadding(r),\n width: (i === 0 && columns.length > 1) ? leftColumnWidth : undefined\n };\n }));\n });\n return this.rows[this.rows.length - 1];\n }\n colFromString(text) {\n return {\n text,\n padding: this.measurePadding(text)\n };\n }\n measurePadding(str) {\n // measure padding without ansi escape codes\n const noAnsi = mixin.stripAnsi(str);\n return [0, noAnsi.match(/\\s*$/)[0].length, 0, noAnsi.match(/^\\s*/)[0].length];\n }\n toString() {\n const lines = [];\n this.rows.forEach(row => {\n this.rowToString(row, lines);\n });\n // don't display any lines with the\n // hidden flag set.\n return lines\n .filter(line => !line.hidden)\n .map(line => line.text)\n .join('\\n');\n }\n rowToString(row, lines) {\n this.rasterize(row).forEach((rrow, r) => {\n let str = '';\n rrow.forEach((col, c) => {\n const { width } = row[c]; // the width with padding.\n const wrapWidth = this.negatePadding(row[c]); // the width without padding.\n let ts = col; // temporary string used during alignment/padding.\n if (wrapWidth > mixin.stringWidth(col)) {\n ts += ' '.repeat(wrapWidth - mixin.stringWidth(col));\n }\n // align the string within its column.\n if (row[c].align && row[c].align !== 'left' && this.wrap) {\n const fn = align[row[c].align];\n ts = fn(ts, wrapWidth);\n if (mixin.stringWidth(ts) < wrapWidth) {\n ts += ' '.repeat((width || 0) - mixin.stringWidth(ts) - 1);\n }\n }\n // apply border and padding to string.\n const padding = row[c].padding || [0, 0, 0, 0];\n if (padding[left]) {\n str += ' '.repeat(padding[left]);\n }\n str += addBorder(row[c], ts, '| ');\n str += ts;\n str += addBorder(row[c], ts, ' |');\n if (padding[right]) {\n str += ' '.repeat(padding[right]);\n }\n // if prior row is span, try to render the\n // current row on the prior line.\n if (r === 0 && lines.length > 0) {\n str = this.renderInline(str, lines[lines.length - 1]);\n }\n });\n // remove trailing whitespace.\n lines.push({\n text: str.replace(/ +$/, ''),\n span: row.span\n });\n });\n return lines;\n }\n // if the full 'source' can render in\n // the target line, do so.\n renderInline(source, previousLine) {\n const match = source.match(/^ */);\n const leadingWhitespace = match ? match[0].length : 0;\n const target = previousLine.text;\n const targetTextWidth = mixin.stringWidth(target.trimRight());\n if (!previousLine.span) {\n return source;\n }\n // if we're not applying wrapping logic,\n // just always append to the span.\n if (!this.wrap) {\n previousLine.hidden = true;\n return target + source;\n }\n if (leadingWhitespace < targetTextWidth) {\n return source;\n }\n previousLine.hidden = true;\n return target.trimRight() + ' '.repeat(leadingWhitespace - targetTextWidth) + source.trimLeft();\n }\n rasterize(row) {\n const rrows = [];\n const widths = this.columnWidths(row);\n let wrapped;\n // word wrap all columns, and create\n // a data-structure that is easy to rasterize.\n row.forEach((col, c) => {\n // leave room for left and right padding.\n col.width = widths[c];\n if (this.wrap) {\n wrapped = mixin.wrap(col.text, this.negatePadding(col), { hard: true }).split('\\n');\n }\n else {\n wrapped = col.text.split('\\n');\n }\n if (col.border) {\n wrapped.unshift('.' + '-'.repeat(this.negatePadding(col) + 2) + '.');\n wrapped.push(\"'\" + '-'.repeat(this.negatePadding(col) + 2) + \"'\");\n }\n // add top and bottom padding.\n if (col.padding) {\n wrapped.unshift(...new Array(col.padding[top] || 0).fill(''));\n wrapped.push(...new Array(col.padding[bottom] || 0).fill(''));\n }\n wrapped.forEach((str, r) => {\n if (!rrows[r]) {\n rrows.push([]);\n }\n const rrow = rrows[r];\n for (let i = 0; i < c; i++) {\n if (rrow[i] === undefined) {\n rrow.push('');\n }\n }\n rrow.push(str);\n });\n });\n return rrows;\n }\n negatePadding(col) {\n let wrapWidth = col.width || 0;\n if (col.padding) {\n wrapWidth -= (col.padding[left] || 0) + (col.padding[right] || 0);\n }\n if (col.border) {\n wrapWidth -= 4;\n }\n return wrapWidth;\n }\n columnWidths(row) {\n if (!this.wrap) {\n return row.map(col => {\n return col.width || mixin.stringWidth(col.text);\n });\n }\n let unset = row.length;\n let remainingWidth = this.width;\n // column widths can be set in config.\n const widths = row.map(col => {\n if (col.width) {\n unset--;\n remainingWidth -= col.width;\n return col.width;\n }\n return undefined;\n });\n // any unset widths should be calculated.\n const unsetWidth = unset ? Math.floor(remainingWidth / unset) : 0;\n return widths.map((w, i) => {\n if (w === undefined) {\n return Math.max(unsetWidth, _minWidth(row[i]));\n }\n return w;\n });\n }\n}\nfunction addBorder(col, ts, style) {\n if (col.border) {\n if (/[.']-+[.']/.test(ts)) {\n return '';\n }\n if (ts.trim().length !== 0) {\n return style;\n }\n return ' ';\n }\n return '';\n}\n// calculates the minimum width of\n// a column, based on padding preferences.\nfunction _minWidth(col) {\n const padding = col.padding || [];\n const minWidth = 1 + (padding[left] || 0) + (padding[right] || 0);\n if (col.border) {\n return minWidth + 4;\n }\n return minWidth;\n}\nfunction getWindowWidth() {\n /* istanbul ignore next: depends on terminal */\n if (typeof process === 'object' && process.stdout && process.stdout.columns) {\n return process.stdout.columns;\n }\n return 80;\n}\nfunction alignRight(str, width) {\n str = str.trim();\n const strWidth = mixin.stringWidth(str);\n if (strWidth < width) {\n return ' '.repeat(width - strWidth) + str;\n }\n return str;\n}\nfunction alignCenter(str, width) {\n str = str.trim();\n const strWidth = mixin.stringWidth(str);\n /* istanbul ignore next */\n if (strWidth >= width) {\n return str;\n }\n return ' '.repeat((width - strWidth) >> 1) + str;\n}\nlet mixin;\nexport function cliui(opts, _mixin) {\n mixin = _mixin;\n return new UI({\n width: (opts === null || opts === void 0 ? void 0 : opts.width) || getWindowWidth(),\n wrap: opts === null || opts === void 0 ? void 0 : opts.wrap\n });\n}\n","// Minimal replacement for ansi string helpers \"wrap-ansi\" and \"strip-ansi\".\n// to facilitate ESM and Deno modules.\n// TODO: look at porting https://www.npmjs.com/package/wrap-ansi to ESM.\n// The npm application\n// Copyright (c) npm, Inc. and Contributors\n// Licensed on the terms of The Artistic License 2.0\n// See: https://github.com/npm/cli/blob/4c65cd952bc8627811735bea76b9b110cc4fc80e/lib/utils/ansi-trim.js\nconst ansi = new RegExp('\\x1b(?:\\\\[(?:\\\\d+[ABCDEFGJKSTm]|\\\\d+;\\\\d+[Hfm]|' +\n '\\\\d+;\\\\d+;\\\\d+m|6n|s|u|\\\\?25[lh])|\\\\w)', 'g');\nexport function stripAnsi(str) {\n return str.replace(ansi, '');\n}\nexport function wrap(str, width) {\n const [start, end] = str.match(ansi) || ['', ''];\n str = stripAnsi(str);\n let wrapped = '';\n for (let i = 0; i < str.length; i++) {\n if (i !== 0 && (i % width) === 0) {\n wrapped += '\\n';\n }\n wrapped += str.charAt(i);\n }\n if (start && end) {\n wrapped = `${start}${wrapped}${end}`;\n }\n return wrapped;\n}\n","// Bootstrap cliui with CommonJS dependencies:\nimport { cliui } from './build/lib/index.js'\nimport { wrap, stripAnsi } from './build/lib/string-utils.js'\n\nexport default function ui (opts) {\n return cliui(opts, {\n stringWidth: (str) => {\n return [...str].length\n },\n stripAnsi,\n wrap\n })\n}\n","import { dirname, resolve } from 'path';\nimport { readdirSync, statSync } from 'fs';\n\nexport default function (start, callback) {\n\tlet dir = resolve('.', start);\n\tlet tmp, stats = statSync(dir);\n\n\tif (!stats.isDirectory()) {\n\t\tdir = dirname(dir);\n\t}\n\n\twhile (true) {\n\t\ttmp = callback(dir, readdirSync(dir));\n\t\tif (tmp) return resolve(dir, tmp);\n\t\tdir = dirname(tmp = dir);\n\t\tif (tmp === dir) break;\n\t}\n}\n","import { readFileSync, statSync, writeFile } from 'fs';\nimport { format } from 'util';\nimport { resolve } from 'path';\nexport default {\n fs: {\n readFileSync,\n writeFile\n },\n format,\n resolve,\n exists: (file) => {\n try {\n return statSync(file).isFile();\n }\n catch (err) {\n return false;\n }\n }\n};\n","let shim;\nclass Y18N {\n constructor(opts) {\n // configurable options.\n opts = opts || {};\n this.directory = opts.directory || './locales';\n this.updateFiles = typeof opts.updateFiles === 'boolean' ? opts.updateFiles : true;\n this.locale = opts.locale || 'en';\n this.fallbackToLanguage = typeof opts.fallbackToLanguage === 'boolean' ? opts.fallbackToLanguage : true;\n // internal stuff.\n this.cache = Object.create(null);\n this.writeQueue = [];\n }\n __(...args) {\n if (typeof arguments[0] !== 'string') {\n return this._taggedLiteral(arguments[0], ...arguments);\n }\n const str = args.shift();\n let cb = function () { }; // start with noop.\n if (typeof args[args.length - 1] === 'function')\n cb = args.pop();\n cb = cb || function () { }; // noop.\n if (!this.cache[this.locale])\n this._readLocaleFile();\n // we've observed a new string, update the language file.\n if (!this.cache[this.locale][str] && this.updateFiles) {\n this.cache[this.locale][str] = str;\n // include the current directory and locale,\n // since these values could change before the\n // write is performed.\n this._enqueueWrite({\n directory: this.directory,\n locale: this.locale,\n cb\n });\n }\n else {\n cb();\n }\n return shim.format.apply(shim.format, [this.cache[this.locale][str] || str].concat(args));\n }\n __n() {\n const args = Array.prototype.slice.call(arguments);\n const singular = args.shift();\n const plural = args.shift();\n const quantity = args.shift();\n let cb = function () { }; // start with noop.\n if (typeof args[args.length - 1] === 'function')\n cb = args.pop();\n if (!this.cache[this.locale])\n this._readLocaleFile();\n let str = quantity === 1 ? singular : plural;\n if (this.cache[this.locale][singular]) {\n const entry = this.cache[this.locale][singular];\n str = entry[quantity === 1 ? 'one' : 'other'];\n }\n // we've observed a new string, update the language file.\n if (!this.cache[this.locale][singular] && this.updateFiles) {\n this.cache[this.locale][singular] = {\n one: singular,\n other: plural\n };\n // include the current directory and locale,\n // since these values could change before the\n // write is performed.\n this._enqueueWrite({\n directory: this.directory,\n locale: this.locale,\n cb\n });\n }\n else {\n cb();\n }\n // if a %d placeholder is provided, add quantity\n // to the arguments expanded by util.format.\n const values = [str];\n if (~str.indexOf('%d'))\n values.push(quantity);\n return shim.format.apply(shim.format, values.concat(args));\n }\n setLocale(locale) {\n this.locale = locale;\n }\n getLocale() {\n return this.locale;\n }\n updateLocale(obj) {\n if (!this.cache[this.locale])\n this._readLocaleFile();\n for (const key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n this.cache[this.locale][key] = obj[key];\n }\n }\n }\n _taggedLiteral(parts, ...args) {\n let str = '';\n parts.forEach(function (part, i) {\n const arg = args[i + 1];\n str += part;\n if (typeof arg !== 'undefined') {\n str += '%s';\n }\n });\n return this.__.apply(this, [str].concat([].slice.call(args, 1)));\n }\n _enqueueWrite(work) {\n this.writeQueue.push(work);\n if (this.writeQueue.length === 1)\n this._processWriteQueue();\n }\n _processWriteQueue() {\n const _this = this;\n const work = this.writeQueue[0];\n // destructure the enqueued work.\n const directory = work.directory;\n const locale = work.locale;\n const cb = work.cb;\n const languageFile = this._resolveLocaleFile(directory, locale);\n const serializedLocale = JSON.stringify(this.cache[locale], null, 2);\n shim.fs.writeFile(languageFile, serializedLocale, 'utf-8', function (err) {\n _this.writeQueue.shift();\n if (_this.writeQueue.length > 0)\n _this._processWriteQueue();\n cb(err);\n });\n }\n _readLocaleFile() {\n let localeLookup = {};\n const languageFile = this._resolveLocaleFile(this.directory, this.locale);\n try {\n // When using a bundler such as webpack, readFileSync may not be defined:\n if (shim.fs.readFileSync) {\n localeLookup = JSON.parse(shim.fs.readFileSync(languageFile, 'utf-8'));\n }\n }\n catch (err) {\n if (err instanceof SyntaxError) {\n err.message = 'syntax error in ' + languageFile;\n }\n if (err.code === 'ENOENT')\n localeLookup = {};\n else\n throw err;\n }\n this.cache[this.locale] = localeLookup;\n }\n _resolveLocaleFile(directory, locale) {\n let file = shim.resolve(directory, './', locale + '.json');\n if (this.fallbackToLanguage && !this._fileExistsSync(file) && ~locale.lastIndexOf('_')) {\n // attempt fallback to language only\n const languageFile = shim.resolve(directory, './', locale.split('_')[0] + '.json');\n if (this._fileExistsSync(languageFile))\n file = languageFile;\n }\n return file;\n }\n _fileExistsSync(file) {\n return shim.exists(file);\n }\n}\nexport function y18n(opts, _shim) {\n shim = _shim;\n const y18n = new Y18N(opts);\n return {\n __: y18n.__.bind(y18n),\n __n: y18n.__n.bind(y18n),\n setLocale: y18n.setLocale.bind(y18n),\n getLocale: y18n.getLocale.bind(y18n),\n updateLocale: y18n.updateLocale.bind(y18n),\n locale: y18n.locale\n };\n}\n","import shim from './build/lib/platform-shims/node.js'\nimport { y18n as _y18n } from './build/lib/index.js'\n\nconst y18n = (opts) => {\n return _y18n(opts, shim)\n}\n\nexport default y18n\n","'use strict'\n\nimport { notStrictEqual, strictEqual } from 'assert'\nimport cliui from 'cliui'\nimport escalade from 'escalade/sync'\nimport { inspect } from 'util'\nimport { readFileSync } from 'fs'\nimport { fileURLToPath } from 'url';\nimport Parser from 'yargs-parser'\nimport { basename, dirname, extname, relative, resolve } from 'path'\nimport { getProcessArgvBin } from '../../build/lib/utils/process-argv.js'\nimport { YError } from '../../build/lib/yerror.js'\nimport y18n from 'y18n'\n\nconst REQUIRE_ERROR = 'require is not supported by ESM'\nconst REQUIRE_DIRECTORY_ERROR = 'loading a directory of commands is not supported yet for ESM'\n\nlet __dirname;\ntry {\n __dirname = fileURLToPath(import.meta.url);\n} catch (e) {\n __dirname = process.cwd();\n}\nconst mainFilename = __dirname.substring(0, __dirname.lastIndexOf('node_modules'));\n\nexport default {\n assert: {\n notStrictEqual,\n strictEqual\n },\n cliui,\n findUp: escalade,\n getEnv: (key) => {\n return process.env[key]\n },\n inspect,\n getCallerFile: () => {\n throw new YError(REQUIRE_DIRECTORY_ERROR)\n },\n getProcessArgvBin,\n mainFilename: mainFilename || process.cwd(),\n Parser,\n path: {\n basename,\n dirname,\n extname,\n relative,\n resolve\n },\n process: {\n argv: () => process.argv,\n cwd: process.cwd,\n emitWarning: (warning, type) => process.emitWarning(warning, type),\n execPath: () => process.execPath,\n exit: process.exit,\n nextTick: process.nextTick,\n stdColumns: typeof process.stdout.columns !== 'undefined' ? process.stdout.columns : null\n },\n readFileSync,\n require: () => {\n throw new YError(REQUIRE_ERROR)\n },\n requireDirectory: () => {\n throw new YError(REQUIRE_DIRECTORY_ERROR)\n },\n stringWidth: (str) => {\n return [...str].length\n },\n y18n: y18n({\n directory: resolve(__dirname, '../../../locales'),\n updateFiles: false\n })\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { fieldIdToName, } from \"./execute-configs.js\";\nimport { hideBin } from \"yargs/helpers\";\nimport yargsParser from \"yargs-parser\";\nexport const extractConfigFromArgs = (argv, validateConfig, red) => {\n const configPartial = {};\n let missing = false;\n Object.entries(validateConfig).forEach(([key, v]) => {\n const validate = v;\n const value = argv[key];\n const response = validate(value);\n if (response === true) {\n if (value !== null && value !== undefined) {\n configPartial[key] = value;\n }\n }\n else if (value === null || value === undefined) {\n missing = true;\n }\n else {\n missing = true;\n red(`\"${value}\" is not a valid value for \"${key}\"`);\n if (typeof response === \"string\")\n red(response);\n }\n });\n return { configPartial, missing };\n};\nexport const buildGetConfig = (gray, red) => {\n const argv = yargsParser(hideBin(process.argv));\n return async (promptForConfig, validateConfig) => {\n const { configPartial, missing } = extractConfigFromArgs(argv, validateConfig, red);\n if (missing || !Object.values(configPartial).length) {\n return promptForConfig(configPartial);\n }\n else {\n gray(\"Retrieved from the command parameters\");\n Object.entries(configPartial).forEach(([key, value]) => { var _a; return value != null && gray(`${(_a = fieldIdToName[key]) !== null && _a !== void 0 ? _a : key}: ${value}`); });\n return configPartial;\n }\n };\n};\n//# sourceMappingURL=execute-helpers.js.map","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { dirname } from \"node:path\";\nimport { fileURLToPath } from \"node:url\";\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nexport const sourceDir = dirname(fileURLToPath(import.meta.url));\n//# sourceMappingURL=sourceDir.js.map","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { glob } from \"glob\";\nimport { join as pathJoin } from \"node:path\";\nimport { sourceDir } from \"./sourceDir.js\";\nexport async function getTemplates(template) {\n const sharedFiles = await getFiles(pathJoin(sourceDir, \"..\", \"templates\", \"_shared\", \"**\", \"**\", \"*.*\"));\n const templateFiles = await getFiles(pathJoin(sourceDir, \"..\", \"templates\", template, \"**\", \"**\", \"*.*\"));\n return [...sharedFiles, ...templateFiles];\n}\nasync function getFiles(path) {\n // Starting from glob v8 `\\` is only used as an escape character, and never as a path separator in glob patterns.\n // Glob pattern paths must use forward-slashes as path separators.\n // See https://github.com/isaacs/node-glob/blob/af57da21c7722bb6edb687ccd4ad3b99d3e7a333/changelog.md#80\n const normalizedPath = path.replace(/\\\\/g, \"/\");\n return glob(normalizedPath, { dot: true });\n}\n//# sourceMappingURL=getTemplates.js.map","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { OVERRIDE_DEFAULT_PORT, OVERRIDE_PORT_KEY, displayNameToName, widgetFolderName, } from \"./scaffolding.js\";\nimport { sourceDir } from \"./sourceDir.js\";\nimport { join as joinPath, parse as parsePath } from \"node:path\";\nimport * as fs from \"node:fs/promises\";\nimport { getTemplates } from \"./getTemplates.js\";\nimport mustache from \"mustache\";\nconst templateSuffix = \".mustache\";\n/**\n * Generates a scaffold project of Custom widget for API Managements' Dev Portal.\n *\n * @param widgetConfig - JSON object with data required by DevPortal to handle a widget integration.\n * @param deploymentConfig - JSON object with data for deployment.\n * @param options - JSON object with other data, which will not be stored in the DevPortal.\n */\nexport async function generateProject(widgetConfig, deploymentConfig, options = {}) {\n const { openUrl, configAdvancedTenantId, configAdvancedRedirectUri } = options;\n const openUrlParsed = openUrl ? new URL(openUrl) : null;\n if (openUrlParsed) {\n openUrlParsed.searchParams.append(OVERRIDE_PORT_KEY, String(OVERRIDE_DEFAULT_PORT));\n }\n const name = displayNameToName(widgetConfig.displayName);\n const serverSettings = {\n port: OVERRIDE_DEFAULT_PORT,\n open: openUrlParsed ? openUrlParsed.toString() : true,\n };\n const configAdditional = {\n interactiveBrowserCredentialOptions: { redirectUri: \"http://localhost:1337\" },\n };\n if (configAdvancedTenantId) {\n configAdditional.interactiveBrowserCredentialOptions.tenantId = configAdvancedTenantId;\n }\n if (configAdvancedRedirectUri) {\n configAdditional.interactiveBrowserCredentialOptions.redirectUri = configAdvancedRedirectUri;\n }\n const renderTemplate = async (file) => {\n const isTemplate = file.endsWith(templateSuffix);\n const encoding = file.endsWith(\".ttf\") ? \"binary\" : \"utf8\";\n let fileData = await fs.readFile(file, { encoding });\n if (isTemplate) {\n fileData = mustache.render(fileData, {\n name,\n displayName: widgetConfig.displayName,\n config: JSON.stringify(Object.assign(Object.assign({}, widgetConfig), { name }), null, \"\\t\"),\n configDeploy: JSON.stringify(deploymentConfig, null, \"\\t\"),\n configAdditional: JSON.stringify(configAdditional, null, \"\\t\"),\n serverSettings: JSON.stringify(serverSettings, null, \"\\t\"),\n });\n }\n let relativePath = file;\n if (sourceDir.includes(\"\\\\\")) {\n relativePath = relativePath.replace(/\\//g, \"\\\\\");\n }\n relativePath = relativePath\n .replace(joinPath(sourceDir, \"..\", \"templates\", \"_shared\"), \"\")\n .replace(joinPath(sourceDir, \"..\", \"templates\", widgetConfig.technology), \"\")\n .replace(templateSuffix, \"\");\n const newFilePath = joinPath(process.cwd(), widgetFolderName(name), relativePath);\n const dir = parsePath(newFilePath).dir;\n await fs.mkdir(dir, { recursive: true });\n await fs.writeFile(newFilePath, fileData, { encoding });\n };\n const templates = await getTemplates(widgetConfig.technology);\n for (const file of Object.values(templates)) {\n await renderTemplate(file);\n }\n return;\n}\n//# sourceMappingURL=generateProject.js.map","#!/usr/bin/env node\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { buildGetConfig } from \"./execute-helpers.js\";\nimport { prefixUrlProtocol, promptServiceInformation, promptMiscConfig, promptWidgetConfig, validateDeployConfig, validateMiscConfig, validateWidgetConfig, } from \"./execute-configs.js\";\nimport chalk from \"chalk\";\nimport { generateProject } from \"../generateProject.js\";\nconst log = console.log;\nconst white = (msg) => log(chalk.white(msg));\nconst green = (msg) => log(chalk.green(msg));\nconst red = (msg) => log(chalk.red(msg));\nconst gray = (msg) => log(chalk.gray(msg));\nasync function main() {\n green(\"\\nThis tool generates code scaffold for custom widgets in the Azure API Management’s developer portal. Learn more at https://aka.ms/apimdocs/portal/customwidgets.\\n\");\n const getConfig = buildGetConfig(gray, red);\n white(\"Specify the custom widget configuration.\");\n const widgetConfig = await getConfig(promptWidgetConfig, validateWidgetConfig);\n white(\"Specify the Azure API Management service configuration.\");\n const serviceInformation = await getConfig(promptServiceInformation, validateDeployConfig);\n white(\"Specify other options\");\n const miscConfig = await getConfig(promptMiscConfig, validateMiscConfig);\n if (serviceInformation.resourceId[0] === \"/\") {\n serviceInformation.resourceId = serviceInformation.resourceId.slice(1);\n }\n if (serviceInformation.resourceId.slice(-1) === \"/\") {\n serviceInformation.resourceId = serviceInformation.resourceId.slice(0, -1);\n }\n if (serviceInformation.apiVersion === \"\") {\n delete serviceInformation.apiVersion;\n }\n serviceInformation.managementApiEndpoint = prefixUrlProtocol(serviceInformation.managementApiEndpoint);\n miscConfig.openUrl = miscConfig.openUrl\n ? prefixUrlProtocol(miscConfig.openUrl)\n : miscConfig.openUrl;\n return generateProject(widgetConfig, serviceInformation, miscConfig)\n .then(() => green(\"\\nThe custom widget’s code scaffold has been successfully generated.\\n\"))\n .catch(console.error);\n}\nmain()\n .then(() => process.exit(0))\n .catch((err) => {\n console.error(err);\n process.exit(1);\n});\n//# sourceMappingURL=execute.js.map"],"names":["resolve","statSync","dirname","readdirSync","readFileSync","writeFile","format","y18n","_y18n","shim","__dirname","fileURLToPath","notStrictEqual","strictEqual","cliui","inspect","basename","extname","relative","yargsParser","pathJoin","glob","fs","joinPath","parsePath"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA;AACO,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiB,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA2B,CAAC;AAC7D,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA;AACO,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqB,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC;AAC1C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACO,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,GAAG,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,EAAE,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC;AAC3D,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA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CAAK,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,GAAG,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAI,CAAA,CAAA,CAAA;AACnE,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAC;AACP,CAAA;;AC9RA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAiD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACzE,CAAA,CAAA,CAAA,CAAI,CAAwC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAG,CAAA,CAAA,CAAC,CAAC;AAC5C,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAC,CAAA,CAAA,CAAG,CAAE,CAAA,CAAA;AAC/B,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,GAAG,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAC,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,CAAE,CAAA,CAAC,CAAC;AACjC,CAAC;AACM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAI,CAAA,CAAA,CAAA,CAAC,CAAG,CAAA,CAAA,CAAA,CAAE,KAAK,CAAE,CAAA,CAAA;AACjC,CAAA,CAAA,CAAA,CAAI,MAAM,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,EAAE,CAAG,CAAA,CAAA,CAAC,GAAG,CAAG,CAAA,CAAA,CAAC,KAAK,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,EAAE,CAAE,CAAA,CAAA,CAAE,CAAC,CAAC;AACrD,CAAA,CAAA,CAAA,CAAI,GAAG,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC;AACzB,CAAA,CAAA,CAAA,CAAI,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAG,CAAA,CAAA,CAAA,CAAE,CAAC;AACrB,CAAA,CAAA,CAAA,CAAI,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAG,CAAC,CAAE,CAAA,CAAC,CAAG,CAAA,CAAA,CAAA,CAAA,CAAG,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAE,CAAA,CAAC,EAAE,CAAE,CAAA,CAAA;AACzC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAC,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAE,CAAA,CAAA;AAC1C,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC;AAC5B,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,IAAI,CAAG,CAAA,CAAA,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACjC,CAAK,CAAA,CAAA,CAAA,CAAA;AACL,CAAA,CAAA,CAAA,CAAI,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAE,CAAA,CAAA;AACtB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAC,CAAA,CAAE,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAC,CAAA,CAAE,CAAG,CAAA,CAAA,CAAC,CAAC,CAAC;AAC7C,CAAK,CAAA,CAAA,CAAA,CAAA;AACL,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,OAAO,CAAC;AACnB,CAAA;;AC1BA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAGA;AACe,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAE,CAAA,CAAA,CAAA,CAAA,CAAI,CAAE,CAAA,CAAA;AAClC,CAAA,CAAE,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA,CAAA,CAAA,CAAI,CAAE,CAAA,CAAA;AACrB,CAAA,CAAA,CAAA,CAAI,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC,CAAA,CAAA,CAAG,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;AAC1B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,OAAO,CAAC,CAAA,CAAA,CAAG,CAAG,CAAA,CAAA,CAAC,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA;AAC5B,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;AACL,CAAA,CAAA,CAAA,CAAI,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACb,CAAA,CAAA,CAAA,CAAI,CAAI,CAAA,CAAA,CAAA;AACR,CAAA,CAAA,CAAG,CAAC;AACJ,CAAA;;ACTe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAE,CAAA,CAAA;AAC1C,CAAC,CAAA,CAAA,CAAA,CAAI,GAAG,CAAGA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAG,CAAA,CAAA,CAAA,CAAE,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC;AAC/B,CAAC,CAAA,CAAA,CAAA,CAAI,GAAG,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,GAAGC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAG,CAAA,CAAA,CAAC,CAAC;AAChC;AACA,CAAC,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,EAAE,CAAE,CAAA,CAAA;AAC3B,CAAA,CAAE,GAAG,CAAGC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC;AACrB,CAAE,CAAA;AACF;AACA,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,IAAI,CAAE,CAAA,CAAA;AACd,CAAE,CAAA,CAAA,CAAA,CAAG,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAC,CAAA,CAAA,CAAG,CAAEC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC,CAAC;AACxC,CAAE,CAAA,CAAA,CAAA,CAAA,CAAI,CAAG,CAAA,CAAA,CAAA,CAAE,CAAOH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAAC,CAAG,CAAA,CAAA,CAAA,CAAE,CAAG,CAAA,CAAA,CAAC,CAAC;AACpC,CAAE,CAAA,CAAA,CAAA,CAAG,GAAGE,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,GAAG,CAAG,CAAA,CAAA,CAAA,CAAA,CAAG,CAAC,CAAC;AAC3B,CAAA,CAAE,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,EAAE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA;AACzB,CAAE,CAAA;AACF,CAAA;;ACdA,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACf,CAAA,CAAA,CAAA,CAAI,EAAE,CAAE,CAAA,CAAA;AACR,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQE,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACpB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACjB,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;AACL,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIN,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACX,CAAA,CAAA,CAAA,CAAI,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC,CAAA,CAAA,CAAA,CAAI,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;AACtB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAI,CAAA,CAAA,CAAA,CAAA;AACZ,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOC,WAAQ,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,EAAE,CAAC;AAC3C,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,GAAG,CAAE,CAAA,CAAA;AACpB,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,KAAK,CAAC;AACzB,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAK,CAAA,CAAA,CAAA,CAAA;AACL,CAAC,CAAA;;AClBD,CAAA,CAAA,CAAA,CAAI,IAAI,CAAC;AACT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,IAAI,CAAC,CAAA;AACX,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAC,CAAA,CAAA,CAAA,CAAI,CAAE,CAAA,CAAA;AACtB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,EAAE,CAAC;AAC1B,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAC;AACvD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,GAAG,CAAI,CAAA,CAAA,CAAA,CAAC,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,IAAI,CAAC;AAC3F,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC;AAC1C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkB,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkB,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,GAAG,CAAI,CAAA,CAAA,CAAA,CAAC,CAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,IAAI,CAAC;AAChH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAC;AACzC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAI,CAAA,CAAA,CAAA,CAAC,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,EAAE,CAAC;AAC7B,CAAK,CAAA,CAAA,CAAA,CAAA;AACL,CAAA,CAAA,CAAA,CAAI,CAAE,CAAA,CAAC,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAE,CAAA,CAAA;AAChB,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,OAAO,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,QAAQ,CAAE,CAAA,CAAA;AAC9C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAC,CAAC,CAAC,CAAA,CAAE,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAC,CAAC;AACnE,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,MAAM,CAAG,CAAA,CAAA,CAAA,CAAA,CAAG,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,EAAE,CAAC;AACjC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,GAAG,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACjC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAG,CAAA,CAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACvD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,EAAE,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAG,EAAE,CAAC;AAC5B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,EAAE,CAAG,CAAA,CAAA,CAAA,CAAE,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,GAAG,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACnC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,KAAK,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAA;AACpC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAI,CAAA,CAAA,CAAA,CAAC,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC;AACnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,IAAI,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAG,CAAA,CAAA,CAAC,IAAI,CAAI,CAAA,CAAA,CAAA,CAAC,WAAW,CAAE,CAAA,CAAA;AAC/D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAI,CAAA,CAAA,CAAA,CAAC,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA,CAAA,CAAG,CAAC,CAAA,CAAA,CAAG,GAAG,CAAC;AAC/C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAC,CAAA;AAC/B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAI,CAAA,CAAA,CAAA,CAAC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACzC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAI,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAE,CAAA;AAClB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAC,CAAC;AACf,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACb,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,EAAE,CAAC;AACjB,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA,CAAA,CAAG,CAAC,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAC,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAC,CAAC;AAClG,CAAK,CAAA,CAAA,CAAA,CAAA;AACL,CAAA,CAAA,CAAA,CAAI,GAAG,CAAG,CAAA,CAAA,CAAA;AACV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAC,CAAC;AAC3D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,MAAM,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,EAAE,CAAC;AACtC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,MAAM,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,EAAE,CAAC;AACpC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,MAAM,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,EAAE,CAAC;AACtC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,GAAG,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACjC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAG,CAAA,CAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACvD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,EAAE,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAG,EAAE,CAAC;AAC5B,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,KAAK,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAA;AACpC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAI,CAAA,CAAA,CAAA,CAAC,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC;AACnC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAG,CAAA,CAAA,CAAA,CAAA,CAAG,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC;AACrD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAE,CAAA,CAAA;AAC/C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAC,CAAC;AAC5D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAG,CAAA,CAAA,CAAA,CAAA,CAAG,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA,CAAA,CAAG,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC;AAC1D,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,IAAI,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,IAAI,CAAI,CAAA,CAAA,CAAA,CAAC,WAAW,CAAE,CAAA,CAAA;AACpE,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAG,CAAA,CAAA,CAAA;AAChD,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,EAAE,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAC7B,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,EAAE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA;AAC7B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAC;AACd,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAC,CAAA;AAC/B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAI,CAAA,CAAA,CAAA,CAAC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACzC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAI,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAE,CAAA;AAClB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAC,CAAC;AACf,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACb,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,EAAE,CAAC;AACjB,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,MAAM,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC;AAC7B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,IAAI,CAAC,CAAA,CAAA,CAAG,CAAC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,IAAI,CAAC,CAAA;AAC9B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,MAAM,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAC,CAAC;AAClC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,OAAO,CAAI,CAAA,CAAA,CAAA,CAAC,MAAM,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,MAAM,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAC,CAAC;AACnE,CAAK,CAAA,CAAA,CAAA,CAAA;AACL,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAE,CAAA,CAAA;AACtB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAI,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,MAAM,CAAC;AAC7B,CAAK,CAAA,CAAA,CAAA,CAAA;AACL,CAAA,CAAA,CAAA,CAAI,SAAS,CAAG,CAAA,CAAA,CAAA;AAChB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC;AAC3B,CAAK,CAAA,CAAA,CAAA,CAAA;AACL,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAC,CAAA,CAAA,CAAG,CAAE,CAAA,CAAA;AACtB,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,KAAK,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAA;AACpC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAI,CAAA,CAAA,CAAA,CAAC,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC;AACnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,GAAG,CAAE,CAAA,CAAA;AAC/B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAG,CAAE,CAAA,CAAA,CAAA,CAAG,CAAC,CAAE,CAAA,CAAA;AAChE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA,CAAA,CAAG,CAAC,CAAG,CAAA,CAAA,CAAA,CAAA,CAAG,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC;AACxD,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACb,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAK,CAAA,CAAA,CAAA,CAAA;AACL,CAAA,CAAA,CAAA,CAAI,cAAc,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAE,CAAA,CAAA,CAAA,CAAG,IAAI,CAAE,CAAA,CAAA;AACnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAG,CAAA,CAAA,CAAA,CAAE,CAAC;AACrB,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,UAAU,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC,CAAE,CAAA,CAAA;AACzC,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,GAAG,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC,CAAC;AACpC,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC;AACxB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,WAAW,CAAE,CAAA,CAAA;AAC5C,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC;AAC5B,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAC,CAAC;AACX,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAI,CAAA,CAAA,CAAA,CAAC,CAAE,CAAA,CAAC,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAE,CAAA,CAAC,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACzE,CAAK,CAAA,CAAA,CAAA,CAAA;AACL,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAC,CAAA,CAAA,CAAA,CAAI,CAAE,CAAA,CAAA;AACxB,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,IAAI,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAC;AACnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,IAAI,CAAI,CAAA,CAAA,CAAA,CAAC,UAAU,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,KAAK,CAAC,CAAA;AACxC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAI,CAAA,CAAA,CAAA,CAAC,CAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC;AACtC,CAAK,CAAA,CAAA,CAAA,CAAA;AACL,CAAA,CAAA,CAAA,CAAI,kBAAkB,CAAG,CAAA,CAAA,CAAA;AACzB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC;AAC3B,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,IAAI,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAC,CAAC;AACxC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,MAAM,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAI,CAAA,CAAA,CAAA,CAAC,SAAS,CAAC;AACzC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,MAAM,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAI,CAAA,CAAA,CAAA,CAAC,MAAM,CAAC;AACnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,MAAM,CAAE,CAAA,CAAA,CAAA,CAAG,CAAI,CAAA,CAAA,CAAA,CAAC,EAAE,CAAC;AAC3B,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAI,CAAA,CAAA,CAAA,CAAC,CAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC;AACxE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,MAAM,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,MAAM,CAAC,CAAA,CAAE,IAAI,CAAE,CAAA,CAAC,CAAC,CAAC;AAC7E,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAI,CAAA,CAAA,CAAA,CAAC,CAAE,CAAA,CAAC,SAAS,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,GAAG,CAAE,CAAA,CAAA;AAClF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,KAAK,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,EAAE,CAAC;AACrC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,IAAI,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,UAAU,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,GAAG,CAAC,CAAA;AAC3C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC;AAC3C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAE,CAAA,CAAC,CAAG,CAAA,CAAA,CAAC,CAAC;AACpB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAC,CAAC;AACX,CAAK,CAAA,CAAA,CAAA,CAAA;AACL,CAAA,CAAA,CAAA,CAAI,eAAe,CAAG,CAAA,CAAA,CAAA;AACtB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAG,CAAA,CAAA,CAAA,CAAE,CAAC;AAC9B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,SAAS,CAAE,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAC;AAClF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAI,CAAA,CAAA,CAAA,CAAA;AACZ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,IAAI,CAAI,CAAA,CAAA,CAAA,CAAC,CAAE,CAAA,CAAC,YAAY,CAAE,CAAA,CAAA;AACtC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,YAAY,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAI,CAAA,CAAA,CAAA,CAAC,CAAE,CAAA,CAAC,YAAY,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,EAAE,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAC;AACvF,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACb,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,GAAG,CAAE,CAAA,CAAA;AACpB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAE,CAAA,CAAA;AAC5C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,GAAG,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,GAAG,CAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,YAAY,CAAC;AAChE,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAC,CAAA,CAAA,CAAA,CAAI,KAAK,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACrC,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAG,CAAA,CAAA,CAAA,CAAE,CAAC;AAClC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,GAAG,CAAC;AAC1B,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAC;AAC/C,CAAK,CAAA,CAAA,CAAA,CAAA;AACL,CAAA,CAAA,CAAA,CAAI,CAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,MAAM,CAAE,CAAA,CAAA;AAC1C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,IAAI,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAC,CAAC;AACnE,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,IAAI,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkB,IAAI,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,IAAI,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,WAAW,CAAC,CAAA,CAAA,CAAG,CAAC,CAAE,CAAA,CAAA;AAChG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,YAAY,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,MAAM,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC;AAC/F,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,IAAI,CAAI,CAAA,CAAA,CAAA,CAAC,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,YAAY,CAAC,CAAA;AAClD,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAC;AACpC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,IAAI,CAAC;AACpB,CAAK,CAAA,CAAA,CAAA,CAAA;AACL,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,CAAC,CAAA,CAAA,CAAA,CAAI,CAAE,CAAA,CAAA;AAC1B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,OAAO,CAAI,CAAA,CAAA,CAAA,CAAC,MAAM,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAC;AACjC,CAAK,CAAA,CAAA,CAAA,CAAA;AACL,CAAC;AACM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASM,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,KAAK,CAAE,CAAA,CAAA;AAClC,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC;AACjB,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,IAAI,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,IAAI,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAC;AAChC,CAAA,CAAA,CAAA,CAAI,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACX,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,EAAE,CAAI,CAAA,CAAA,CAAA,CAAC,EAAE,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA;AAC9B,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,EAAE,CAAI,CAAA,CAAA,CAAA,CAAC,GAAG,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA;AAChC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,EAAE,CAAI,CAAA,CAAA,CAAA,CAAC,SAAS,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA;AAC5C,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,EAAE,CAAI,CAAA,CAAA,CAAA,CAAC,SAAS,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA;AAC5C,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,EAAE,CAAI,CAAA,CAAA,CAAA,CAAC,YAAY,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA;AAClD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAI,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA;AAC3B,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC;AACN,CAAA;;AC1KA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAC,CAAA,CAAA,CAAA,CAAI,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;AACvB,CAAA,CAAE,OAAOC,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAA,CAAEC,MAAI,CAAC;AAC1B,CAAA,CAAA;;ACSA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,GAAG,CAAiC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACvD,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAuB,GAAG,CAA8D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAC9F;AACA,CAAA,CAAA,CAAA,CAAIC,WAAS,CAAC;AACd,CAAI,CAAA,CAAA,CAAA,CAAA;AACJ,CAAA,CAAEA,WAAS,CAAGC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAE,CAAA,CAAA;AACZ,CAAA,CAAED,WAAS,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAC,CAAA,CAAA,CAAG,EAAE,CAAC;AAC5B,CAAC;AACD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,SAAS,CAAC,CAAC,CAAEA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAAC,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAC;AACnF;AACe,CAAA,CAAA;AACf,CAAA,CAAE,MAAM,CAAE,CAAA,CAAA;AACV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIE,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAClB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIC,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACf,CAAG,CAAA,CAAA,CAAA;AACH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEC,CAAK,CAAA,CAAA;AACP,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,EAAE,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAClB,CAAA,CAAE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC,CAAA,CAAA,CAAG,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;AACnB,CAAA,CAAA,CAAA,CAAI,OAAO,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAG,CAAA,CAAA,CAAC,GAAG,CAAC;AAC3B,CAAG,CAAA,CAAA,CAAA;AACH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,EAAE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACvB,CAAA,CAAA,CAAA,CAAI,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,uBAAuB,CAAC;AAC7C,CAAG,CAAA,CAAA,CAAA;AACH,CAAA,CAAE,CAAiB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACnB,CAAA,CAAE,YAAY,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,IAAI,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,GAAG,CAAE,CAAA,CAAA;AAC7C,CAAA,CAAE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACR,CAAA,CAAE,IAAI,CAAE,CAAA,CAAA;AACR,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACZ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAId,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACX,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIe,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACX,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACZ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIlB,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACX,CAAG,CAAA,CAAA,CAAA;AACH,CAAA,CAAE,OAAO,CAAE,CAAA,CAAA;AACX,CAAA,CAAA,CAAA,CAAI,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAC,CAAI,CAAA,CAAA,CAAA,CAAA;AAC5B,CAAA,CAAA,CAAA,CAAI,CAAG,CAAA,CAAA,CAAA,CAAE,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAG,CAAA,CAAA,CAAA;AACpB,CAAA,CAAA,CAAA,CAAI,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAE,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,IAAI,CAAC,CAAA;AACtE,CAAA,CAAA,CAAA,CAAI,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACpC,CAAA,CAAA,CAAA,CAAI,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAA;AACtB,CAAA,CAAA,CAAA,CAAI,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAC9B,CAAA,CAAA,CAAA,CAAI,UAAU,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,MAAM,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,GAAG,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,MAAM,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,GAAG,CAAI,CAAA,CAAA,CAAA;AAC7F,CAAG,CAAA,CAAA,CAAA;AACH,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAEI,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACd,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACjB,CAAA,CAAA,CAAA,CAAI,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,aAAa,CAAC;AACnC,CAAG,CAAA,CAAA,CAAA;AACH,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,EAAE,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAC1B,CAAA,CAAA,CAAA,CAAI,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,uBAAuB,CAAC;AAC7C,CAAG,CAAA,CAAA,CAAA;AACH,CAAA,CAAE,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC,CAAA,CAAA,CAAG,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;AACxB,CAAA,CAAA,CAAA,CAAI,OAAO,CAAC,CAAA,CAAA,CAAG,CAAG,CAAA,CAAA,CAAC,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA;AAC1B,CAAG,CAAA,CAAA,CAAA;AACH,CAAE,CAAA,CAAA,CAAA,CAAA,CAAI,CAAE,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAA;AACb,CAAA,CAAA,CAAA,CAAI,SAAS,CAAEJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAO,CAACU,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,kBAAkB,CAAC,CAAA;AACrD,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,EAAE,CAAK,CAAA,CAAA,CAAA,CAAA;AACtB,CAAA,CAAA,CAAG,CAAC;AACJ,CAAA,CAAA,CAAA;;ACxEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAIO,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqB,GAAG,CAAC,CAAA,CAAA,CAAA,CAAI,EAAE,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,GAAG,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;AACpE,CAAA,CAAA,CAAA,CAAI,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAG,CAAA,CAAA,CAAA,CAAE,CAAC;AAC7B,CAAA,CAAA,CAAA,CAAI,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC;AACxB,CAAA,CAAA,CAAA,CAAI,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,cAAc,CAAC,CAAC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG,CAAE,CAAA,CAAC,CAAC,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;AACzD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAG,CAAA,CAAA,CAAC,CAAC;AAC3B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,MAAM,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,IAAI,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC;AAChC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,MAAM,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,QAAQ,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAC;AACzC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAE,CAAA,CAAA;AAC/B,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,KAAK,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,IAAI,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,SAAS,CAAE,CAAA,CAAA;AACvD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,aAAa,CAAC,CAAA,CAAA,CAAG,CAAC,CAAA,CAAA,CAAG,KAAK,CAAC;AAC3C,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACb,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,KAAK,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,IAAI,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,SAAS,CAAE,CAAA,CAAA;AACxD,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC;AAC3B,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACb,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC;AAC3B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAG,CAAA,CAAA,CAAC,CAAC,CAAC,EAAE,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAA4B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAG,CAAA,CAAA,CAAC,CAAC,CAAC,CAAC,CAAC;AAChE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAC5C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAG,CAAA,CAAA,CAAC,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC;AAC9B,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAC;AACP,CAAA,CAAA,CAAA,CAAI,OAAO,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,EAAE,CAAC;AACtC,CAAC,CAAC;AACK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,cAAc,CAAG,CAAA,CAAA,CAAC,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,GAAG,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;AAC7C,CAAA,CAAA,CAAA,CAAI,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAGS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAC,CAAA,CAAA,CAAA,CAAI,CAAC,CAAC,CAAC;AACpD,CAAA,CAAA,CAAA,CAAI,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,cAAc,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA;AACtD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,OAAO,CAAE,CAAA,CAAA,CAAA,CAAG,CAAqB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,IAAI,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAE,CAAA,CAAA,CAAA,CAAG,CAAC,CAAC;AAC5F,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAI,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAE,CAAA,CAAA;AAC7D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAC,CAAC;AAClD,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAI,CAAA,CAAA,CAAA,CAAC,CAAuC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC;AAC1D,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAC,CAAC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAC,CAAG,CAAA,CAAA,CAAA,CAAE,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,CAAC,CAAC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAC,CAAC,EAAE,CAAC,CAAA,CAAE,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAC,CAAA,CAAA,CAAG,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAK,CAAA,CAAA,CAAA,CAAA,CAAC,CAAG,CAAA,CAAA,CAAA,CAAE,CAAG,CAAA,CAAA,CAAA,CAAA,CAAG,CAAC,CAAA,CAAE,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAC,CAAC,CAAC,CAAE,CAAA,CAAC,CAAC;AAC9L,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,aAAa,CAAC;AACjC,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC;AACN,CAAC,CAAA;;AC1CD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAGA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACO,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,GAAGjB,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAACS,sBAAa,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,CAAC,CAAC,CAAA;;ACNhE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAIO,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAE,CAAA,CAAA;AAC7C,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,WAAW,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,QAAQ,CAACS,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAE,CAAA,CAAA,CAAA,CAAA,CAAI,EAAE,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,IAAI,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAC,CAAC;AAC7G,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,aAAa,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,QAAQ,CAACA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAE,CAAA,CAAA,CAAA,CAAA,CAAI,EAAE,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAQ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAI,CAAA,CAAA,CAAA,CAAA,CAAE,IAAI,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAC,CAAC,CAAC;AAC9G,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAC,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,EAAE,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAC,CAAC;AAC9C,CAAC;AACD,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAC,CAAA,CAAA,CAAA,CAAI,CAAE,CAAA,CAAA;AAC9B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAG,CAAI,CAAA,CAAA,CAAA,CAAC,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAG,CAAA,CAAA,CAAC,CAAC;AACpD,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAOC,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAE,CAAE,CAAA,CAAA,CAAA,CAAG,CAAE,CAAA,CAAA,CAAA,CAAA,CAAI,CAAE,CAAA,CAAC,CAAC;AAC/C,CAAA;;AChBA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAOA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAC;AACnC,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA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","x_google_ignoreList":[2,3,4,5,6,7,8,9,10,11]} diff --git a/sdk/apimanagement/api-management-custom-widgets-scaffolder/eslint.config.mjs b/sdk/apimanagement/api-management-custom-widgets-scaffolder/eslint.config.mjs index 70851f32abb3..94dd9e3bc1c9 100644 --- a/sdk/apimanagement/api-management-custom-widgets-scaffolder/eslint.config.mjs +++ b/sdk/apimanagement/api-management-custom-widgets-scaffolder/eslint.config.mjs @@ -7,4 +7,13 @@ export default [ "@azure/azure-sdk/github-source-headers": "off", }, }, + { + // shebang needs to come first + files: ["src/bin/execute.ts"], + rules: { + "n/no-process-exit": "off", + "n/hashbang": "off", + "@azure/azure-sdk/github-source-headers": "off", + }, + }, ]; diff --git a/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/bin/execute-configs.ts b/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/bin/execute-configs.ts index 9969f2506a7c..e4d2bb5623bf 100644 --- a/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/bin/execute-configs.ts +++ b/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/bin/execute-configs.ts @@ -1,13 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - Configs, - ServiceInformation, - Options, - TECHNOLOGIES, - WidgetConfig, -} from "../scaffolding.js"; +import type { Configs, ServiceInformation, Options, WidgetConfig } from "../scaffolding.js"; +import { TECHNOLOGIES } from "../scaffolding.js"; export const fieldIdToName: Record< keyof (WidgetConfig & ServiceInformation & Options) | string, diff --git a/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/bin/execute-helpers.ts b/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/bin/execute-helpers.ts index 36341579564f..5d4e3fc595bd 100644 --- a/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/bin/execute-helpers.ts +++ b/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/bin/execute-helpers.ts @@ -1,13 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - ReplaceTypesPreserveOptional, - Validate, - ValidateFnc, - fieldIdToName, -} from "./execute-configs.js"; -import { Configs } from "../scaffolding.js"; +import type { ReplaceTypesPreserveOptional, Validate, ValidateFnc } from "./execute-configs.js"; +import { fieldIdToName } from "./execute-configs.js"; +import type { Configs } from "../scaffolding.js"; import { hideBin } from "yargs/helpers"; import yargsParser from "yargs-parser"; diff --git a/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/bin/execute.ts b/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/bin/execute.ts index cc3f4381ff0f..12b401b1d771 100644 --- a/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/bin/execute.ts +++ b/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/bin/execute.ts @@ -3,7 +3,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Log, buildGetConfig } from "./execute-helpers.js"; +import type { Log } from "./execute-helpers.js"; +import { buildGetConfig } from "./execute-helpers.js"; import { prefixUrlProtocol, promptServiceInformation, diff --git a/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/generateProject.ts b/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/generateProject.ts index 75df05d8c023..4b9ab4385170 100644 --- a/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/generateProject.ts +++ b/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/generateProject.ts @@ -1,12 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { ServiceInformation, Options, WidgetConfig } from "./scaffolding.js"; import { - ServiceInformation, OVERRIDE_DEFAULT_PORT, OVERRIDE_PORT_KEY, - Options, - WidgetConfig, displayNameToName, widgetFolderName, } from "./scaffolding.js"; diff --git a/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/getTemplates.ts b/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/getTemplates.ts index 1099a78c1cd8..90e1e111b28b 100644 --- a/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/getTemplates.ts +++ b/sdk/apimanagement/api-management-custom-widgets-scaffolder/src/getTemplates.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ScaffoldTech } from "./scaffolding.js"; +import type { ScaffoldTech } from "./scaffolding.js"; import { glob } from "glob"; import { join as pathJoin } from "node:path"; import { sourceDir } from "./sourceDir.js"; diff --git a/sdk/apimanagement/api-management-custom-widgets-scaffolder/test/node/generateProject.spec.ts b/sdk/apimanagement/api-management-custom-widgets-scaffolder/test/node/generateProject.spec.ts index 75b736606b08..e6f80c70eb2b 100644 --- a/sdk/apimanagement/api-management-custom-widgets-scaffolder/test/node/generateProject.spec.ts +++ b/sdk/apimanagement/api-management-custom-widgets-scaffolder/test/node/generateProject.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TECHNOLOGIES, WidgetConfig, displayNameToName } from "../../src/scaffolding.js"; +import type { WidgetConfig } from "../../src/scaffolding.js"; +import { TECHNOLOGIES, displayNameToName } from "../../src/scaffolding.js"; import { describe, it, assert, vi, beforeEach, afterEach } from "vitest"; vi.mock("node:fs/promises", async () => { diff --git a/sdk/apimanagement/api-management-custom-widgets-tools/review/api-management-custom-widgets-tools.api.md b/sdk/apimanagement/api-management-custom-widgets-tools/review/api-management-custom-widgets-tools.api.md index 347d6c11de2d..9dcdb37408a2 100644 --- a/sdk/apimanagement/api-management-custom-widgets-tools/review/api-management-custom-widgets-tools.api.md +++ b/sdk/apimanagement/api-management-custom-widgets-tools/review/api-management-custom-widgets-tools.api.md @@ -4,7 +4,7 @@ ```ts -import { InteractiveBrowserCredentialNodeOptions } from '@azure/identity'; +import type { InteractiveBrowserCredentialNodeOptions } from '@azure/identity'; // @public export const APIM_ASK_FOR_SECRETS_MESSAGE_KEY = "askForSecretsMSAPIM"; diff --git a/sdk/apimanagement/api-management-custom-widgets-tools/src/node/CustomWidgetBlobService.ts b/sdk/apimanagement/api-management-custom-widgets-tools/src/node/CustomWidgetBlobService.ts index 0a64a984faa0..54555aecb64e 100644 --- a/sdk/apimanagement/api-management-custom-widgets-tools/src/node/CustomWidgetBlobService.ts +++ b/sdk/apimanagement/api-management-custom-widgets-tools/src/node/CustomWidgetBlobService.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { BlobServiceClient, BlockBlobUploadResponse } from "@azure/storage-blob"; +import type { BlockBlobUploadResponse } from "@azure/storage-blob"; +import { BlobServiceClient } from "@azure/storage-blob"; import { buildBlobConfigPath, buildBlobDataPath } from "../paths.js"; export type Config = Record; diff --git a/sdk/apimanagement/api-management-custom-widgets-tools/src/node/deploy.ts b/sdk/apimanagement/api-management-custom-widgets-tools/src/node/deploy.ts index fe934aadf50c..cbb82b78a919 100644 --- a/sdk/apimanagement/api-management-custom-widgets-tools/src/node/deploy.ts +++ b/sdk/apimanagement/api-management-custom-widgets-tools/src/node/deploy.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import CustomWidgetBlobService, { Config } from "./CustomWidgetBlobService.js"; -import { InteractiveBrowserCredentialNodeOptions } from "@azure/identity"; +import type { Config } from "./CustomWidgetBlobService.js"; +import CustomWidgetBlobService from "./CustomWidgetBlobService.js"; +import type { InteractiveBrowserCredentialNodeOptions } from "@azure/identity"; import { APIM_CONFIG_FILE_NAME } from "../paths.js"; import fs from "node:fs"; import getStorageSasUrl from "./getStorageSasUrl.js"; diff --git a/sdk/apimanagement/api-management-custom-widgets-tools/src/node/getStorageSasUrl.ts b/sdk/apimanagement/api-management-custom-widgets-tools/src/node/getStorageSasUrl.ts index 1436940a4bb3..d1d58d814c5c 100644 --- a/sdk/apimanagement/api-management-custom-widgets-tools/src/node/getStorageSasUrl.ts +++ b/sdk/apimanagement/api-management-custom-widgets-tools/src/node/getStorageSasUrl.ts @@ -5,7 +5,7 @@ import { InteractiveBrowserCredential, type InteractiveBrowserCredentialNodeOptions as IBCNOptions, } from "@azure/identity"; -import { ServiceInformation } from "./deploy.js"; +import type { ServiceInformation } from "./deploy.js"; import { getClient } from "@azure-rest/core-client"; async function getAccessToken( diff --git a/sdk/appconfiguration/app-configuration/review/app-configuration.api.md b/sdk/appconfiguration/app-configuration/review/app-configuration.api.md index 833a8682f377..c4f47e5058b1 100644 --- a/sdk/appconfiguration/app-configuration/review/app-configuration.api.md +++ b/sdk/appconfiguration/app-configuration/review/app-configuration.api.md @@ -4,13 +4,13 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; -import { CompatResponse } from '@azure/core-http-compat'; -import { OperationOptions } from '@azure/core-client'; -import { OperationState } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { SimplePollerLike } from '@azure/core-lro'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { CompatResponse } from '@azure/core-http-compat'; +import type { OperationOptions } from '@azure/core-client'; +import type { OperationState } from '@azure/core-lro'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { SimplePollerLike } from '@azure/core-lro'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AddConfigurationSettingOptions extends OperationOptions { diff --git a/sdk/appconfiguration/app-configuration/src/appConfigCredential.ts b/sdk/appconfiguration/app-configuration/src/appConfigCredential.ts index afed205d1730..cdec97eeae3b 100644 --- a/sdk/appconfiguration/app-configuration/src/appConfigCredential.ts +++ b/sdk/appconfiguration/app-configuration/src/appConfigCredential.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/appconfiguration/app-configuration/src/appConfigurationClient.ts b/sdk/appconfiguration/app-configuration/src/appConfigurationClient.ts index 9c7cf127a7a4..1d3c3b843114 100644 --- a/sdk/appconfiguration/app-configuration/src/appConfigurationClient.ts +++ b/sdk/appconfiguration/app-configuration/src/appConfigurationClient.ts @@ -4,7 +4,7 @@ // https://azure.github.io/azure-sdk/typescript_design.html#ts-config-lib /// -import { +import type { AddConfigurationSettingOptions, AddConfigurationSettingParam, AddConfigurationSettingResponse, @@ -40,7 +40,7 @@ import { UpdateSnapshotOptions, UpdateSnapshotResponse, } from "./models.js"; -import { +import type { AppConfigurationGetKeyValuesHeaders, AppConfigurationGetRevisionsHeaders, AppConfigurationGetSnapshotsHeaders, @@ -51,18 +51,19 @@ import { GetLabelsResponse, AppConfigurationGetLabelsHeaders, } from "./generated/src/models/index.js"; -import { InternalClientPipelineOptions } from "@azure/core-client"; -import { PagedAsyncIterableIterator, PagedResult, getPagedAsyncIterator } from "@azure/core-paging"; -import { - PipelinePolicy, - bearerTokenAuthenticationPolicy, - RestError, -} from "@azure/core-rest-pipeline"; +import type { InternalClientPipelineOptions } from "@azure/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { PipelinePolicy, RestError } from "@azure/core-rest-pipeline"; +import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; import { SyncTokens, syncTokenPolicy } from "./internal/synctokenpolicy.js"; -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { SendConfigurationSettingsOptions, SendLabelsRequestOptions, +} from "./internal/helpers.js"; +import { assertResponse, checkAndFormatIfAndIfNoneMatch, extractAfterTokenFromLinkHeader, @@ -81,12 +82,12 @@ import { transformSnapshotResponse, } from "./internal/helpers.js"; import { AppConfiguration } from "./generated/src/appConfiguration.js"; -import { FeatureFlagValue } from "./featureFlag.js"; -import { SecretReferenceValue } from "./secretReference.js"; +import type { FeatureFlagValue } from "./featureFlag.js"; +import type { SecretReferenceValue } from "./secretReference.js"; import { appConfigKeyCredentialPolicy } from "./appConfigCredential.js"; import { tracingClient } from "./internal/tracing.js"; import { logger } from "./logger.js"; -import { OperationState, SimplePollerLike } from "@azure/core-lro"; +import type { OperationState, SimplePollerLike } from "@azure/core-lro"; import { appConfigurationApiVersion } from "./internal/constants.js"; const ConnectionStringRegex = /Endpoint=(.*);Id=(.*);Secret=(.*)/; diff --git a/sdk/appconfiguration/app-configuration/src/featureFlag.ts b/sdk/appconfiguration/app-configuration/src/featureFlag.ts index 67e6d7ebaaa1..3ad1e5a1ce58 100644 --- a/sdk/appconfiguration/app-configuration/src/featureFlag.ts +++ b/sdk/appconfiguration/app-configuration/src/featureFlag.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ConfigurationSetting, ConfigurationSettingParam } from "./models.js"; -import { JsonFeatureFlagValue } from "./internal/jsonModels.js"; +import type { ConfigurationSetting, ConfigurationSettingParam } from "./models.js"; +import type { JsonFeatureFlagValue } from "./internal/jsonModels.js"; import { logger } from "./logger.js"; /** diff --git a/sdk/appconfiguration/app-configuration/src/internal/helpers.ts b/sdk/appconfiguration/app-configuration/src/internal/helpers.ts index f39de9b6a761..69b4df5b80bb 100644 --- a/sdk/appconfiguration/app-configuration/src/internal/helpers.ts +++ b/sdk/appconfiguration/app-configuration/src/internal/helpers.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ConfigurationSetting, ConfigurationSettingParam, HttpOnlyIfChangedField, @@ -16,21 +16,19 @@ import { EtagEntity, ListLabelsOptions, } from "../models.js"; -import { FeatureFlagHelper, FeatureFlagValue, featureFlagContentType } from "../featureFlag.js"; -import { +import type { FeatureFlagValue } from "../featureFlag.js"; +import { FeatureFlagHelper, featureFlagContentType } from "../featureFlag.js"; +import type { GetKeyValuesOptionalParams, GetLabelsOptionalParams, GetSnapshotsOptionalParams, KeyValue, } from "../generated/src/models/index.js"; -import { - SecretReferenceHelper, - SecretReferenceValue, - secretReferenceContentType, -} from "../secretReference.js"; +import type { SecretReferenceValue } from "../secretReference.js"; +import { SecretReferenceHelper, secretReferenceContentType } from "../secretReference.js"; import { isDefined } from "@azure/core-util"; import { logger } from "../logger.js"; -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; /** * Options for listConfigurationSettings that allow for filtering based on keys, labels and other fields. diff --git a/sdk/appconfiguration/app-configuration/src/internal/synctokenpolicy.ts b/sdk/appconfiguration/app-configuration/src/internal/synctokenpolicy.ts index 784e14005e2e..8283f940a8b3 100644 --- a/sdk/appconfiguration/app-configuration/src/internal/synctokenpolicy.ts +++ b/sdk/appconfiguration/app-configuration/src/internal/synctokenpolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/appconfiguration/app-configuration/src/models.ts b/sdk/appconfiguration/app-configuration/src/models.ts index 2ef7764b2129..d45074ec6f16 100644 --- a/sdk/appconfiguration/app-configuration/src/models.ts +++ b/sdk/appconfiguration/app-configuration/src/models.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CompatResponse } from "@azure/core-http-compat"; -import { FeatureFlagValue } from "./featureFlag.js"; -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; -import { SecretReferenceValue } from "./secretReference.js"; -import { +import type { CompatResponse } from "@azure/core-http-compat"; +import type { FeatureFlagValue } from "./featureFlag.js"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { SecretReferenceValue } from "./secretReference.js"; +import type { SnapshotComposition, ConfigurationSettingsFilter, ConfigurationSnapshot, diff --git a/sdk/appconfiguration/app-configuration/src/secretReference.ts b/sdk/appconfiguration/app-configuration/src/secretReference.ts index fd8b4c7f0e50..190b613e405d 100644 --- a/sdk/appconfiguration/app-configuration/src/secretReference.ts +++ b/sdk/appconfiguration/app-configuration/src/secretReference.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ConfigurationSetting, ConfigurationSettingParam } from "./models.js"; -import { JsonSecretReferenceValue } from "./internal/jsonModels.js"; +import type { ConfigurationSetting, ConfigurationSettingParam } from "./models.js"; +import type { JsonSecretReferenceValue } from "./internal/jsonModels.js"; import { logger } from "./logger.js"; /** diff --git a/sdk/appconfiguration/app-configuration/test/internal/helpers.spec.ts b/sdk/appconfiguration/app-configuration/test/internal/helpers.spec.ts index 0d707ffbe336..58dc3b96b08d 100644 --- a/sdk/appconfiguration/app-configuration/test/internal/helpers.spec.ts +++ b/sdk/appconfiguration/app-configuration/test/internal/helpers.spec.ts @@ -1,15 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ConfigurationSetting, ConfigurationSettingParam, HttpResponseField, HttpResponseFields, - featureFlagContentType, - secretReferenceContentType, ConfigurationSettingId, } from "../../src/index.js"; +import { featureFlagContentType, secretReferenceContentType } from "../../src/index.js"; import { checkAndFormatIfAndIfNoneMatch, extractAfterTokenFromLinkHeader, @@ -23,9 +22,9 @@ import { transformKeyValueResponse, transformKeyValueResponseWithStatusCode, } from "../../src/internal/helpers.js"; -import { FeatureFlagValue } from "../../src/featureFlag.js"; -import { WebResourceLike } from "@azure/core-http-compat"; -import { SecretReferenceValue } from "../../src/secretReference.js"; +import type { FeatureFlagValue } from "../../src/featureFlag.js"; +import type { WebResourceLike } from "@azure/core-http-compat"; +import type { SecretReferenceValue } from "../../src/secretReference.js"; import { describe, it, assert } from "vitest"; describe("helper methods", () => { @@ -186,9 +185,9 @@ describe("helper methods", () => { url: "unused", abortSignal: { aborted: true, - // eslint-disable-next-line @typescript-eslint/no-empty-function + addEventListener: () => {}, - // eslint-disable-next-line @typescript-eslint/no-empty-function + removeEventListener: () => {}, }, method: "GET", diff --git a/sdk/appconfiguration/app-configuration/test/internal/node/http.spec.ts b/sdk/appconfiguration/app-configuration/test/internal/node/http.spec.ts index 0c0e424e02d1..364cd83e0a7f 100644 --- a/sdk/appconfiguration/app-configuration/test/internal/node/http.spec.ts +++ b/sdk/appconfiguration/app-configuration/test/internal/node/http.spec.ts @@ -8,16 +8,12 @@ import { startRecorder, } from "../../public/utils/testHelpers.js"; import { AppConfigurationClient } from "../../../src/index.js"; -import { InternalAppConfigurationClientOptions } from "../../../src/appConfigurationClient.js"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { InternalAppConfigurationClientOptions } from "../../../src/appConfigurationClient.js"; +import type { Recorder } from "@azure-tools/test-recorder"; import { NoOpCredential } from "@azure-tools/test-credential"; import { describe, it, assert, beforeEach, afterEach } from "vitest"; -import { - createHttpHeaders, - HttpClient, - PipelineRequest, - SendRequest, -} from "@azure/core-rest-pipeline"; +import type { HttpClient, PipelineRequest, SendRequest } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; describe("http request related tests", function () { describe("unit tests", () => { diff --git a/sdk/appconfiguration/app-configuration/test/internal/node/package.spec.ts b/sdk/appconfiguration/app-configuration/test/internal/node/package.spec.ts index 65cd1bbbae72..4e4d05f4ea08 100644 --- a/sdk/appconfiguration/app-configuration/test/internal/node/package.spec.ts +++ b/sdk/appconfiguration/app-configuration/test/internal/node/package.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { AppConfigurationClient } from "../../../src/appConfigurationClient.js"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { packageVersion } from "../../../src/internal/constants.js"; import { describe, it, assert } from "vitest"; diff --git a/sdk/appconfiguration/app-configuration/test/internal/node/throttlingRetryPolicy.spec.ts b/sdk/appconfiguration/app-configuration/test/internal/node/throttlingRetryPolicy.spec.ts index 35941ca8cee9..f8162896758d 100644 --- a/sdk/appconfiguration/app-configuration/test/internal/node/throttlingRetryPolicy.spec.ts +++ b/sdk/appconfiguration/app-configuration/test/internal/node/throttlingRetryPolicy.spec.ts @@ -2,13 +2,13 @@ // Licensed under the MIT License. import { AppConfigurationClient } from "../../../src/index.js"; -import { - createHttpHeaders, +import type { HttpClient, PipelineRequest, RestError, SendRequest, } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; import { randomUUID } from "@azure/core-util"; import { NoOpCredential } from "@azure-tools/test-credential"; import { describe, it, assert, beforeEach, expect } from "vitest"; diff --git a/sdk/appconfiguration/app-configuration/test/public/etags.spec.ts b/sdk/appconfiguration/app-configuration/test/public/etags.spec.ts index ae35f8c92799..c622854a74d1 100644 --- a/sdk/appconfiguration/app-configuration/test/public/etags.spec.ts +++ b/sdk/appconfiguration/app-configuration/test/public/etags.spec.ts @@ -1,14 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, testPollingOptions } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { testPollingOptions } from "@azure-tools/test-recorder"; import { assertThrowsRestError, createAppConfigurationClientForTests, deleteKeyCompletely, startRecorder, } from "./utils/testHelpers.js"; -import { AppConfigurationClient } from "../../src/index.js"; +import type { AppConfigurationClient } from "../../src/index.js"; import { describe, it, assert, beforeEach, afterEach } from "vitest"; describe("etags", () => { diff --git a/sdk/appconfiguration/app-configuration/test/public/featureFlag.spec.ts b/sdk/appconfiguration/app-configuration/test/public/featureFlag.spec.ts index b2fedafc2e56..f8978fe92843 100644 --- a/sdk/appconfiguration/app-configuration/test/public/featureFlag.spec.ts +++ b/sdk/appconfiguration/app-configuration/test/public/featureFlag.spec.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AddConfigurationSettingResponse, AppConfigurationClient, ConfigurationSetting, - featureFlagContentType, - featureFlagPrefix, } from "../../src/index.js"; -import { FeatureFlagValue, isFeatureFlag, parseFeatureFlag } from "../../src/featureFlag.js"; -import { Recorder } from "@azure-tools/test-recorder"; +import { featureFlagContentType, featureFlagPrefix } from "../../src/index.js"; +import type { FeatureFlagValue } from "../../src/featureFlag.js"; +import { isFeatureFlag, parseFeatureFlag } from "../../src/featureFlag.js"; +import type { Recorder } from "@azure-tools/test-recorder"; import { createAppConfigurationClientForTests, startRecorder } from "./utils/testHelpers.js"; import { describe, it, assert, beforeEach, afterEach } from "vitest"; diff --git a/sdk/appconfiguration/app-configuration/test/public/index.readonlytests.spec.ts b/sdk/appconfiguration/app-configuration/test/public/index.readonlytests.spec.ts index 82e92b678964..8263ba3f4541 100644 --- a/sdk/appconfiguration/app-configuration/test/public/index.readonlytests.spec.ts +++ b/sdk/appconfiguration/app-configuration/test/public/index.readonlytests.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { assertThrowsAbortError, assertThrowsRestError, @@ -9,7 +10,7 @@ import { deleteKeyCompletely, startRecorder, } from "./utils/testHelpers.js"; -import { AppConfigurationClient } from "../../src/index.js"; +import type { AppConfigurationClient } from "../../src/index.js"; import { describe, it, assert, beforeEach, afterEach } from "vitest"; describe("AppConfigurationClient (set|clear)ReadOnly", () => { @@ -72,7 +73,7 @@ describe("AppConfigurationClient (set|clear)ReadOnly", () => { // Skipping all "accepts operation options flaky tests" https://github.com/Azure/azure-sdk-for-js/issues/26447 it.skip("accepts operation options", async function (ctx) { // Recorder checks for the recording and complains before core-rest-pipeline could throw the AbortError (Recorder v2 should help here) - // eslint-disable-next-line @typescript-eslint/no-invalid-this + if (isPlaybackMode()) ctx.skip(); await client.getConfigurationSetting({ key: testConfigSetting.key, diff --git a/sdk/appconfiguration/app-configuration/test/public/index.spec.ts b/sdk/appconfiguration/app-configuration/test/public/index.spec.ts index 8788d4d224bf..c7dacefe2390 100644 --- a/sdk/appconfiguration/app-configuration/test/public/index.spec.ts +++ b/sdk/appconfiguration/app-configuration/test/public/index.spec.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AppConfigurationClient, ConfigurationSetting, ConfigurationSettingParam, ListConfigurationSettingPage, } from "../../src/index.js"; -import { Recorder, delay, isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { delay, isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; import { assertEqualSettings, assertTags, @@ -328,7 +329,7 @@ describe("AppConfigurationClient", () => { // Skipping all "accepts operation options flaky tests" https://github.com/Azure/azure-sdk-for-js/issues/26447 it.skip("accepts operation options", async function (ctx) { // Recorder checks for the recording and complains before core-rest-pipeline could throw the AbortError (Recorder v2 should help here) - // eslint-disable-next-line @typescript-eslint/no-invalid-this + if (isPlaybackMode()) ctx.skip(); const key = recorder.variable( "deleteConfigTest", @@ -992,7 +993,7 @@ describe("AppConfigurationClient", () => { // More details at https://github.com/Azure/azure-sdk-for-js/issues/16743 // // Remove the following line if you want to hit the live service. - // eslint-disable-next-line @typescript-eslint/no-invalid-this + if (isLiveMode()) ctx.skip(); const key = recorder.variable( diff --git a/sdk/appconfiguration/app-configuration/test/public/secretReference.spec.ts b/sdk/appconfiguration/app-configuration/test/public/secretReference.spec.ts index 58562a823f6f..a36dc8c79a57 100644 --- a/sdk/appconfiguration/app-configuration/test/public/secretReference.spec.ts +++ b/sdk/appconfiguration/app-configuration/test/public/secretReference.spec.ts @@ -1,16 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AddConfigurationSettingResponse, AppConfigurationClient, ConfigurationSetting, SecretReferenceValue, +} from "../../src/index.js"; +import { isSecretReference, parseSecretReference, secretReferenceContentType, } from "../../src/index.js"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { createAppConfigurationClientForTests, startRecorder } from "./utils/testHelpers.js"; import { describe, it, assert, beforeEach, afterEach } from "vitest"; diff --git a/sdk/appconfiguration/app-configuration/test/public/snapshot.spec.ts b/sdk/appconfiguration/app-configuration/test/public/snapshot.spec.ts index 550c030fcffd..c79d52da530e 100644 --- a/sdk/appconfiguration/app-configuration/test/public/snapshot.spec.ts +++ b/sdk/appconfiguration/app-configuration/test/public/snapshot.spec.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, isPlaybackMode, testPollingOptions } from "@azure-tools/test-recorder"; -import { AppConfigurationClient } from "../../src/appConfigurationClient.js"; -import { +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode, testPollingOptions } from "@azure-tools/test-recorder"; +import type { AppConfigurationClient } from "../../src/appConfigurationClient.js"; +import type { ConfigurationSnapshot, ConfigurationSettingsFilter, CreateSnapshotResponse, diff --git a/sdk/appconfiguration/app-configuration/test/public/throwOrNotThrow.spec.ts b/sdk/appconfiguration/app-configuration/test/public/throwOrNotThrow.spec.ts index 027ec5d65396..1ec5930a236b 100644 --- a/sdk/appconfiguration/app-configuration/test/public/throwOrNotThrow.spec.ts +++ b/sdk/appconfiguration/app-configuration/test/public/throwOrNotThrow.spec.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AppConfigurationClient, ConfigurationSetting } from "../../src/index.js"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { AppConfigurationClient, ConfigurationSetting } from "../../src/index.js"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assertThrowsRestError, createAppConfigurationClientForTests, diff --git a/sdk/appconfiguration/app-configuration/test/public/tracing.spec.ts b/sdk/appconfiguration/app-configuration/test/public/tracing.spec.ts index 11f957342b12..e0764b053236 100644 --- a/sdk/appconfiguration/app-configuration/test/public/tracing.spec.ts +++ b/sdk/appconfiguration/app-configuration/test/public/tracing.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { createAppConfigurationClientForTests, startRecorder } from "./utils/testHelpers.js"; -import { AppConfigurationClient } from "../../src/appConfigurationClient.js"; +import type { AppConfigurationClient } from "../../src/appConfigurationClient.js"; import { describe, it, beforeEach, afterEach } from "vitest"; describe("supports tracing", () => { diff --git a/sdk/appconfiguration/app-configuration/test/public/utils/testHelpers.ts b/sdk/appconfiguration/app-configuration/test/public/utils/testHelpers.ts index dc8fc7efe0dd..128b89f690e7 100644 --- a/sdk/appconfiguration/app-configuration/test/public/utils/testHelpers.ts +++ b/sdk/appconfiguration/app-configuration/test/public/utils/testHelpers.ts @@ -1,29 +1,24 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - AppConfigurationClient, +import type { AppConfigurationClientOptions, ListSnapshotsPage, ConfigurationSnapshot, SettingLabel, ListLabelsPage, } from "../../../src/index.js"; -import { +import { AppConfigurationClient } from "../../../src/index.js"; +import type { ConfigurationSetting, ListConfigurationSettingPage, ListRevisionsPage, } from "../../../src/index.js"; -import { - Recorder, - RecorderStartOptions, - isPlaybackMode, - VitestTestContext, - assertEnvironmentVariable, -} from "@azure-tools/test-recorder"; -import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; -import { RestError } from "@azure/core-rest-pipeline"; -import { TokenCredential } from "@azure/identity"; +import type { RecorderStartOptions, VitestTestContext } from "@azure-tools/test-recorder"; +import { Recorder, isPlaybackMode, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import type { RestError } from "@azure/core-rest-pipeline"; +import type { TokenCredential } from "@azure/identity"; import { createTestCredential } from "@azure-tools/test-credential"; import { assert } from "vitest"; diff --git a/sdk/appcontainers/arm-appcontainers/package.json b/sdk/appcontainers/arm-appcontainers/package.json index 55038316b548..e05efad9bf81 100644 --- a/sdk/appcontainers/arm-appcontainers/package.json +++ b/sdk/appcontainers/arm-appcontainers/package.json @@ -56,11 +56,11 @@ "prepack": "npm run build", "pack": "npm pack 2>&1", "test": "npm run integration-test", - "test:node": "echo skipped", "test:browser": "echo skipped", + "test:node": "echo skipped", "unit-test": "npm run unit-test:node && npm run unit-test:browser", - "unit-test:node": "cross-env TEST_MODE=playback npm run integration-test:node", "unit-test:browser": "echo skipped", + "unit-test:node": "cross-env TEST_MODE=playback npm run integration-test:node", "update-snippets": "echo skipped" }, "dependencies": { diff --git a/sdk/appservice/arm-appservice-rest/review/arm-appservice.api.md b/sdk/appservice/arm-appservice-rest/review/arm-appservice.api.md index e112d01c73b9..4b1f46d9d9da 100644 --- a/sdk/appservice/arm-appservice-rest/review/arm-appservice.api.md +++ b/sdk/appservice/arm-appservice-rest/review/arm-appservice.api.md @@ -4,16 +4,16 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { LroEngineOptions } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { RequestParameters } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { LroEngineOptions } from '@azure/core-lro'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { PollerLike } from '@azure/core-lro'; +import type { PollOperationState } from '@azure/core-lro'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface AbnormalTimePeriod { diff --git a/sdk/appservice/arm-appservice-rest/src/clientDefinitions.ts b/sdk/appservice/arm-appservice-rest/src/clientDefinitions.ts index 0a7c9bf98358..9045655e247e 100644 --- a/sdk/appservice/arm-appservice-rest/src/clientDefinitions.ts +++ b/sdk/appservice/arm-appservice-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AppServiceCertificateOrdersListParameters, AppServiceCertificateOrdersValidatePurchaseInformationParameters, AppServiceCertificateOrdersListByResourceGroupParameters, @@ -655,7 +655,7 @@ import { WebAppsListWebJobsParameters, WebAppsGetWebJobParameters, } from "./parameters"; -import { +import type { AppServiceCertificateOrdersList200Response, AppServiceCertificateOrdersListdefaultResponse, AppServiceCertificateOrdersValidatePurchaseInformation204Response, @@ -2186,7 +2186,7 @@ import { WebAppsGetWebJob200Response, WebAppsGetWebJobdefaultResponse, } from "./responses"; -import { Client } from "@azure-rest/core-client"; +import type { Client } from "@azure-rest/core-client"; export interface AppServiceCertificateOrdersList { /** List all certificate orders in a subscription. */ diff --git a/sdk/appservice/arm-appservice-rest/src/paginateHelper.ts b/sdk/appservice/arm-appservice-rest/src/paginateHelper.ts index e27846d32a90..5d541b4e406d 100644 --- a/sdk/appservice/arm-appservice-rest/src/paginateHelper.ts +++ b/sdk/appservice/arm-appservice-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/appservice/arm-appservice-rest/src/parameters.ts b/sdk/appservice/arm-appservice-rest/src/parameters.ts index be989adb52ec..800039881fb3 100644 --- a/sdk/appservice/arm-appservice-rest/src/parameters.ts +++ b/sdk/appservice/arm-appservice-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RequestParameters } from "@azure-rest/core-client"; +import type { AppServiceCertificateOrder, AppServiceCertificateOrderPatchResource, AppServiceCertificateResource, diff --git a/sdk/appservice/arm-appservice-rest/src/pollingHelper.ts b/sdk/appservice/arm-appservice-rest/src/pollingHelper.ts index 8adbf36ab4d5..914ab5dd8d01 100644 --- a/sdk/appservice/arm-appservice-rest/src/pollingHelper.ts +++ b/sdk/appservice/arm-appservice-rest/src/pollingHelper.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { LongRunningOperation, - LroEngine, LroEngineOptions, LroResponse, PollerLike, PollOperationState, } from "@azure/core-lro"; +import { LroEngine } from "@azure/core-lro"; /** * Helper function that builds a Poller object to help polling a long running operation. diff --git a/sdk/appservice/arm-appservice-rest/src/responses.ts b/sdk/appservice/arm-appservice-rest/src/responses.ts index 387cd90b324f..2ac6620f200c 100644 --- a/sdk/appservice/arm-appservice-rest/src/responses.ts +++ b/sdk/appservice/arm-appservice-rest/src/responses.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { HttpResponse } from "@azure-rest/core-client"; +import type { AppServiceCertificateOrderCollectionOutput, DefaultErrorResponseOutput, AppServiceCertificateOrderOutput, diff --git a/sdk/appservice/arm-appservice-rest/src/webSiteManagementClient.ts b/sdk/appservice/arm-appservice-rest/src/webSiteManagementClient.ts index bf05254cf34e..96a148405690 100644 --- a/sdk/appservice/arm-appservice-rest/src/webSiteManagementClient.ts +++ b/sdk/appservice/arm-appservice-rest/src/webSiteManagementClient.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { WebSiteManagementClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { WebSiteManagementClient } from "./clientDefinitions"; export default function createClient( credentials: TokenCredential, diff --git a/sdk/appservice/arm-appservice-rest/test/public/appservice-rest.spec.ts b/sdk/appservice/arm-appservice-rest/test/public/appservice-rest.spec.ts index a685b14d73a6..5ad733e7ffae 100644 --- a/sdk/appservice/arm-appservice-rest/test/public/appservice-rest.spec.ts +++ b/sdk/appservice/arm-appservice-rest/test/public/appservice-rest.spec.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, isPlaybackMode, env } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode, env } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder, createClient } from "./utils/recordedClient"; -import { Context } from "mocha"; -import { WebSiteManagementClient, paginate, getLongRunningPoller } from "../../src/index"; +import type { Context } from "mocha"; +import type { WebSiteManagementClient } from "../../src/index"; +import { paginate, getLongRunningPoller } from "../../src/index"; export const testPollingOptions = { intervalInMs: isPlaybackMode() ? 0 : undefined, diff --git a/sdk/appservice/arm-appservice-rest/test/public/sampleTest.spec.ts b/sdk/appservice/arm-appservice-rest/test/public/sampleTest.spec.ts index 78de635beb5d..707dd944309e 100644 --- a/sdk/appservice/arm-appservice-rest/test/public/sampleTest.spec.ts +++ b/sdk/appservice/arm-appservice-rest/test/public/sampleTest.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("My test", () => { let recorder: Recorder; diff --git a/sdk/appservice/arm-appservice-rest/test/public/utils/recordedClient.ts b/sdk/appservice/arm-appservice-rest/test/public/utils/recordedClient.ts index 524af51d0c51..31a90eb757e5 100644 --- a/sdk/appservice/arm-appservice-rest/test/public/utils/recordedClient.ts +++ b/sdk/appservice/arm-appservice-rest/test/public/utils/recordedClient.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; -import { ClientOptions } from "@azure-rest/core-client"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder } from "@azure-tools/test-recorder"; +import type { ClientOptions } from "@azure-rest/core-client"; import { createTestCredential } from "@azure-tools/test-credential"; -import WebSiteClient, { WebSiteManagementClient } from "../../../src/index"; +import type { WebSiteManagementClient } from "../../../src/index"; +import WebSiteClient from "../../../src/index"; const envSetupForPlayback: { [k: string]: string } = { ENDPOINT: "https://endpoint", diff --git a/sdk/attestation/attestation/review/attestation.api.md b/sdk/attestation/attestation/review/attestation.api.md index 65f4ddb8b38d..ab90f994d16b 100644 --- a/sdk/attestation/attestation/review/attestation.api.md +++ b/sdk/attestation/attestation/review/attestation.api.md @@ -4,9 +4,9 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; -import { OperationOptions } from '@azure/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { OperationOptions } from '@azure/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export class AttestationAdministrationClient { diff --git a/sdk/attestation/attestation/src/attestationAdministrationClient.ts b/sdk/attestation/attestation/src/attestationAdministrationClient.ts index 0cce8fa0d0af..73b26ece9c01 100644 --- a/sdk/attestation/attestation/src/attestationAdministrationClient.ts +++ b/sdk/attestation/attestation/src/attestationAdministrationClient.ts @@ -5,7 +5,7 @@ import { GeneratedClient } from "./generated/generatedClient.js"; import { logger } from "./logger.js"; -import { +import type { AttestationCertificateManagementBody, GeneratedClientOptionalParams, JsonWebKey, @@ -14,7 +14,7 @@ import { import { bytesToString } from "./utils/utf8.js"; -import { +import type { AttestationResponse, AttestationSigner, AttestationTokenValidationOptions, @@ -24,8 +24,8 @@ import { } from "./models/index.js"; import { StoredAttestationPolicy } from "./models/storedAttestationPolicy.js"; -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; -import { TokenCredential } from "@azure/core-auth"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { TokenCredential } from "@azure/core-auth"; import { TypeDeserializer } from "./utils/typeDeserializer.js"; import * as Mappers from "./generated/models/mappers.js"; diff --git a/sdk/attestation/attestation/src/attestationClient.ts b/sdk/attestation/attestation/src/attestationClient.ts index ba019818a3a2..a787a6dd42a4 100644 --- a/sdk/attestation/attestation/src/attestationClient.ts +++ b/sdk/attestation/attestation/src/attestationClient.ts @@ -3,28 +3,30 @@ import { GeneratedClient } from "./generated/generatedClient.js"; -import { +import type { AttestationResult, AttestationSigner, AttestationTokenValidationOptions, } from "./models/index.js"; -import { +import type { GeneratedAttestationResult, InitTimeData, - KnownDataType, RuntimeData, } from "./generated/models/index.js"; +import { KnownDataType } from "./generated/models/index.js"; import { logger } from "./logger.js"; -import { GeneratedClientOptionalParams } from "./generated/models/index.js"; +import type { GeneratedClientOptionalParams } from "./generated/models/index.js"; import * as Mappers from "./generated/models/mappers.js"; -import { AttestationResponse, createAttestationResponse } from "./models/attestationResponse.js"; +import type { AttestationResponse } from "./models/attestationResponse.js"; +import { createAttestationResponse } from "./models/attestationResponse.js"; import { TypeDeserializer } from "./utils/typeDeserializer.js"; -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; import { bytesToString, stringToBytes } from "./utils/utf8.js"; import { _attestationResultFromGenerated } from "./models/attestationResult.js"; import { _attestationSignerFromGenerated } from "./models/attestationSigner.js"; diff --git a/sdk/attestation/attestation/src/models/attestationPolicyToken.ts b/sdk/attestation/attestation/src/models/attestationPolicyToken.ts index 7f8ca99ced26..339fabbf9062 100644 --- a/sdk/attestation/attestation/src/models/attestationPolicyToken.ts +++ b/sdk/attestation/attestation/src/models/attestationPolicyToken.ts @@ -3,7 +3,8 @@ import { StoredAttestationPolicy } from "./storedAttestationPolicy.js"; // import { AttestationSigningKey } from "./attestationSigningKey"; -import { AttestationToken, AttestationTokenImpl } from "./attestationToken.js"; +import type { AttestationToken } from "./attestationToken.js"; +import { AttestationTokenImpl } from "./attestationToken.js"; /** * diff --git a/sdk/attestation/attestation/src/models/attestationResponse.ts b/sdk/attestation/attestation/src/models/attestationResponse.ts index b39949336b5a..b076a0d0e4c2 100644 --- a/sdk/attestation/attestation/src/models/attestationResponse.ts +++ b/sdk/attestation/attestation/src/models/attestationResponse.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AttestationToken } from "./attestationToken.js"; +import type { AttestationToken } from "./attestationToken.js"; /** * An AttestationResponse represents the response from the Microsoft Azure diff --git a/sdk/attestation/attestation/src/models/attestationResult.ts b/sdk/attestation/attestation/src/models/attestationResult.ts index ea2a097c7c88..bc81f96871e7 100644 --- a/sdk/attestation/attestation/src/models/attestationResult.ts +++ b/sdk/attestation/attestation/src/models/attestationResult.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AttestationSigner } from "./index.js"; -import { GeneratedAttestationResult } from "../generated/index.js"; +import type { AttestationSigner } from "./index.js"; +import type { GeneratedAttestationResult } from "../generated/index.js"; import { _attestationSignerFromGenerated } from "./attestationSigner.js"; /** diff --git a/sdk/attestation/attestation/src/models/attestationSigner.ts b/sdk/attestation/attestation/src/models/attestationSigner.ts index 9bc5583211ac..75012d6bca36 100644 --- a/sdk/attestation/attestation/src/models/attestationSigner.ts +++ b/sdk/attestation/attestation/src/models/attestationSigner.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { JsonWebKey } from "../generated/models/index.js"; +import type { JsonWebKey } from "../generated/models/index.js"; import { pemFromBase64 } from "../utils/helpers.js"; /** diff --git a/sdk/attestation/attestation/src/models/attestationToken.ts b/sdk/attestation/attestation/src/models/attestationToken.ts index 0114c1cb8136..55906c771e14 100644 --- a/sdk/attestation/attestation/src/models/attestationToken.ts +++ b/sdk/attestation/attestation/src/models/attestationToken.ts @@ -5,10 +5,11 @@ /// import * as jsrsasign from "jsrsasign"; -import { JsonWebKey } from "../generated/models/index.js"; +import type { JsonWebKey } from "../generated/models/index.js"; import { base64UrlDecodeString } from "../utils/base64.js"; import { bytesToString } from "../utils/utf8.js"; -import { AttestationSigner, _attestationSignerFromGenerated } from "./attestationSigner.js"; +import type { AttestationSigner } from "./attestationSigner.js"; +import { _attestationSignerFromGenerated } from "./attestationSigner.js"; import * as Mappers from "../generated/models/mappers.js"; import { TypeDeserializer } from "../utils/typeDeserializer.js"; diff --git a/sdk/attestation/attestation/src/models/policyResult.ts b/sdk/attestation/attestation/src/models/policyResult.ts index 81b890f4d746..d1725ffbd8af 100644 --- a/sdk/attestation/attestation/src/models/policyResult.ts +++ b/sdk/attestation/attestation/src/models/policyResult.ts @@ -7,13 +7,14 @@ * */ -import { PolicyModification } from "./index.js"; +import type { PolicyModification } from "./index.js"; import * as Mappers from "../generated/models/mappers.js"; -import { PolicyResult as GeneratedPolicyResult } from "../generated/models/index.js"; +import type { PolicyResult as GeneratedPolicyResult } from "../generated/models/index.js"; import { TypeDeserializer } from "../utils/typeDeserializer.js"; -import { AttestationSigner, _attestationSignerFromGenerated } from "./attestationSigner.js"; +import type { AttestationSigner } from "./attestationSigner.js"; +import { _attestationSignerFromGenerated } from "./attestationSigner.js"; /** * The result of a policy certificate modification diff --git a/sdk/attestation/attestation/src/utils/typeDeserializer.ts b/sdk/attestation/attestation/src/utils/typeDeserializer.ts index c4803b8ac5b1..87eafef91bc3 100644 --- a/sdk/attestation/attestation/src/utils/typeDeserializer.ts +++ b/sdk/attestation/attestation/src/utils/typeDeserializer.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Mapper, createSerializer } from "@azure/core-client"; +import type { Mapper } from "@azure/core-client"; +import { createSerializer } from "@azure/core-client"; /** * The TypeDeserializer class enables easy access to the Attestation Model serialization diff --git a/sdk/attestation/attestation/test/browser/attestationTests.browser.spec.ts b/sdk/attestation/attestation/test/browser/attestationTests.browser.spec.ts index 3f22174dc074..8f59c0ccfb44 100644 --- a/sdk/attestation/attestation/test/browser/attestationTests.browser.spec.ts +++ b/sdk/attestation/attestation/test/browser/attestationTests.browser.spec.ts @@ -3,8 +3,8 @@ import { Recorder } from "@azure-tools/test-recorder"; +import type { EndpointType } from "../utils/recordedClient.js"; import { - EndpointType, createRecordedAdminClient, createRecordedClient, recorderOptions, diff --git a/sdk/attestation/attestation/test/public/attestationTests.spec.ts b/sdk/attestation/attestation/test/public/attestationTests.spec.ts index 393e2e9c47f8..8158718432cf 100644 --- a/sdk/attestation/attestation/test/public/attestationTests.spec.ts +++ b/sdk/attestation/attestation/test/public/attestationTests.spec.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { Recorder } from "@azure-tools/test-recorder"; +import type { EndpointType } from "../utils/recordedClient.js"; import { - EndpointType, createRecordedAdminClient, createRecordedClient, recorderOptions, diff --git a/sdk/attestation/attestation/test/public/policyGetSetTests.spec.ts b/sdk/attestation/attestation/test/public/policyGetSetTests.spec.ts index 2b9a47b09088..51c1c280b706 100644 --- a/sdk/attestation/attestation/test/public/policyGetSetTests.spec.ts +++ b/sdk/attestation/attestation/test/public/policyGetSetTests.spec.ts @@ -8,17 +8,14 @@ import * as jsrsasign from "jsrsasign"; import { Recorder, isLiveMode } from "@azure-tools/test-recorder"; +import type { EndpointType } from "../utils/recordedClient.js"; import { - EndpointType, createRecordedAdminClient, getIsolatedSigningKey, recorderOptions, } from "../utils/recordedClient.js"; -import { - AttestationType, - KnownAttestationType, - createAttestationPolicyToken, -} from "../../src/index.js"; +import type { AttestationType } from "../../src/index.js"; +import { KnownAttestationType, createAttestationPolicyToken } from "../../src/index.js"; import { createRSAKey, createX509Certificate, generateSha256Hash } from "../utils/cryptoUtils.js"; import { KnownPolicyModification } from "../../src/generated/index.js"; import { verifyAttestationSigningKey } from "../../src/utils/helpers.js"; diff --git a/sdk/attestation/attestation/test/public/tokenCertTests.spec.ts b/sdk/attestation/attestation/test/public/tokenCertTests.spec.ts index a99d30c21833..9e65271acffa 100644 --- a/sdk/attestation/attestation/test/public/tokenCertTests.spec.ts +++ b/sdk/attestation/attestation/test/public/tokenCertTests.spec.ts @@ -12,7 +12,7 @@ import { getAttestationUri, recorderOptions, } from "../utils/recordedClient.js"; -import { AttestationClient } from "../../src/index.js"; +import type { AttestationClient } from "../../src/index.js"; import { describe, it, assert, beforeEach, afterEach } from "vitest"; describe("TokenCertTests", function () { diff --git a/sdk/attestation/attestation/test/utils/recordedClient.ts b/sdk/attestation/attestation/test/utils/recordedClient.ts index cfc3298c0946..f7563ad0d78a 100644 --- a/sdk/attestation/attestation/test/utils/recordedClient.ts +++ b/sdk/attestation/attestation/test/utils/recordedClient.ts @@ -1,19 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - Recorder, - RecorderStartOptions, - assertEnvironmentVariable, - env, - isPlaybackMode, -} from "@azure-tools/test-recorder"; +import type { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable, env, isPlaybackMode } from "@azure-tools/test-recorder"; import { createTestCredential } from "@azure-tools/test-credential"; -import { - AttestationAdministrationClient, - AttestationClient, - AttestationClientOptions, -} from "../../src/index.js"; +import type { AttestationClientOptions } from "../../src/index.js"; +import { AttestationAdministrationClient, AttestationClient } from "../../src/index.js"; import { pemFromBase64 } from "../utils/helpers.js"; const envSetupForPlayback: { [k: string]: string } = { diff --git a/sdk/batch/batch-rest/review/batch.api.md b/sdk/batch/batch-rest/review/batch.api.md index c753eff05362..39de8d1e312b 100644 --- a/sdk/batch/batch-rest/review/batch.api.md +++ b/sdk/batch/batch-rest/review/batch.api.md @@ -5,17 +5,17 @@ ```ts import { AzureNamedKeyCredential } from '@azure/core-auth'; -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { PipelinePolicy } from '@azure/core-rest-pipeline'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { PipelinePolicy } from '@azure/core-rest-pipeline'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export type AccessScope = string; diff --git a/sdk/batch/batch-rest/src/batchClient.ts b/sdk/batch/batch-rest/src/batchClient.ts index bb10ce5c46fe..3007812b7152 100644 --- a/sdk/batch/batch-rest/src/batchClient.ts +++ b/sdk/batch/batch-rest/src/batchClient.ts @@ -1,10 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "./logger.js"; -import { TokenCredential, AzureNamedKeyCredential, isTokenCredential } from "@azure/core-auth"; -import { BatchClient } from "./clientDefinitions.js"; +import type { TokenCredential, AzureNamedKeyCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { BatchClient } from "./clientDefinitions.js"; import { createBatchSharedKeyCredentialsPolicy } from "./credentials/batchSharedKeyCredentials.js"; import { createReplacePoolPropertiesPolicy } from "./replacePoolPropertiesPolicy.js"; diff --git a/sdk/batch/batch-rest/src/clientDefinitions.ts b/sdk/batch/batch-rest/src/clientDefinitions.ts index fb7f59e47fdf..1b0e73a2cba9 100644 --- a/sdk/batch/batch-rest/src/clientDefinitions.ts +++ b/sdk/batch/batch-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ListApplicationsParameters, GetApplicationParameters, ListPoolUsageMetricsParameters, @@ -72,7 +72,7 @@ import { GetNodeFilePropertiesParameters, ListNodeFilesParameters, } from "./parameters.js"; -import { +import type { ListApplications200Response, ListApplicationsDefaultResponse, GetApplication200Response, @@ -214,7 +214,7 @@ import { ListNodeFiles200Response, ListNodeFilesDefaultResponse, } from "./responses.js"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface ListApplications { /** diff --git a/sdk/batch/batch-rest/src/credentials/batchSharedKeyCredentials.ts b/sdk/batch/batch-rest/src/credentials/batchSharedKeyCredentials.ts index 13d252517d8b..ed9a60bebc41 100644 --- a/sdk/batch/batch-rest/src/credentials/batchSharedKeyCredentials.ts +++ b/sdk/batch/batch-rest/src/credentials/batchSharedKeyCredentials.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { type AzureNamedKeyCredential } from "@azure/core-auth"; -import { HttpHeaders, HttpMethods, PipelinePolicy } from "@azure/core-rest-pipeline"; +import type { HttpHeaders, HttpMethods, PipelinePolicy } from "@azure/core-rest-pipeline"; import { createHmac } from "crypto"; export function createBatchSharedKeyCredentialsPolicy( diff --git a/sdk/batch/batch-rest/src/isUnexpected.ts b/sdk/batch/batch-rest/src/isUnexpected.ts index 9115381aa031..ba20678c5b7f 100644 --- a/sdk/batch/batch-rest/src/isUnexpected.ts +++ b/sdk/batch/batch-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ListApplications200Response, ListApplicationsDefaultResponse, GetApplication200Response, diff --git a/sdk/batch/batch-rest/src/paginateHelper.ts b/sdk/batch/batch-rest/src/paginateHelper.ts index 80517fea98bd..e6b7b5a0b41c 100644 --- a/sdk/batch/batch-rest/src/paginateHelper.ts +++ b/sdk/batch/batch-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/batch/batch-rest/src/parameters.ts b/sdk/batch/batch-rest/src/parameters.ts index 0c8f58f0558e..9005f8f0d8e9 100644 --- a/sdk/batch/batch-rest/src/parameters.ts +++ b/sdk/batch/batch-rest/src/parameters.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { BatchPoolCreateContent, BatchPoolUpdateContent, BatchPoolEnableAutoScaleContent, diff --git a/sdk/batch/batch-rest/src/replacePoolPropertiesPolicy.ts b/sdk/batch/batch-rest/src/replacePoolPropertiesPolicy.ts index 1587246856d4..d2af66ed1d07 100644 --- a/sdk/batch/batch-rest/src/replacePoolPropertiesPolicy.ts +++ b/sdk/batch/batch-rest/src/replacePoolPropertiesPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelinePolicy } from "@azure/core-rest-pipeline"; +import type { PipelinePolicy } from "@azure/core-rest-pipeline"; // import { AzureLogger } from "@azure/logger"; /** diff --git a/sdk/batch/batch-rest/src/responses.ts b/sdk/batch/batch-rest/src/responses.ts index dbd8a974ed68..2dc9bacfe932 100644 --- a/sdk/batch/batch-rest/src/responses.ts +++ b/sdk/batch/batch-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse } from "@azure-rest/core-client"; +import type { BatchApplicationListResultOutput, BatchErrorOutput, BatchApplicationOutput, diff --git a/sdk/batch/batch-rest/test/computeNodes.spec.ts b/sdk/batch/batch-rest/test/computeNodes.spec.ts index 9586582ab3bb..9ea9acdaae12 100644 --- a/sdk/batch/batch-rest/test/computeNodes.spec.ts +++ b/sdk/batch/batch-rest/test/computeNodes.spec.ts @@ -1,17 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, VitestTestContext, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder, VitestTestContext } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { createBatchClient, createRecorder } from "./utils/recordedClient.js"; -import { +import type { BatchClient, - isUnexpected, CreatePoolParameters, CreateNodeUserParameters, ReplaceNodeUserParameters, UploadBatchServiceLogsContent, UploadNodeLogsParameters, } from "../src/index.js"; +import { isUnexpected } from "../src/index.js"; import { fakeTestPasswordPlaceholder1 } from "./utils/fakeTestSecrets.js"; import { getResourceName, waitForNotNull } from "./utils/helpers.js"; import { describe, it, beforeAll, afterAll, beforeEach, afterEach, assert } from "vitest"; diff --git a/sdk/batch/batch-rest/test/jobSchedules.spec.ts b/sdk/batch/batch-rest/test/jobSchedules.spec.ts index 025cb9dad02e..111f2c0661b1 100644 --- a/sdk/batch/batch-rest/test/jobSchedules.spec.ts +++ b/sdk/batch/batch-rest/test/jobSchedules.spec.ts @@ -1,15 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, VitestTestContext, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder, VitestTestContext } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { createBatchClient, createRecorder } from "./utils/recordedClient.js"; -import { - isUnexpected, +import type { BatchJobSchedule, CreateJobScheduleParameters, BatchClient, CreatePoolParameters, } from "../src/index.js"; +import { isUnexpected } from "../src/index.js"; import { fakeTestPasswordPlaceholder1 } from "./utils/fakeTestSecrets.js"; import { getResourceName } from "./utils/helpers.js"; import moment from "moment"; diff --git a/sdk/batch/batch-rest/test/jobs.spec.ts b/sdk/batch/batch-rest/test/jobs.spec.ts index 48f24cd5d04c..55ed5493f0e4 100644 --- a/sdk/batch/batch-rest/test/jobs.spec.ts +++ b/sdk/batch/batch-rest/test/jobs.spec.ts @@ -1,16 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, VitestTestContext, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder, VitestTestContext } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { createBatchClient, createRecorder } from "./utils/recordedClient.js"; -import { +import type { BatchClient, BatchJobCreateContent, CreateJobParameters, CreatePoolParameters, UpdateJobParameters, - isUnexpected, } from "../src/index.js"; +import { isUnexpected } from "../src/index.js"; import { fakeTestPasswordPlaceholder1 } from "./utils/fakeTestSecrets.js"; import { getResourceName } from "./utils/helpers.js"; import { describe, it, beforeAll, afterAll, beforeEach, afterEach, assert } from "vitest"; diff --git a/sdk/batch/batch-rest/test/poolScaling.spec.ts b/sdk/batch/batch-rest/test/poolScaling.spec.ts index bdc31da3145a..e36b15eaf7c8 100644 --- a/sdk/batch/batch-rest/test/poolScaling.spec.ts +++ b/sdk/batch/batch-rest/test/poolScaling.spec.ts @@ -1,15 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, VitestTestContext, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder, VitestTestContext } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { createBatchClient, createRecorder } from "./utils/recordedClient.js"; -import { +import type { BatchClient, CreatePoolParameters, EnablePoolAutoScaleParameters, EvaluatePoolAutoScaleParameters, - isUnexpected, } from "../src/index.js"; +import { isUnexpected } from "../src/index.js"; import { fakeTestPasswordPlaceholder1 } from "./utils/fakeTestSecrets.js"; import { getResourceName, waitForNotNull } from "./utils/helpers.js"; import moment from "moment"; diff --git a/sdk/batch/batch-rest/test/pools.spec.ts b/sdk/batch/batch-rest/test/pools.spec.ts index 91ab004c0aa8..dafd45a597d4 100644 --- a/sdk/batch/batch-rest/test/pools.spec.ts +++ b/sdk/batch/batch-rest/test/pools.spec.ts @@ -2,9 +2,10 @@ // Licensed under the MIT License. /* eslint-disable no-unused-expressions */ -import { Recorder, VitestTestContext, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder, VitestTestContext } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { createBatchClient, createRecorder } from "./utils/recordedClient.js"; -import { +import type { BatchClient, BatchPoolResizeContent, BatchPoolUpdateContent, @@ -13,9 +14,8 @@ import { ListPoolsParameters, ReplacePoolPropertiesParameters, ResizePoolParameters, - isUnexpected, - paginate, } from "../src/index.js"; +import { isUnexpected, paginate } from "../src/index.js"; import { fakeTestPasswordPlaceholder1 } from "./utils/fakeTestSecrets.js"; import { wait } from "./utils/wait.js"; import { getResourceName, POLLING_INTERVAL, waitForNotNull } from "./utils/helpers.js"; diff --git a/sdk/batch/batch-rest/test/tasks.spec.ts b/sdk/batch/batch-rest/test/tasks.spec.ts index 6871b3c5d111..d82080837b65 100644 --- a/sdk/batch/batch-rest/test/tasks.spec.ts +++ b/sdk/batch/batch-rest/test/tasks.spec.ts @@ -1,17 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, VitestTestContext, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder, VitestTestContext } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { createBatchClient, createRecorder } from "./utils/recordedClient.js"; -import { +import type { BatchClient, BatchTask, CreateJobParameters, CreatePoolParameters, CreateTaskParameters, - isUnexpected, - paginate, } from "../src/index.js"; +import { isUnexpected, paginate } from "../src/index.js"; import { fakeTestPasswordPlaceholder1 } from "./utils/fakeTestSecrets.js"; import { getResourceName, waitForNotNull } from "./utils/helpers.js"; import { describe, it, beforeAll, afterAll, beforeEach, afterEach, assert } from "vitest"; diff --git a/sdk/batch/batch-rest/test/utils/recordedClient.ts b/sdk/batch/batch-rest/test/utils/recordedClient.ts index c516a5792352..dd02fd73b106 100644 --- a/sdk/batch/batch-rest/test/utils/recordedClient.ts +++ b/sdk/batch/batch-rest/test/utils/recordedClient.ts @@ -1,15 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - Recorder, - RecorderStartOptions, - VitestTestContext, - env, - isPlaybackMode, -} from "@azure-tools/test-recorder"; -import { ClientOptions } from "@azure-rest/core-client"; -import BatchServiceClient, { BatchClient } from "../../src/index.js"; +import type { RecorderStartOptions, VitestTestContext } from "@azure-tools/test-recorder"; +import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { BatchClient } from "../../src/index.js"; +import BatchServiceClient from "../../src/index.js"; import { fakeTestPasswordPlaceholder1, fakeAzureBatchAccount, diff --git a/sdk/cognitivelanguage/ai-language-conversations/review/ai-language-conversations.api.md b/sdk/cognitivelanguage/ai-language-conversations/review/ai-language-conversations.api.md index 86ea139efd04..488b9ea81765 100644 --- a/sdk/cognitivelanguage/ai-language-conversations/review/ai-language-conversations.api.md +++ b/sdk/cognitivelanguage/ai-language-conversations/review/ai-language-conversations.api.md @@ -5,11 +5,11 @@ ```ts import { AzureKeyCredential } from '@azure/core-auth'; -import * as coreClient from '@azure/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { TokenCredential } from '@azure/core-auth'; +import type * as coreClient from '@azure/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { PollerLike } from '@azure/core-lro'; +import type { PollOperationState } from '@azure/core-lro'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AgeResolution extends BaseResolution, QuantityResolution { diff --git a/sdk/cognitivelanguage/ai-language-conversations/src/azureKeyCredentialPolicy.ts b/sdk/cognitivelanguage/ai-language-conversations/src/azureKeyCredentialPolicy.ts index 804b0185b09b..698c43f8e4e3 100644 --- a/sdk/cognitivelanguage/ai-language-conversations/src/azureKeyCredentialPolicy.ts +++ b/sdk/cognitivelanguage/ai-language-conversations/src/azureKeyCredentialPolicy.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, SendRequest, } from "@azure/core-rest-pipeline"; -import { KeyCredential } from "@azure/core-auth"; +import type { KeyCredential } from "@azure/core-auth"; const API_KEY_HEADER_NAME = "Ocp-Apim-Subscription-Key"; diff --git a/sdk/cognitivelanguage/ai-language-conversations/src/conversationAnalysisClient.ts b/sdk/cognitivelanguage/ai-language-conversations/src/conversationAnalysisClient.ts index 0bef45907579..8c21a4bb4c8e 100644 --- a/sdk/cognitivelanguage/ai-language-conversations/src/conversationAnalysisClient.ts +++ b/sdk/cognitivelanguage/ai-language-conversations/src/conversationAnalysisClient.ts @@ -6,7 +6,7 @@ * Licensed under the MIT License. */ -import { +import type { AnalyzeConversationJobsInput, AnalyzeConversationOptionalParams, AnalyzeConversationResponse, @@ -16,9 +16,11 @@ import { ConversationAnalysisResponse, } from "./models"; import { DEFAULT_COGNITIVE_SCOPE, SDK_VERSION } from "./constants"; -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { PollOperationState, PollerLike } from "@azure/core-lro"; -import { TracingClient, createTracingClient } from "@azure/core-tracing"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { PollOperationState, PollerLike } from "@azure/core-lro"; +import type { TracingClient } from "@azure/core-tracing"; +import { createTracingClient } from "@azure/core-tracing"; import { ConversationAnalysisClient as GeneratedClient } from "./generated"; import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; import { conversationAnalysisAzureKeyCredentialPolicy } from "./azureKeyCredentialPolicy"; diff --git a/sdk/cognitivelanguage/ai-language-conversations/src/models.ts b/sdk/cognitivelanguage/ai-language-conversations/src/models.ts index 2714b6f65013..6cb21ff5be92 100644 --- a/sdk/cognitivelanguage/ai-language-conversations/src/models.ts +++ b/sdk/cognitivelanguage/ai-language-conversations/src/models.ts @@ -9,7 +9,7 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import * as coreClient from "@azure/core-client"; +import type * as coreClient from "@azure/core-client"; export type AnalyzeConversationTaskUnion = ConversationalTask; export type AnalyzeConversationTaskResultUnion = ConversationalTaskResult; diff --git a/sdk/cognitivelanguage/ai-language-conversations/test/public/analyze.spec.ts b/sdk/cognitivelanguage/ai-language-conversations/test/public/analyze.spec.ts index 378c5e471654..eb541646804d 100644 --- a/sdk/cognitivelanguage/ai-language-conversations/test/public/analyze.spec.ts +++ b/sdk/cognitivelanguage/ai-language-conversations/test/public/analyze.spec.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthMethod, createClient, startRecorder } from "./utils/recordedClient"; -import { Context, Suite } from "mocha"; +import type { AuthMethod } from "./utils/recordedClient"; +import { createClient, startRecorder } from "./utils/recordedClient"; +import type { Context, Suite } from "mocha"; import { assert, matrix } from "@azure-tools/test-utils"; -import { ConversationAnalysisClient } from "../../src"; -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { ConversationAnalysisClient } from "../../src"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; matrix([["APIKey"]] as const, async (authMethod: AuthMethod) => { describe(`[${authMethod}] ConversationAnalysisClient`, function (this: Suite) { diff --git a/sdk/cognitivelanguage/ai-language-conversations/test/public/utils/recordedClient.ts b/sdk/cognitivelanguage/ai-language-conversations/test/public/utils/recordedClient.ts index 69b5e122ec19..47d39cc794f6 100644 --- a/sdk/cognitivelanguage/ai-language-conversations/test/public/utils/recordedClient.ts +++ b/sdk/cognitivelanguage/ai-language-conversations/test/public/utils/recordedClient.ts @@ -1,14 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ConversationAnalysisClient, ConversationAnalysisOptions } from "../../../src/"; -import { - Recorder, - RecorderStartOptions, - assertEnvironmentVariable, -} from "@azure-tools/test-recorder"; +import type { ConversationAnalysisOptions } from "../../../src/"; +import { ConversationAnalysisClient } from "../../../src/"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { AzureKeyCredential } from "@azure/core-auth"; -import { Test } from "mocha"; +import type { Test } from "mocha"; import { createTestCredential } from "@azure-tools/test-credential"; const envSetupForPlayback: { [k: string]: string } = { diff --git a/sdk/cognitivelanguage/ai-language-text/review/ai-language-text.api.md b/sdk/cognitivelanguage/ai-language-text/review/ai-language-text.api.md index fca494f20f1a..bf0903b4238c 100644 --- a/sdk/cognitivelanguage/ai-language-text/review/ai-language-text.api.md +++ b/sdk/cognitivelanguage/ai-language-text/review/ai-language-text.api.md @@ -5,13 +5,13 @@ ```ts import { AzureKeyCredential } from '@azure/core-auth'; -import { CommonClientOptions } from '@azure/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationOptions } from '@azure/core-client'; -import { OperationState } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { SimplePollerLike } from '@azure/core-lro'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationOptions } from '@azure/core-client'; +import type { OperationState } from '@azure/core-lro'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { SimplePollerLike } from '@azure/core-lro'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AbstractiveSummarizationAction { diff --git a/sdk/cognitivelanguage/ai-language-text/src/azureKeyCredentialPolicy.ts b/sdk/cognitivelanguage/ai-language-text/src/azureKeyCredentialPolicy.ts index 1d495a0d0990..bf7669945142 100644 --- a/sdk/cognitivelanguage/ai-language-text/src/azureKeyCredentialPolicy.ts +++ b/sdk/cognitivelanguage/ai-language-text/src/azureKeyCredentialPolicy.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, SendRequest, } from "@azure/core-rest-pipeline"; -import { KeyCredential } from "@azure/core-auth"; +import type { KeyCredential } from "@azure/core-auth"; const API_KEY_HEADER_NAME = "Ocp-Apim-Subscription-Key"; diff --git a/sdk/cognitivelanguage/ai-language-text/src/lro.ts b/sdk/cognitivelanguage/ai-language-text/src/lro.ts index cda837715204..c1ed2ecdb870 100644 --- a/sdk/cognitivelanguage/ai-language-text/src/lro.ts +++ b/sdk/cognitivelanguage/ai-language-text/src/lro.ts @@ -3,30 +3,27 @@ import * as Mappers from "./generated/models/mappers"; import * as Parameters from "./generated/models/parameters"; -import { +import type { AnalyzeBatchActionUnion, AnalyzeTextJobStatusOptionalParams, AnalyzeTextJobStatusResponse, GeneratedClient, TextDocumentInput, } from "./generated"; -import { +import type { AnalyzeBatchOperationState, AnalyzeBatchResult, PagedAnalyzeBatchResult, PollerLike, } from "./models"; -import { - FullOperationResponse, - OperationOptions, - OperationSpec, - createSerializer, -} from "@azure/core-client"; -import { LongRunningOperation, LroResponse, SimplePollerLike } from "@azure/core-lro"; -import { PagedResult, getPagedAsyncIterator } from "@azure/core-paging"; +import type { FullOperationResponse, OperationOptions, OperationSpec } from "@azure/core-client"; +import { createSerializer } from "@azure/core-client"; +import type { LongRunningOperation, LroResponse, SimplePollerLike } from "@azure/core-lro"; +import type { PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; import { throwError, transformAnalyzeBatchResults } from "./transforms"; -import { HttpMethods } from "@azure/core-rest-pipeline"; -import { TracingClient } from "@azure/core-tracing"; +import type { HttpMethods } from "@azure/core-rest-pipeline"; +import type { TracingClient } from "@azure/core-tracing"; import { clientName } from "./constants"; import { logger } from "./logger"; diff --git a/sdk/cognitivelanguage/ai-language-text/src/models.ts b/sdk/cognitivelanguage/ai-language-text/src/models.ts index d1d47259e98f..86206377621e 100644 --- a/sdk/cognitivelanguage/ai-language-text/src/models.ts +++ b/sdk/cognitivelanguage/ai-language-text/src/models.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AbstractiveSummary, AssessmentSentiment, ClassificationCategory, @@ -20,8 +20,6 @@ import { HealthcareAssertion, HealthcareEntityCategory, KeyPhraseExtractionAction, - KnownErrorCode, - KnownInnerErrorCode, LanguageDetectionAction, LinkedEntity, PiiEntityRecognitionAction, @@ -36,9 +34,10 @@ import { TextDocumentStatistics, TokenSentimentLabel, } from "./generated"; -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; -import { OperationState, SimplePollerLike } from "@azure/core-lro"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { KnownErrorCode, KnownInnerErrorCode } from "./generated"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { OperationState, SimplePollerLike } from "@azure/core-lro"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; /** * Configuration options for {@link TextAnalysisClient}. diff --git a/sdk/cognitivelanguage/ai-language-text/src/textAnalysisClient.ts b/sdk/cognitivelanguage/ai-language-text/src/textAnalysisClient.ts index 2ff9416588fe..efc16958497b 100644 --- a/sdk/cognitivelanguage/ai-language-text/src/textAnalysisClient.ts +++ b/sdk/cognitivelanguage/ai-language-text/src/textAnalysisClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AnalyzeActionName, AnalyzeActionParameters, AnalyzeBatchAction, @@ -12,15 +12,17 @@ import { TextAnalysisClientOptions, TextAnalysisOperationOptions, } from "./models"; -import { +import type { AnalyzeBatchActionUnion, GeneratedClientOptionalParams, LanguageDetectionInput, TextDocumentInput, } from "./generated/models"; import { DEFAULT_COGNITIVE_SCOPE, SDK_VERSION } from "./constants"; -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { TracingClient, createTracingClient } from "@azure/core-tracing"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { TracingClient } from "@azure/core-tracing"; +import { createTracingClient } from "@azure/core-tracing"; import { convertToLanguageDetectionInput, convertToTextDocumentInput, diff --git a/sdk/cognitivelanguage/ai-language-text/src/transforms.ts b/sdk/cognitivelanguage/ai-language-text/src/transforms.ts index 4edcdd0f7587..3f883e301bc2 100644 --- a/sdk/cognitivelanguage/ai-language-text/src/transforms.ts +++ b/sdk/cognitivelanguage/ai-language-text/src/transforms.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AbstractiveSummarizationLROResult, AnalyzeResponse, AnalyzeTextLROResultUnion, @@ -44,7 +44,7 @@ import { CustomLabelClassificationResultDocumentsItem, HealthcareEntitiesDocumentResult, } from "./generated"; -import { +import type { AnalyzeActionName, AnalyzeBatchActionName, AnalyzeBatchResult, @@ -66,8 +66,8 @@ import { TextAnalysisErrorResult, TextAnalysisSuccessResult, } from "./models"; +import type { AssessmentIndex } from "./util"; import { - AssessmentIndex, extractErrorPointerIndex, parseAssessmentIndex, parseHealthcareEntityIndex, diff --git a/sdk/cognitivelanguage/ai-language-text/src/util.ts b/sdk/cognitivelanguage/ai-language-text/src/util.ts index fc18d954e4fb..b6890226fd4d 100644 --- a/sdk/cognitivelanguage/ai-language-text/src/util.ts +++ b/sdk/cognitivelanguage/ai-language-text/src/util.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ErrorModel, LanguageDetectionInput, TextDocumentInput } from "./generated"; -import { TextAnalysisOperationOptions } from "./models"; +import type { ErrorModel, LanguageDetectionInput, TextDocumentInput } from "./generated"; +import type { TextAnalysisOperationOptions } from "./models"; import { logger } from "./logger"; /** diff --git a/sdk/cognitivelanguage/ai-language-text/test/internal/errorTargets.spec.ts b/sdk/cognitivelanguage/ai-language-text/test/internal/errorTargets.spec.ts index 2c217afa628c..7a43036a91ba 100644 --- a/sdk/cognitivelanguage/ai-language-text/test/internal/errorTargets.spec.ts +++ b/sdk/cognitivelanguage/ai-language-text/test/internal/errorTargets.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { createHttpHeaders, PipelineRequest } from "@azure/core-rest-pipeline"; +import type { PipelineRequest } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; import { assert } from "@azure-tools/test-utils"; import { KnownErrorCode } from "../../src/generated"; import { AnalyzeBatchActionNames } from "../../src/models"; diff --git a/sdk/cognitivelanguage/ai-language-text/test/internal/models.spec.ts b/sdk/cognitivelanguage/ai-language-text/test/internal/models.spec.ts index 472b80e54ac6..cf07d0fba968 100644 --- a/sdk/cognitivelanguage/ai-language-text/test/internal/models.spec.ts +++ b/sdk/cognitivelanguage/ai-language-text/test/internal/models.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AnalyzeAction, KnownAnalyzeTextLROTaskKind } from "../../src/generated/models"; -import { AnalyzeActionName, AnalyzeBatchActionName } from "../../src"; -import { AssertEqual } from "./utils"; +import type { AnalyzeAction, KnownAnalyzeTextLROTaskKind } from "../../src/generated/models"; +import type { AnalyzeActionName, AnalyzeBatchActionName } from "../../src"; +import type { AssertEqual } from "./utils"; import { assert } from "@azure-tools/test-utils"; describe("Models", function () { diff --git a/sdk/cognitivelanguage/ai-language-text/test/node/customTest.spec.ts b/sdk/cognitivelanguage/ai-language-text/test/node/customTest.spec.ts index 77033f7544fd..180d9d428397 100644 --- a/sdk/cognitivelanguage/ai-language-text/test/node/customTest.spec.ts +++ b/sdk/cognitivelanguage/ai-language-text/test/node/customTest.spec.ts @@ -1,12 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { assertEnvironmentVariable, isPlaybackMode, Recorder } from "@azure-tools/test-recorder"; -import { AnalyzeBatchActionNames, AzureKeyCredential, TextAnalysisClient } from "../../src"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { TextAnalysisClient } from "../../src"; +import { AnalyzeBatchActionNames, AzureKeyCredential } from "../../src"; import { matrix } from "@azure-tools/test-utils"; -import { Context, Suite } from "mocha"; -import { AuthMethod, createClient, startRecorder } from "../public/utils/recordedClient"; -import createAuthoringClient, { TextAuthoringClient } from "@azure/ai-language-textauthoring"; +import type { Context, Suite } from "mocha"; +import type { AuthMethod } from "../public/utils/recordedClient"; +import { createClient, startRecorder } from "../public/utils/recordedClient"; +import type { TextAuthoringClient } from "@azure/ai-language-textauthoring"; +import createAuthoringClient from "@azure/ai-language-textauthoring"; import { createCustomTestProject } from "../public/utils/customTestHelpter"; import { assertActionsResults } from "../public/utils/resultHelper"; import { expectation1, expectation2, expectation4 } from "../public/expectations"; diff --git a/sdk/cognitivelanguage/ai-language-text/test/public/analyze.spec.ts b/sdk/cognitivelanguage/ai-language-text/test/public/analyze.spec.ts index 4e0cac4e8036..0f648c3f98b5 100644 --- a/sdk/cognitivelanguage/ai-language-text/test/public/analyze.spec.ts +++ b/sdk/cognitivelanguage/ai-language-text/test/public/analyze.spec.ts @@ -1,20 +1,21 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { TextAnalysisClient } from "../../src"; import { AnalyzeActionNames, KnownPiiEntityCategory, KnownPiiEntityDomain, KnownStringIndexType, KnownTextAnalysisErrorCode, - TextAnalysisClient, } from "../../src"; -import { AuthMethod, createClient, startRecorder } from "./utils/recordedClient"; -import { Context, Suite } from "mocha"; +import type { AuthMethod } from "./utils/recordedClient"; +import { createClient, startRecorder } from "./utils/recordedClient"; +import type { Context, Suite } from "mocha"; import { assert, matrix } from "@azure-tools/test-utils"; import { assertActionResults, assertRestError } from "./utils/resultHelper"; import { checkEntityTextOffset, checkOffsetAndLength } from "./utils/stringIndexTypeHelpers"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { expectation63, expectation65, diff --git a/sdk/cognitivelanguage/ai-language-text/test/public/analyzeBatch.spec.ts b/sdk/cognitivelanguage/ai-language-text/test/public/analyzeBatch.spec.ts index 2d7e40ba0302..70c7fd96a19e 100644 --- a/sdk/cognitivelanguage/ai-language-text/test/public/analyzeBatch.spec.ts +++ b/sdk/cognitivelanguage/ai-language-text/test/public/analyzeBatch.spec.ts @@ -1,6 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { TextAnalysisClient } from "../../src"; import { AnalyzeBatchActionNames, KnownExtractiveSummarizationOrderingCriteria, @@ -8,11 +9,12 @@ import { KnownPiiEntityDomain, KnownStringIndexType, KnownTextAnalysisErrorCode, - TextAnalysisClient, } from "../../src"; -import { AuthMethod, createClient, startRecorder } from "./utils/recordedClient"; -import { Context, Suite } from "mocha"; -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { AuthMethod } from "./utils/recordedClient"; +import { createClient, startRecorder } from "./utils/recordedClient"; +import type { Context, Suite } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { assert, matrix } from "@azure-tools/test-utils"; import { assertActionsResults, assertRestError } from "./utils/resultHelper"; import { diff --git a/sdk/cognitivelanguage/ai-language-text/test/public/clientOptions.spec.ts b/sdk/cognitivelanguage/ai-language-text/test/public/clientOptions.spec.ts index 95bf51308c0d..afed6bcbc342 100644 --- a/sdk/cognitivelanguage/ai-language-text/test/public/clientOptions.spec.ts +++ b/sdk/cognitivelanguage/ai-language-text/test/public/clientOptions.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context, Suite } from "mocha"; +import type { Context, Suite } from "mocha"; import { createClient, startRecorder } from "./utils/recordedClient"; -import { FullOperationResponse } from "@azure/core-client"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { FullOperationResponse } from "@azure/core-client"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "@azure-tools/test-utils"; describe(`[API Key] TextAnalysisClient`, function (this: Suite) { diff --git a/sdk/cognitivelanguage/ai-language-text/test/public/customTestsAssets.ts b/sdk/cognitivelanguage/ai-language-text/test/public/customTestsAssets.ts index db5f5f5279ba..70f343118707 100644 --- a/sdk/cognitivelanguage/ai-language-text/test/public/customTestsAssets.ts +++ b/sdk/cognitivelanguage/ai-language-text/test/public/customTestsAssets.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. // Source: https://github.com/Azure-Samples/cognitive-services-sample-data-files/tree/master/language-service -import { +import type { ExportedCustomEntityRecognitionProjectAssets, ExportedCustomMultiLabelClassificationProjectAssets, ExportedCustomSingleLabelClassificationProjectAssets, diff --git a/sdk/cognitivelanguage/ai-language-text/test/public/expectations.ts b/sdk/cognitivelanguage/ai-language-text/test/public/expectations.ts index 405b8b3e4174..c5d1286f4655 100644 --- a/sdk/cognitivelanguage/ai-language-text/test/public/expectations.ts +++ b/sdk/cognitivelanguage/ai-language-text/test/public/expectations.ts @@ -1,17 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AnalyzeBatchResult, EntityLinkingResult, EntityRecognitionResult, KeyPhraseExtractionResult, - KnownErrorCode, LanguageDetectionResult, PiiEntityRecognitionResult, PiiEntityRecognitionSuccessResult, SentimentAnalysisResult, } from "../../src/"; +import { KnownErrorCode } from "../../src/"; const failedOn = undefined as any; const modelVersion = undefined as any; diff --git a/sdk/cognitivelanguage/ai-language-text/test/public/utils/customTestHelpter.ts b/sdk/cognitivelanguage/ai-language-text/test/public/utils/customTestHelpter.ts index ae3ce02b71fe..d58ae3e6f593 100644 --- a/sdk/cognitivelanguage/ai-language-text/test/public/utils/customTestHelpter.ts +++ b/sdk/cognitivelanguage/ai-language-text/test/public/utils/customTestHelpter.ts @@ -1,17 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { TextAnalysisAuthoringDeployProjectParameters, TextAnalysisAuthoringTrainBodyParam, - getLongRunningPoller, CreateProjectOptions, TextAuthoringClient, ExportedCustomSingleLabelClassificationProjectAssets, ExportedCustomMultiLabelClassificationProjectAssets, ExportedCustomEntityRecognitionProjectAssets, } from "@azure/ai-language-textauthoring"; -import { BlobServiceClient, ContainerClient } from "@azure/storage-blob"; +import { getLongRunningPoller } from "@azure/ai-language-textauthoring"; +import type { ContainerClient } from "@azure/storage-blob"; +import { BlobServiceClient } from "@azure/storage-blob"; import { DefaultAzureCredential } from "@azure/identity"; import path from "path"; import decompress from "decompress"; diff --git a/sdk/cognitivelanguage/ai-language-text/test/public/utils/recordedClient.ts b/sdk/cognitivelanguage/ai-language-text/test/public/utils/recordedClient.ts index 4f0a90e43b60..2e574817f275 100644 --- a/sdk/cognitivelanguage/ai-language-text/test/public/utils/recordedClient.ts +++ b/sdk/cognitivelanguage/ai-language-text/test/public/utils/recordedClient.ts @@ -1,13 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureKeyCredential, TextAnalysisClient, TextAnalysisClientOptions } from "../../../src/"; -import { - Recorder, - RecorderStartOptions, - assertEnvironmentVariable, -} from "@azure-tools/test-recorder"; -import { Test } from "mocha"; +import type { TextAnalysisClientOptions } from "../../../src/"; +import { AzureKeyCredential, TextAnalysisClient } from "../../../src/"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Test } from "mocha"; import { createTestCredential } from "@azure-tools/test-credential"; const envSetupForPlayback: { [k: string]: string } = { diff --git a/sdk/cognitivelanguage/ai-language-text/test/public/utils/resultHelper.ts b/sdk/cognitivelanguage/ai-language-text/test/public/utils/resultHelper.ts index e4682519941a..6b05074c7038 100644 --- a/sdk/cognitivelanguage/ai-language-text/test/public/utils/resultHelper.ts +++ b/sdk/cognitivelanguage/ai-language-text/test/public/utils/resultHelper.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AnalyzeBatchResult, KnownTextAnalysisErrorCode, PagedAnalyzeBatchResult, diff --git a/sdk/cognitivelanguage/ai-language-text/test/public/utils/stringIndexTypeHelpers.ts b/sdk/cognitivelanguage/ai-language-text/test/public/utils/stringIndexTypeHelpers.ts index 8ce50c483b3c..ff7f2ab40898 100644 --- a/sdk/cognitivelanguage/ai-language-text/test/public/utils/stringIndexTypeHelpers.ts +++ b/sdk/cognitivelanguage/ai-language-text/test/public/utils/stringIndexTypeHelpers.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Entity, StringIndexType, TextAnalysisClient } from "../../../src"; +import type { Entity, StringIndexType, TextAnalysisClient } from "../../../src"; import { assert } from "chai"; /** diff --git a/sdk/cognitivelanguage/ai-language-textauthoring/review/ai-language-textauthoring.api.md b/sdk/cognitivelanguage/ai-language-textauthoring/review/ai-language-textauthoring.api.md index 3fe2411068d1..57b0927eba20 100644 --- a/sdk/cognitivelanguage/ai-language-textauthoring/review/ai-language-textauthoring.api.md +++ b/sdk/cognitivelanguage/ai-language-textauthoring/review/ai-language-textauthoring.api.md @@ -4,20 +4,20 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { LroEngineOptions } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { LroEngineOptions } from '@azure/core-lro'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { PollerLike } from '@azure/core-lro'; +import type { PollOperationState } from '@azure/core-lro'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface AssignDeploymentResources { diff --git a/sdk/cognitivelanguage/ai-language-textauthoring/src/clientDefinitions.ts b/sdk/cognitivelanguage/ai-language-textauthoring/src/clientDefinitions.ts index 06031b2f671e..fe4a535c154f 100644 --- a/sdk/cognitivelanguage/ai-language-textauthoring/src/clientDefinitions.ts +++ b/sdk/cognitivelanguage/ai-language-textauthoring/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { TextAnalysisAuthoringListProjectsParameters, TextAnalysisAuthoringCreateProjectParameters, TextAnalysisAuthoringGetProjectParameters, @@ -40,7 +40,7 @@ import { TextAnalysisAuthoringGetSupportedLanguagesParameters, TextAnalysisAuthoringListTrainingConfigVersionsParameters, } from "./parameters"; -import { +import type { TextAnalysisAuthoringListProjects200Response, TextAnalysisAuthoringListProjectsDefaultResponse, TextAnalysisAuthoringCreateProject200Response, @@ -117,7 +117,7 @@ import { TextAnalysisAuthoringListTrainingConfigVersions200Response, TextAnalysisAuthoringListTrainingConfigVersionsDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface ListProjects { /** Lists the existing projects. */ diff --git a/sdk/cognitivelanguage/ai-language-textauthoring/src/isUnexpected.ts b/sdk/cognitivelanguage/ai-language-textauthoring/src/isUnexpected.ts index 44a6ef6dcace..66c28a4b75b9 100644 --- a/sdk/cognitivelanguage/ai-language-textauthoring/src/isUnexpected.ts +++ b/sdk/cognitivelanguage/ai-language-textauthoring/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { TextAnalysisAuthoringListProjects200Response, TextAnalysisAuthoringListProjectsDefaultResponse, TextAnalysisAuthoringCreateProject200Response, diff --git a/sdk/cognitivelanguage/ai-language-textauthoring/src/paginateHelper.ts b/sdk/cognitivelanguage/ai-language-textauthoring/src/paginateHelper.ts index e27846d32a90..5d541b4e406d 100644 --- a/sdk/cognitivelanguage/ai-language-textauthoring/src/paginateHelper.ts +++ b/sdk/cognitivelanguage/ai-language-textauthoring/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/cognitivelanguage/ai-language-textauthoring/src/parameters.ts b/sdk/cognitivelanguage/ai-language-textauthoring/src/parameters.ts index 9443c54d686a..e66173f87db8 100644 --- a/sdk/cognitivelanguage/ai-language-textauthoring/src/parameters.ts +++ b/sdk/cognitivelanguage/ai-language-textauthoring/src/parameters.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { CreateProjectOptions, ExportedProject, TrainingJobOptions, diff --git a/sdk/cognitivelanguage/ai-language-textauthoring/src/pollingHelper.ts b/sdk/cognitivelanguage/ai-language-textauthoring/src/pollingHelper.ts index 31ecd85a0307..2bce93c987fa 100644 --- a/sdk/cognitivelanguage/ai-language-textauthoring/src/pollingHelper.ts +++ b/sdk/cognitivelanguage/ai-language-textauthoring/src/pollingHelper.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { LongRunningOperation, - LroEngine, LroEngineOptions, LroResponse, PollerLike, PollOperationState, } from "@azure/core-lro"; +import { LroEngine } from "@azure/core-lro"; /** * Helper function that builds a Poller object to help polling a long running operation. diff --git a/sdk/cognitivelanguage/ai-language-textauthoring/src/responses.ts b/sdk/cognitivelanguage/ai-language-textauthoring/src/responses.ts index 806022600611..a3a82366a8f4 100644 --- a/sdk/cognitivelanguage/ai-language-textauthoring/src/responses.ts +++ b/sdk/cognitivelanguage/ai-language-textauthoring/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse } from "@azure-rest/core-client"; +import type { ProjectsMetadataOutput, ErrorResponseOutput, ProjectMetadataOutput, diff --git a/sdk/cognitivelanguage/ai-language-textauthoring/src/textAuthoringClient.ts b/sdk/cognitivelanguage/ai-language-textauthoring/src/textAuthoringClient.ts index c88c8dd16c5e..d1e56c39c55b 100644 --- a/sdk/cognitivelanguage/ai-language-textauthoring/src/textAuthoringClient.ts +++ b/sdk/cognitivelanguage/ai-language-textauthoring/src/textAuthoringClient.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; -import { TokenCredential, KeyCredential } from "@azure/core-auth"; -import { TextAuthoringClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential, KeyCredential } from "@azure/core-auth"; +import type { TextAuthoringClient } from "./clientDefinitions"; /** * Initialize a new instance of the class TextAuthoringClient class. diff --git a/sdk/cognitivelanguage/ai-language-textauthoring/test/public/helloWorld.spec.ts b/sdk/cognitivelanguage/ai-language-textauthoring/test/public/helloWorld.spec.ts index 0d6d720d5bbb..710741d0057d 100644 --- a/sdk/cognitivelanguage/ai-language-textauthoring/test/public/helloWorld.spec.ts +++ b/sdk/cognitivelanguage/ai-language-textauthoring/test/public/helloWorld.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Suite } from "mocha"; +import type { Suite } from "mocha"; import { assert } from "@azure-tools/test-utils"; import createAuthoringClient from "../../src"; import { AzureKeyCredential } from "@azure/core-auth"; diff --git a/sdk/communication/communication-alpha-ids/review/communication-alpha-ids.api.md b/sdk/communication/communication-alpha-ids/review/communication-alpha-ids.api.md index 28bb35c59def..b0c3d2401ec4 100644 --- a/sdk/communication/communication-alpha-ids/review/communication-alpha-ids.api.md +++ b/sdk/communication/communication-alpha-ids/review/communication-alpha-ids.api.md @@ -4,12 +4,12 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; +import type { CommonClientOptions } from '@azure/core-client'; import * as coreClient from '@azure/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { TokenCredential } from '@azure/core-auth'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AlphaId { diff --git a/sdk/communication/communication-alpha-ids/src/alphaIdsClient.ts b/sdk/communication/communication-alpha-ids/src/alphaIdsClient.ts index cfe66e8b57dc..d9b3c735d359 100644 --- a/sdk/communication/communication-alpha-ids/src/alphaIdsClient.ts +++ b/sdk/communication/communication-alpha-ids/src/alphaIdsClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. /// -import { +import type { DynamicAlphaIdConfiguration, GetConfigurationOptions, UpsertConfigurationOptions, @@ -12,13 +12,14 @@ import { SupportedCountries, } from "./models"; import { isKeyCredential, parseClientArguments } from "@azure/communication-common"; -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { CommonClientOptions, InternalClientPipelineOptions } from "@azure/core-client"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { CommonClientOptions, InternalClientPipelineOptions } from "@azure/core-client"; import { AlphaIDsClient as AlphaIDsGeneratedClient } from "./generated/src"; import { createCommunicationAuthPolicy } from "@azure/communication-common"; import { logger } from "./utils"; import { tracingClient } from "./generated/src/tracing"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; import { createAlphaIDsPagingPolicy } from "./utils/customPipelinePolicies"; /** diff --git a/sdk/communication/communication-alpha-ids/src/models.ts b/sdk/communication/communication-alpha-ids/src/models.ts index 6c83becb69e8..1fcb566da750 100644 --- a/sdk/communication/communication-alpha-ids/src/models.ts +++ b/sdk/communication/communication-alpha-ids/src/models.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { +import type { OperationOptions } from "@azure/core-client"; +import type { AlphaIdsGetAlphaIdsOptionalParams, AlphaIdsGetDynamicAlphaIdCountriesOptionalParams, AlphaIdsGetPreRegisteredAlphaIdCountriesOptionalParams, diff --git a/sdk/communication/communication-alpha-ids/src/utils/customPipelinePolicies.ts b/sdk/communication/communication-alpha-ids/src/utils/customPipelinePolicies.ts index 4137d8a66c33..94ad4707bc92 100644 --- a/sdk/communication/communication-alpha-ids/src/utils/customPipelinePolicies.ts +++ b/sdk/communication/communication-alpha-ids/src/utils/customPipelinePolicies.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { FullOperationResponse } from "@azure/core-client"; -import { +import type { FullOperationResponse } from "@azure/core-client"; +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/communication/communication-alpha-ids/test/internal/generated_client.spec.ts b/sdk/communication/communication-alpha-ids/test/internal/generated_client.spec.ts index d44cca33c893..1848ba5f333e 100644 --- a/sdk/communication/communication-alpha-ids/test/internal/generated_client.spec.ts +++ b/sdk/communication/communication-alpha-ids/test/internal/generated_client.spec.ts @@ -1,20 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { PipelinePolicy } from "@azure/core-rest-pipeline"; import { - PipelinePolicy, bearerTokenAuthenticationPolicy, createEmptyPipeline, bearerTokenAuthenticationPolicyName, } from "@azure/core-rest-pipeline"; import { AlphaIDsClient as AlphaIDsGeneratedClient } from "../../src/generated/src"; -import { TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; import { assert } from "chai"; import { createMockToken } from "../public/utils/recordedClient"; import { isNodeLike } from "@azure/core-util"; import { parseClientArguments } from "@azure/communication-common"; import sinon from "sinon"; -import { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import type { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; export const createMockHttpClient = >( status: number = 200, diff --git a/sdk/communication/communication-alpha-ids/test/internal/headers.spec.ts b/sdk/communication/communication-alpha-ids/test/internal/headers.spec.ts index 3256b472fbc0..a5da580c8b59 100644 --- a/sdk/communication/communication-alpha-ids/test/internal/headers.spec.ts +++ b/sdk/communication/communication-alpha-ids/test/internal/headers.spec.ts @@ -2,11 +2,11 @@ // Licensed under the MIT License. import { AzureKeyCredential } from "@azure/core-auth"; -import { Context } from "mocha"; -import { PipelineRequest } from "@azure/core-rest-pipeline"; +import type { Context } from "mocha"; +import type { PipelineRequest } from "@azure/core-rest-pipeline"; import { SDK_VERSION } from "../../src/utils/constants"; import { AlphaIdsClient } from "../../src"; -import { TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; import { assert } from "chai"; import { createMockToken } from "../public/utils/recordedClient"; import { configurationHttpClient } from "../public/utils/mockHttpClients"; diff --git a/sdk/communication/communication-alpha-ids/test/public/ctor.spec.ts b/sdk/communication/communication-alpha-ids/test/public/ctor.spec.ts index 923997f13a91..45a21e1ac572 100644 --- a/sdk/communication/communication-alpha-ids/test/public/ctor.spec.ts +++ b/sdk/communication/communication-alpha-ids/test/public/ctor.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { AzureKeyCredential } from "@azure/core-auth"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { AlphaIdsClient } from "../../src"; import { assert } from "chai"; import { createMockToken } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-alpha-ids/test/public/dynamicAlphaId.spec.ts b/sdk/communication/communication-alpha-ids/test/public/dynamicAlphaId.spec.ts index 32b06ac7e43d..9a53e8eb52ce 100644 --- a/sdk/communication/communication-alpha-ids/test/public/dynamicAlphaId.spec.ts +++ b/sdk/communication/communication-alpha-ids/test/public/dynamicAlphaId.spec.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AlphaIdsClient } from "../../src"; -import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { AlphaIdsClient } from "../../src"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; import { createRecordedClient } from "./utils/recordedClient"; import { assert } from "chai"; -import { FullOperationResponse, OperationOptions } from "@azure/core-client"; -import { DynamicAlphaIdConfiguration } from "../../src"; +import type { FullOperationResponse, OperationOptions } from "@azure/core-client"; +import type { DynamicAlphaIdConfiguration } from "../../src"; describe(`AlphaIdsClient - manage configuration`, function () { let recorder: Recorder; diff --git a/sdk/communication/communication-alpha-ids/test/public/preRegisteredAlphaId.spec.ts b/sdk/communication/communication-alpha-ids/test/public/preRegisteredAlphaId.spec.ts index e2e21c77e6fb..a4eeffc1a9a1 100644 --- a/sdk/communication/communication-alpha-ids/test/public/preRegisteredAlphaId.spec.ts +++ b/sdk/communication/communication-alpha-ids/test/public/preRegisteredAlphaId.spec.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; -import { AlphaIdsClient } from "../../src"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; +import type { AlphaIdsClient } from "../../src"; import { assert } from "chai"; import { createRecordedClient } from "./utils/recordedClient"; -import { FullOperationResponse, OperationOptions } from "@azure/core-client"; +import type { FullOperationResponse, OperationOptions } from "@azure/core-client"; describe(`AlphaIdsClient - Preregistered Alpha Ids Operations`, function () { let recorder: Recorder; diff --git a/sdk/communication/communication-alpha-ids/test/public/utils/mockHttpClients.ts b/sdk/communication/communication-alpha-ids/test/public/utils/mockHttpClients.ts index 390fb271884f..fd92c957346b 100644 --- a/sdk/communication/communication-alpha-ids/test/public/utils/mockHttpClients.ts +++ b/sdk/communication/communication-alpha-ids/test/public/utils/mockHttpClients.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import type { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; export const createMockHttpClient = >( status: number = 200, diff --git a/sdk/communication/communication-alpha-ids/test/public/utils/msUserAgentPolicy.ts b/sdk/communication/communication-alpha-ids/test/public/utils/msUserAgentPolicy.ts index 73ca5cd71652..7958724263e6 100644 --- a/sdk/communication/communication-alpha-ids/test/public/utils/msUserAgentPolicy.ts +++ b/sdk/communication/communication-alpha-ids/test/public/utils/msUserAgentPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/communication/communication-alpha-ids/test/public/utils/recordedClient.ts b/sdk/communication/communication-alpha-ids/test/public/utils/recordedClient.ts index 43aa12f031c0..c4c382dcfb82 100644 --- a/sdk/communication/communication-alpha-ids/test/public/utils/recordedClient.ts +++ b/sdk/communication/communication-alpha-ids/test/public/utils/recordedClient.ts @@ -2,16 +2,17 @@ // Licensed under the MIT License. import * as dotenv from "dotenv"; -import { ClientSecretCredential, DefaultAzureCredential, TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; +import { ClientSecretCredential, DefaultAzureCredential } from "@azure/identity"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; import { Recorder, - RecorderStartOptions, assertEnvironmentVariable, env, isPlaybackMode, } from "@azure-tools/test-recorder"; import { AlphaIdsClient } from "../../../src"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { isNodeLike } from "@azure/core-util"; import { parseConnectionString } from "@azure/communication-common"; import { createMSUserAgentPolicy } from "./msUserAgentPolicy"; diff --git a/sdk/communication/communication-call-automation/review/communication-call-automation.api.md b/sdk/communication/communication-call-automation/review/communication-call-automation.api.md index 7d7a6c60e86a..0e9d28d0adb7 100644 --- a/sdk/communication/communication-call-automation/review/communication-call-automation.api.md +++ b/sdk/communication/communication-call-automation/review/communication-call-automation.api.md @@ -4,17 +4,17 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; -import { CommonClientOptions } from '@azure/core-client'; -import { CommunicationIdentifier } from '@azure/communication-common'; -import { CommunicationUserIdentifier } from '@azure/communication-common'; +import type { AbortSignalLike } from '@azure/abort-controller'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { CommunicationIdentifier } from '@azure/communication-common'; +import type { CommunicationUserIdentifier } from '@azure/communication-common'; import * as coreClient from '@azure/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { MicrosoftTeamsAppIdentifier } from '@azure/communication-common'; -import { MicrosoftTeamsUserIdentifier } from '@azure/communication-common'; -import { OperationOptions } from '@azure/core-client'; -import { PhoneNumberIdentifier } from '@azure/communication-common'; -import { TokenCredential } from '@azure/core-auth'; +import type { KeyCredential } from '@azure/core-auth'; +import type { MicrosoftTeamsAppIdentifier } from '@azure/communication-common'; +import type { MicrosoftTeamsUserIdentifier } from '@azure/communication-common'; +import type { OperationOptions } from '@azure/core-client'; +import type { PhoneNumberIdentifier } from '@azure/communication-common'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AddParticipantEventResult { diff --git a/sdk/communication/communication-call-automation/src/callAutomationClient.ts b/sdk/communication/communication-call-automation/src/callAutomationClient.ts index f5a8a3881111..71b43e879940 100644 --- a/sdk/communication/communication-call-automation/src/callAutomationClient.ts +++ b/sdk/communication/communication-call-automation/src/callAutomationClient.ts @@ -1,16 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { CommonClientOptions } from "@azure/core-client"; -import { InternalPipelineOptions } from "@azure/core-rest-pipeline"; -import { - parseClientArguments, - isKeyCredential, +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { CommonClientOptions } from "@azure/core-client"; +import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import type { CommunicationIdentifier, CommunicationUserIdentifier, } from "@azure/communication-common"; +import { parseClientArguments, isKeyCredential } from "@azure/communication-common"; import { logger } from "./models/logger"; -import { +import type { AnswerCallRequest, CallAutomationApiClient, CommunicationUserIdentifierModel, @@ -21,14 +21,14 @@ import { } from "./generated/src"; import { CallConnection } from "./callConnection"; import { CallRecording } from "./callRecording"; -import { +import type { AnswerCallOptions, CreateCallOptions, RedirectCallOptions, RejectCallOptions, } from "./models/options"; -import { AnswerCallResult, CreateCallResult } from "./models/responses"; -import { CallConnectionProperties, CallInvite, CustomCallingContext } from "./models/models"; +import type { AnswerCallResult, CreateCallResult } from "./models/responses"; +import type { CallConnectionProperties, CallInvite, CustomCallingContext } from "./models/models"; import { communicationIdentifierConverter, communicationIdentifierModelConverter, @@ -40,7 +40,7 @@ import { import { randomUUID } from "@azure/core-util"; import { createCustomCallAutomationApiClient } from "./credential/callAutomationAuthPolicy"; import { CallAutomationEventProcessor } from "./eventprocessor/callAutomationEventProcessor"; -import { AnswerCallEventResult, CreateCallEventResult } from "./eventprocessor/eventResponses"; +import type { AnswerCallEventResult, CreateCallEventResult } from "./eventprocessor/eventResponses"; /** * Client options used to configure CallAutomation Client API requests. */ diff --git a/sdk/communication/communication-call-automation/src/callAutomationEventParser.ts b/sdk/communication/communication-call-automation/src/callAutomationEventParser.ts index 3e14d6fe99b6..1636a5f59ca4 100644 --- a/sdk/communication/communication-call-automation/src/callAutomationEventParser.ts +++ b/sdk/communication/communication-call-automation/src/callAutomationEventParser.ts @@ -5,7 +5,7 @@ import { createSerializer } from "@azure/core-client"; import { communicationIdentifierConverter, callParticipantConverter } from "./utli/converters"; -import { +import type { CallAutomationEvent, AddParticipantSucceeded, AddParticipantFailed, @@ -40,7 +40,7 @@ import { } from "./models/events"; import { CloudEventMapper } from "./models/mapper"; -import { CallParticipantInternal } from "./generated/src"; +import type { CallParticipantInternal } from "./generated/src"; const serializer = createSerializer(); diff --git a/sdk/communication/communication-call-automation/src/callConnection.ts b/sdk/communication/communication-call-automation/src/callConnection.ts index 708afd278b0e..44ef5622f019 100644 --- a/sdk/communication/communication-call-automation/src/callConnection.ts +++ b/sdk/communication/communication-call-automation/src/callConnection.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommunicationIdentifier } from "@azure/communication-common"; +import type { CommunicationIdentifier } from "@azure/communication-common"; import { CallMedia } from "./callMedia"; -import { +import type { AddParticipantRequest, CallAutomationApiClient, CallAutomationApiClientOptionalParams, @@ -13,13 +13,13 @@ import { TransferToParticipantRequest, } from "./generated/src"; import { CallConnectionImpl } from "./generated/src/operations"; -import { +import type { CallConnectionProperties, CallInvite, CallParticipant, CustomCallingContext, } from "./models/models"; -import { +import type { AddParticipantOptions, CancelAddParticipantOperationOptions, GetCallConnectionPropertiesOptions, @@ -29,7 +29,7 @@ import { RemoveParticipantsOption, TransferCallToParticipantOptions, } from "./models/options"; -import { +import type { ListParticipantsResult, TransferCallResult, AddParticipantResult, @@ -46,9 +46,9 @@ import { PhoneNumberIdentifierModelConverter, } from "./utli/converters"; import { randomUUID } from "@azure/core-util"; -import { KeyCredential, TokenCredential } from "@azure/core-auth"; -import { CallAutomationEventProcessor } from "./eventprocessor/callAutomationEventProcessor"; -import { +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import type { CallAutomationEventProcessor } from "./eventprocessor/callAutomationEventProcessor"; +import type { AddParticipantEventResult, CancelAddParticipantEventResult, RemoveParticipantEventResult, diff --git a/sdk/communication/communication-call-automation/src/callMedia.ts b/sdk/communication/communication-call-automation/src/callMedia.ts index c11848976c8a..0bcd081438e0 100644 --- a/sdk/communication/communication-call-automation/src/callMedia.ts +++ b/sdk/communication/communication-call-automation/src/callMedia.ts @@ -1,15 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PlayRequest, PlaySourceInternal, FileSourceInternal, TextSourceInternal, SsmlSourceInternal, - KnownPlaySourceType, RecognizeRequest, - KnownRecognizeInputType, RecognizeOptions, DtmfOptions, CallAutomationApiClient, @@ -26,16 +24,15 @@ import { HoldRequest, UnholdRequest, } from "./generated/src"; +import { KnownPlaySourceType, KnownRecognizeInputType } from "./generated/src"; import { CallMediaImpl } from "./generated/src/operations"; -import { - CommunicationIdentifier, - serializeCommunicationIdentifier, -} from "@azure/communication-common"; +import type { CommunicationIdentifier } from "@azure/communication-common"; +import { serializeCommunicationIdentifier } from "@azure/communication-common"; -import { FileSource, TextSource, SsmlSource, DtmfTone } from "./models/models"; -import { +import type { FileSource, TextSource, SsmlSource, DtmfTone } from "./models/models"; +import type { PlayOptions, CallMediaRecognizeDtmfOptions, CallMediaRecognizeChoiceOptions, @@ -48,20 +45,20 @@ import { HoldOptions, UnholdOptions, } from "./models/options"; -import { KeyCredential, TokenCredential } from "@azure/core-auth"; -import { +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import type { CancelAllMediaOperationsResult, PlayResult, SendDtmfTonesResult, StartRecognizingResult, } from "./models/responses"; -import { +import type { CancelAllMediaOperationsEventResult, PlayEventResult, SendDtmfEventResult, StartRecognizingEventResult, } from "./eventprocessor/eventResponses"; -import { CallAutomationEventProcessor } from "./eventprocessor/callAutomationEventProcessor"; +import type { CallAutomationEventProcessor } from "./eventprocessor/callAutomationEventProcessor"; import { randomUUID } from "@azure/core-util"; import { createCustomCallAutomationApiClient } from "./credential/callAutomationAuthPolicy"; diff --git a/sdk/communication/communication-call-automation/src/callRecording.ts b/sdk/communication/communication-call-automation/src/callRecording.ts index 2c1e43d9aed9..c02f240dee3e 100644 --- a/sdk/communication/communication-call-automation/src/callRecording.ts +++ b/sdk/communication/communication-call-automation/src/callRecording.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { CallRecordingImpl } from "./generated/src/operations"; -import { +import type { CallAutomationApiClientOptionalParams, StartCallRecordingRequest, } from "./generated/src/models/index"; -import { RecordingStateResult } from "./models/responses"; -import { +import type { RecordingStateResult } from "./models/responses"; +import type { StartRecordingOptions, StopRecordingOptions, PauseRecordingOptions, @@ -19,8 +19,8 @@ import { communicationIdentifierModelConverter } from "./utli/converters"; import { ContentDownloaderImpl } from "./contentDownloader"; import * as fs from "fs"; import { randomUUID } from "@azure/core-util"; -import { KeyCredential, TokenCredential } from "@azure/core-auth"; -import { CallAutomationApiClient } from "./generated/src"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import type { CallAutomationApiClient } from "./generated/src"; import { createCustomCallAutomationApiClient } from "./credential/callAutomationAuthPolicy"; /** diff --git a/sdk/communication/communication-call-automation/src/contentDownloader.ts b/sdk/communication/communication-call-automation/src/contentDownloader.ts index 2f417a2f120c..faa29a1e796b 100644 --- a/sdk/communication/communication-call-automation/src/contentDownloader.ts +++ b/sdk/communication/communication-call-automation/src/contentDownloader.ts @@ -1,17 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CallAutomationApiClient } from "./generated/src/callAutomationApiClient"; -import { +import type { CallAutomationApiClient } from "./generated/src/callAutomationApiClient"; +import type { AddPipelineOptions, - createHttpHeaders, - createPipelineRequest, PipelineRequest, PipelineRequestOptions, PipelineResponse, SendRequest, } from "@azure/core-rest-pipeline"; -import { DeleteRecordingOptions, DownloadRecordingOptions } from "./models/options"; +import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; +import type { DeleteRecordingOptions, DownloadRecordingOptions } from "./models/options"; /** Class containing ContentDownloading operations. */ export class ContentDownloaderImpl { diff --git a/sdk/communication/communication-call-automation/src/credential/callAutomationAccessKeyCredentialPolicy.ts b/sdk/communication/communication-call-automation/src/credential/callAutomationAccessKeyCredentialPolicy.ts index 801bcde0a4b6..69d010cb0529 100644 --- a/sdk/communication/communication-call-automation/src/credential/callAutomationAccessKeyCredentialPolicy.ts +++ b/sdk/communication/communication-call-automation/src/credential/callAutomationAccessKeyCredentialPolicy.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, SendRequest, } from "@azure/core-rest-pipeline"; -import { KeyCredential } from "@azure/core-auth"; +import type { KeyCredential } from "@azure/core-auth"; import { shaHMAC, shaHash } from "./cryptoUtils"; import { isNode } from "@azure/core-util"; diff --git a/sdk/communication/communication-call-automation/src/credential/callAutomationAuthPolicy.ts b/sdk/communication/communication-call-automation/src/credential/callAutomationAuthPolicy.ts index 03efb7d69b09..5ce86340272f 100644 --- a/sdk/communication/communication-call-automation/src/credential/callAutomationAuthPolicy.ts +++ b/sdk/communication/communication-call-automation/src/credential/callAutomationAuthPolicy.ts @@ -1,14 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { BearerTokenAuthenticationPolicyOptions, PipelinePolicy, - bearerTokenAuthenticationPolicy, } from "@azure/core-rest-pipeline"; -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; +import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { createCallAutomationAccessKeyCredentialPolicy } from "./callAutomationAccessKeyCredentialPolicy"; -import { CallAutomationApiClient, CallAutomationApiClientOptionalParams } from "./../generated/src"; +import type { CallAutomationApiClientOptionalParams } from "./../generated/src"; +import { CallAutomationApiClient } from "./../generated/src"; import { createCommunicationAuthPolicy } from "@azure/communication-common"; /** * Creates a pipeline policy to authenticate request based diff --git a/sdk/communication/communication-call-automation/src/eventprocessor/callAutomationEventProcessor.ts b/sdk/communication/communication-call-automation/src/eventprocessor/callAutomationEventProcessor.ts index 74f802ef8a61..753595b480e2 100644 --- a/sdk/communication/communication-call-automation/src/eventprocessor/callAutomationEventProcessor.ts +++ b/sdk/communication/communication-call-automation/src/eventprocessor/callAutomationEventProcessor.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { EventEmitter } from "events"; -import { CallAutomationEvent } from "../models/events"; +import type { CallAutomationEvent } from "../models/events"; import { parseCallAutomationEvent } from "../callAutomationEventParser"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; /** * Call Automation's EventProcessor for incoming events for ease of use. diff --git a/sdk/communication/communication-call-automation/src/eventprocessor/eventResponses.ts b/sdk/communication/communication-call-automation/src/eventprocessor/eventResponses.ts index 5d4bfa62cddd..6acec873b3b6 100644 --- a/sdk/communication/communication-call-automation/src/eventprocessor/eventResponses.ts +++ b/sdk/communication/communication-call-automation/src/eventprocessor/eventResponses.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AddParticipantSucceeded, AddParticipantFailed, CallConnected, diff --git a/sdk/communication/communication-call-automation/src/models/events.ts b/sdk/communication/communication-call-automation/src/models/events.ts index fe275c103bb7..4b25abc05042 100644 --- a/sdk/communication/communication-call-automation/src/models/events.ts +++ b/sdk/communication/communication-call-automation/src/models/events.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommunicationIdentifier } from "@azure/communication-common"; +import type { CommunicationIdentifier } from "@azure/communication-common"; -import { +import type { RestAddParticipantSucceeded, RestAddParticipantFailed, RestRemoveParticipantSucceeded, @@ -38,7 +38,7 @@ import { RestHoldFailed, } from "../generated/src/models"; -import { CallParticipant } from "./models"; +import type { CallParticipant } from "./models"; /** Callback events for Call Automation */ export type CallAutomationEvent = diff --git a/sdk/communication/communication-call-automation/src/models/mapper.ts b/sdk/communication/communication-call-automation/src/models/mapper.ts index 69bc0ebede32..7b9a9b45a679 100644 --- a/sdk/communication/communication-call-automation/src/models/mapper.ts +++ b/sdk/communication/communication-call-automation/src/models/mapper.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CompositeMapper } from "@azure/core-client"; +import type { CompositeMapper } from "@azure/core-client"; export const CloudEventMapper: CompositeMapper = { type: { diff --git a/sdk/communication/communication-call-automation/src/models/models.ts b/sdk/communication/communication-call-automation/src/models/models.ts index 6945eb048537..7f310cb8e9c3 100644 --- a/sdk/communication/communication-call-automation/src/models/models.ts +++ b/sdk/communication/communication-call-automation/src/models/models.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CommunicationIdentifier, CommunicationUserIdentifier, MicrosoftTeamsUserIdentifier, MicrosoftTeamsAppIdentifier, PhoneNumberIdentifier, } from "@azure/communication-common"; -import { CallConnectionStateModel } from "../generated/src"; +import type { CallConnectionStateModel } from "../generated/src"; export { CallConnectionStateModel, diff --git a/sdk/communication/communication-call-automation/src/models/options.ts b/sdk/communication/communication-call-automation/src/models/options.ts index bab853eb54e8..a4f49951f974 100644 --- a/sdk/communication/communication-call-automation/src/models/options.ts +++ b/sdk/communication/communication-call-automation/src/models/options.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PhoneNumberIdentifier, CommunicationIdentifier } from "@azure/communication-common"; -import { OperationOptions } from "@azure/core-client"; -import { +import type { PhoneNumberIdentifier, CommunicationIdentifier } from "@azure/communication-common"; +import type { OperationOptions } from "@azure/core-client"; +import type { MediaStreamingConfiguration, TranscriptionConfiguration, CallRejectReason, diff --git a/sdk/communication/communication-call-automation/src/models/responses.ts b/sdk/communication/communication-call-automation/src/models/responses.ts index b4ec3951087b..32efdaea173f 100644 --- a/sdk/communication/communication-call-automation/src/models/responses.ts +++ b/sdk/communication/communication-call-automation/src/models/responses.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CallConnection } from "../callConnection"; -import { CallConnectionProperties, CallParticipant } from "./models"; -import { RecordingState } from "../generated/src"; -import { +import type { CallConnection } from "../callConnection"; +import type { CallConnectionProperties, CallParticipant } from "./models"; +import type { RecordingState } from "../generated/src"; +import type { AddParticipantEventResult, AnswerCallEventResult, CancelAllMediaOperationsEventResult, @@ -16,7 +16,7 @@ import { TransferCallToParticipantEventResult, CancelAddParticipantEventResult, } from "../eventprocessor/eventResponses"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; /** * CreateCall result diff --git a/sdk/communication/communication-call-automation/src/models/transcription.ts b/sdk/communication/communication-call-automation/src/models/transcription.ts index 834ef9651bf8..5b5855ae93a8 100644 --- a/sdk/communication/communication-call-automation/src/models/transcription.ts +++ b/sdk/communication/communication-call-automation/src/models/transcription.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommunicationIdentifier } from "@azure/communication-common"; +import type { CommunicationIdentifier } from "@azure/communication-common"; /** * The status of the result of transcription. diff --git a/sdk/communication/communication-call-automation/src/utli/converters.ts b/sdk/communication/communication-call-automation/src/utli/converters.ts index b25f5d168f5c..7cc3187111df 100644 --- a/sdk/communication/communication-call-automation/src/utli/converters.ts +++ b/sdk/communication/communication-call-automation/src/utli/converters.ts @@ -1,32 +1,34 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PhoneNumberIdentifier, CommunicationUserIdentifier, UnknownIdentifier, - serializeCommunicationIdentifier, SerializedPhoneNumberIdentifier, CommunicationIdentifier, + SerializedCommunicationIdentifier, + MicrosoftTeamsUserIdentifier, + MicrosoftTeamsAppIdentifier, +} from "@azure/communication-common"; +import { + serializeCommunicationIdentifier, isCommunicationUserIdentifier, isPhoneNumberIdentifier, isUnknownIdentifier, - SerializedCommunicationIdentifier, isMicrosoftTeamsUserIdentifier, - MicrosoftTeamsUserIdentifier, isMicrosoftTeamsAppIdentifier, - MicrosoftTeamsAppIdentifier, } from "@azure/communication-common"; -import { +import type { CallParticipantInternal, CommunicationIdentifierModel, CommunicationIdentifierModelKind, KnownCommunicationCloudEnvironmentModel, - KnownCommunicationIdentifierModelKind, PhoneNumberIdentifierModel, CommunicationUserIdentifierModel, } from "../generated/src"; -import { CallParticipant } from "../models/models"; +import { KnownCommunicationIdentifierModelKind } from "../generated/src"; +import type { CallParticipant } from "../models/models"; function extractKind( identifierModel: CommunicationIdentifierModel, diff --git a/sdk/communication/communication-call-automation/src/utli/streamingDataParser.ts b/sdk/communication/communication-call-automation/src/utli/streamingDataParser.ts index 011f2c2d3340..802be4b1dc6d 100644 --- a/sdk/communication/communication-call-automation/src/utli/streamingDataParser.ts +++ b/sdk/communication/communication-call-automation/src/utli/streamingDataParser.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { createIdentifierFromRawId } from "@azure/communication-common"; -import { TranscriptionMetadata, TranscriptionData } from "../models/transcription"; +import type { TranscriptionMetadata, TranscriptionData } from "../models/transcription"; /** Parse the incoming package. */ export function streamingData( diff --git a/sdk/communication/communication-call-automation/test/callAutomationClient.spec.ts b/sdk/communication/communication-call-automation/test/callAutomationClient.spec.ts index 5ba0c3e06f4e..cb1f5db2fd64 100644 --- a/sdk/communication/communication-call-automation/test/callAutomationClient.spec.ts +++ b/sdk/communication/communication-call-automation/test/callAutomationClient.spec.ts @@ -1,26 +1,25 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; -import Sinon, { SinonStubbedInstance } from "sinon"; -import { CallConnectionProperties } from "../src/models/models"; -import { AnswerCallResult, CreateCallResult } from "../src/models/responses"; +import type { Recorder } from "@azure-tools/test-recorder"; +import type { SinonStubbedInstance } from "sinon"; +import Sinon from "sinon"; +import type { CallConnectionProperties } from "../src/models/models"; +import type { AnswerCallResult, CreateCallResult } from "../src/models/responses"; import { CALL_CALLBACK_URL, CALL_INCOMING_CALL_CONTEXT, CALL_TARGET_ID, CALL_TARGET_ID_2, } from "./utils/connectionUtils"; -import { CommunicationIdentifier, CommunicationUserIdentifier } from "@azure/communication-common"; +import type { + CommunicationIdentifier, + CommunicationUserIdentifier, +} from "@azure/communication-common"; import { assert } from "chai"; -import { Context } from "mocha"; -import { - CallAutomationClient, - CallInvite, - CallConnection, - CreateCallOptions, - AnswerCallOptions, -} from "../src"; +import type { Context } from "mocha"; +import type { CallInvite, CallConnection, CreateCallOptions, AnswerCallOptions } from "../src"; +import { CallAutomationClient } from "../src"; import { createRecorder, createTestUser, @@ -35,7 +34,10 @@ import { loadPersistedEvents, persistEvents, } from "./utils/recordedClient"; -import { AnswerCallEventResult, CreateCallEventResult } from "../src/eventprocessor/eventResponses"; +import type { + AnswerCallEventResult, + CreateCallEventResult, +} from "../src/eventprocessor/eventResponses"; import { randomUUID } from "@azure/core-util"; describe("Call Automation Client Unit Tests", () => { diff --git a/sdk/communication/communication-call-automation/test/callAutomationEventProcessor.spec.ts b/sdk/communication/communication-call-automation/test/callAutomationEventProcessor.spec.ts index cb8389c802ed..46bd6082af1e 100644 --- a/sdk/communication/communication-call-automation/test/callAutomationEventProcessor.spec.ts +++ b/sdk/communication/communication-call-automation/test/callAutomationEventProcessor.spec.ts @@ -1,15 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { assert, expect } from "chai"; -import { CallAutomationEventProcessor } from "../src/eventprocessor/callAutomationEventProcessor"; -import { CallConnected, CallDisconnected } from "../src/models/events"; +import type { CallAutomationEventProcessor } from "../src/eventprocessor/callAutomationEventProcessor"; +import type { CallConnected, CallDisconnected } from "../src/models/events"; import { CALL_CALLBACK_URL, MOCK_CONNECTION_STRING, CALL_CALLER_ID, CALL_TARGET_ID, } from "./utils/connectionUtils"; -import { CallAutomationClient, CallInvite } from "../src"; +import type { CallInvite } from "../src"; +import { CallAutomationClient } from "../src"; import { generateHttpClient } from "./utils/mockClient"; describe("Call Automation Event Processor Unit Tests", () => { diff --git a/sdk/communication/communication-call-automation/test/callConnection.spec.ts b/sdk/communication/communication-call-automation/test/callConnection.spec.ts index b9accf3dfcf8..50ef375166f6 100644 --- a/sdk/communication/communication-call-automation/test/callConnection.spec.ts +++ b/sdk/communication/communication-call-automation/test/callConnection.spec.ts @@ -1,14 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; -import { CommunicationUserIdentifier } from "@azure/communication-common"; +import type { Recorder } from "@azure-tools/test-recorder"; +import type { CommunicationUserIdentifier } from "@azure/communication-common"; import { assert } from "chai"; -import { Context } from "mocha"; -import { +import type { Context } from "mocha"; +import type { CallAutomationClient, CallInvite, - CallConnection, CallConnectionProperties, CallParticipant, ListParticipantsResult, @@ -28,7 +27,9 @@ import { RemoveParticipantsOption, CancelAddParticipantOperationOptions, } from "../src"; -import Sinon, { SinonStubbedInstance } from "sinon"; +import { CallConnection } from "../src"; +import type { SinonStubbedInstance } from "sinon"; +import Sinon from "sinon"; import { CALL_TARGET_ID, CALL_TARGET_ID_2 } from "./utils/connectionUtils"; import { createRecorder, diff --git a/sdk/communication/communication-call-automation/test/callMediaClient.spec.ts b/sdk/communication/communication-call-automation/test/callMediaClient.spec.ts index 7b52b41452a8..c317f024ff08 100644 --- a/sdk/communication/communication-call-automation/test/callMediaClient.spec.ts +++ b/sdk/communication/communication-call-automation/test/callMediaClient.spec.ts @@ -1,27 +1,22 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. // External module imports -import { Context } from "mocha"; +import type { Context } from "mocha"; // Internal module imports -import { Recorder } from "@azure-tools/test-recorder"; -import { +import type { Recorder } from "@azure-tools/test-recorder"; +import type { CommunicationIdentifier, CommunicationUserIdentifier, PhoneNumberIdentifier, - serializeCommunicationIdentifier, } from "@azure/communication-common"; +import { serializeCommunicationIdentifier } from "@azure/communication-common"; // Parent directory imports import { CallMedia } from "../src/callMedia"; -import { - FileSource, - TextSource, - SsmlSource, - RecognitionChoice, - DtmfTone, -} from "../src/models/models"; -import { +import type { FileSource, TextSource, SsmlSource, RecognitionChoice } from "../src/models/models"; +import { DtmfTone } from "../src/models/models"; +import type { CallMediaRecognizeDtmfOptions, CallMediaRecognizeChoiceOptions, CallMediaRecognizeSpeechOptions, @@ -30,7 +25,6 @@ import { CallInvite, ContinuousDtmfRecognitionOptions, SendDtmfTonesOptions, - CallAutomationEventProcessor, CreateCallOptions, AnswerCallOptions, PlayOptions, @@ -39,6 +33,7 @@ import { HoldOptions, UnholdOptions, } from "../src"; +import { CallAutomationEventProcessor } from "../src"; // Current directory imports import { diff --git a/sdk/communication/communication-call-automation/test/callRecordingClient.spec.ts b/sdk/communication/communication-call-automation/test/callRecordingClient.spec.ts index 91c50ae3aaa1..9826eb4d97cc 100644 --- a/sdk/communication/communication-call-automation/test/callRecordingClient.spec.ts +++ b/sdk/communication/communication-call-automation/test/callRecordingClient.spec.ts @@ -3,7 +3,7 @@ import sinon from "sinon"; import { assert } from "chai"; -import * as RestModel from "../src/generated/src/models"; +import type * as RestModel from "../src/generated/src/models"; import { createRecordingClient, generateHttpClient } from "./utils/mockClient"; import { baseUri, @@ -15,18 +15,21 @@ import { RECORDING_STATE, } from "./utils/connectionUtils"; import { CallRecording } from "../src/callRecording"; -import { +import type { AnswerCallOptions, CreateCallOptions, PlayOptions, StartRecordingOptions, } from "../src/models/options"; import { apiVersion } from "../src/generated/src/models/parameters"; -import { ChannelAffinity } from "@azure/communication-call-automation"; -import { CommunicationIdentifier, CommunicationUserIdentifier } from "@azure/communication-common"; -import { CallAutomationClient, CallInvite, CallConnection } from "../src"; -import { Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { ChannelAffinity } from "@azure/communication-call-automation"; +import type { + CommunicationIdentifier, + CommunicationUserIdentifier, +} from "@azure/communication-common"; +import type { CallAutomationClient, CallInvite, CallConnection } from "../src"; +import type { Recorder } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; import { createRecorder, createTestUser, @@ -42,7 +45,7 @@ import { persistEvents, fileSourceUrl, } from "./utils/recordedClient"; -import { FileSource } from "../src/models/models"; +import type { FileSource } from "../src/models/models"; describe("CallRecording Unit Tests", async function () { let callRecording: CallRecording; diff --git a/sdk/communication/communication-call-automation/test/streamingDataParser.spec.ts b/sdk/communication/communication-call-automation/test/streamingDataParser.spec.ts index 82790c123d1a..c2fc18f99bc6 100644 --- a/sdk/communication/communication-call-automation/test/streamingDataParser.spec.ts +++ b/sdk/communication/communication-call-automation/test/streamingDataParser.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TranscriptionData, TranscriptionMetadata } from "../src/models/transcription"; +import type { TranscriptionData, TranscriptionMetadata } from "../src/models/transcription"; import { streamingData } from "../src/utli/streamingDataParser"; import { assert } from "chai"; diff --git a/sdk/communication/communication-call-automation/test/utils/mockClient.ts b/sdk/communication/communication-call-automation/test/utils/mockClient.ts index 4b5ad3338796..0ecf349dabc0 100644 --- a/sdk/communication/communication-call-automation/test/utils/mockClient.ts +++ b/sdk/communication/communication-call-automation/test/utils/mockClient.ts @@ -1,12 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - HttpClient, - PipelineRequest, - PipelineResponse, - createHttpHeaders, -} from "@azure/core-rest-pipeline"; +import type { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; import { baseUri, CALL_CONNECTION_ID, generateToken } from "../utils/connectionUtils"; import { CallMedia } from "../../src/callMedia"; import { CallRecording } from "../../src/callRecording"; diff --git a/sdk/communication/communication-call-automation/test/utils/recordedClient.ts b/sdk/communication/communication-call-automation/test/utils/recordedClient.ts index 40f37dcc82f1..c25176706134 100644 --- a/sdk/communication/communication-call-automation/test/utils/recordedClient.ts +++ b/sdk/communication/communication-call-automation/test/utils/recordedClient.ts @@ -4,48 +4,45 @@ import * as dotenv from "dotenv"; import { isNode } from "@azure/core-util"; import fs from "fs"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; import { Recorder, - RecorderStartOptions, env, assertEnvironmentVariable, isRecordMode, isPlaybackMode, } from "@azure-tools/test-recorder"; -import { Test } from "mocha"; +import type { Test } from "mocha"; import { generateToken } from "./connectionUtils"; -import { - CommunicationIdentityClient, - CommunicationIdentityClientOptions, -} from "@azure/communication-identity"; -import { +import type { CommunicationIdentityClientOptions } from "@azure/communication-identity"; +import { CommunicationIdentityClient } from "@azure/communication-identity"; +import type { CommunicationUserIdentifier, CommunicationIdentifier, + CommunicationIdentifierKind, +} from "@azure/communication-common"; +import { serializeCommunicationIdentifier, isPhoneNumberIdentifier, createIdentifierFromRawId, - CommunicationIdentifierKind, } from "@azure/communication-common"; -import { - CallAutomationClient, - CallAutomationClientOptions, - CallAutomationEvent, - parseCallAutomationEvent, -} from "../../src"; -import { CommunicationIdentifierModel } from "../../src/generated/src"; +import type { CallAutomationClientOptions, CallAutomationEvent } from "../../src"; +import { CallAutomationClient, parseCallAutomationEvent } from "../../src"; +import type { CommunicationIdentifierModel } from "../../src/generated/src"; import { assert } from "chai"; import { createDefaultHttpClient, createHttpHeaders, createPipelineRequest, } from "@azure/core-rest-pipeline"; -import { - ServiceBusClient, +import type { ServiceBusReceiver, ServiceBusReceivedMessage, ProcessErrorArgs, } from "@azure/service-bus"; -import { PhoneNumbersClient, PhoneNumbersClientOptions } from "@azure/communication-phone-numbers"; +import { ServiceBusClient } from "@azure/service-bus"; +import type { PhoneNumbersClientOptions } from "@azure/communication-phone-numbers"; +import { PhoneNumbersClient } from "@azure/communication-phone-numbers"; if (isNode) { dotenv.config(); diff --git a/sdk/communication/communication-chat/review/communication-chat.api.md b/sdk/communication/communication-chat/review/communication-chat.api.md index 1f55d49378e5..142e96666123 100644 --- a/sdk/communication/communication-chat/review/communication-chat.api.md +++ b/sdk/communication/communication-chat/review/communication-chat.api.md @@ -10,13 +10,13 @@ import { ChatMessageReceivedEvent } from '@azure/communication-signaling'; import { ChatThreadCreatedEvent } from '@azure/communication-signaling'; import { ChatThreadDeletedEvent } from '@azure/communication-signaling'; import { ChatThreadPropertiesUpdatedEvent } from '@azure/communication-signaling'; -import { CommonClientOptions } from '@azure/core-client'; -import { CommunicationIdentifier } from '@azure/communication-common'; -import { CommunicationIdentifierKind } from '@azure/communication-common'; -import { CommunicationTokenCredential } from '@azure/communication-common'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { CommunicationIdentifier } from '@azure/communication-common'; +import type { CommunicationIdentifierKind } from '@azure/communication-common'; +import type { CommunicationTokenCredential } from '@azure/communication-common'; import * as coreClient from '@azure/core-client'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; import { ParticipantsAddedEvent } from '@azure/communication-signaling'; import { ParticipantsRemovedEvent } from '@azure/communication-signaling'; import { ReadReceiptReceivedEvent } from '@azure/communication-signaling'; diff --git a/sdk/communication/communication-chat/src/chatClient.ts b/sdk/communication/communication-chat/src/chatClient.ts index 8e3eafee82a7..50d6790f20b9 100644 --- a/sdk/communication/communication-chat/src/chatClient.ts +++ b/sdk/communication/communication-chat/src/chatClient.ts @@ -2,13 +2,13 @@ // Licensed under the MIT License. /// -import { +import type { ChatClientOptions, CreateChatThreadOptions, DeleteChatThreadOptions, ListChatThreadsOptions, } from "./models/options"; -import { +import type { ChatEventId, ChatMessageDeletedEvent, ChatMessageEditedEvent, @@ -21,12 +21,9 @@ import { ReadReceiptReceivedEvent, TypingIndicatorReceivedEvent, } from "./models/events"; -import { ChatThreadItem, CreateChatThreadResult, ListPageSettings } from "./models/models"; -import { - ConnectionState, - SignalingClient, - SignalingClientOptions, -} from "@azure/communication-signaling"; +import type { ChatThreadItem, CreateChatThreadResult, ListPageSettings } from "./models/models"; +import type { SignalingClient, SignalingClientOptions } from "@azure/communication-signaling"; +import { ConnectionState } from "@azure/communication-signaling"; import { mapToChatParticipantRestModel, mapToCreateChatThreadOptionsRestModel, @@ -35,11 +32,11 @@ import { import { ChatApiClient } from "./generated/src"; import { ChatThreadClient } from "./chatThreadClient"; -import { CommunicationTokenCredential } from "@azure/communication-common"; -import { CreateChatThreadRequest } from "./models/requests"; +import type { CommunicationTokenCredential } from "@azure/communication-common"; +import type { CreateChatThreadRequest } from "./models/requests"; import { EventEmitter } from "events"; -import { InternalPipelineOptions } from "@azure/core-rest-pipeline"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; import { createCommunicationTokenCredentialPolicy } from "./credential/communicationTokenCredentialPolicy"; import { generateUuid } from "./models/uuid"; import { getSignalingClient } from "./signaling/signalingClient"; diff --git a/sdk/communication/communication-chat/src/chatThreadClient.ts b/sdk/communication/communication-chat/src/chatThreadClient.ts index 4ce356b8e426..47d151e327a5 100644 --- a/sdk/communication/communication-chat/src/chatThreadClient.ts +++ b/sdk/communication/communication-chat/src/chatThreadClient.ts @@ -2,19 +2,19 @@ // Licensed under the MIT License. import { logger } from "./models/logger"; -import { +import type { CommunicationIdentifier, CommunicationTokenCredential, - serializeCommunicationIdentifier, } from "@azure/communication-common"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { +import { serializeCommunicationIdentifier } from "@azure/communication-common"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { AddParticipantsRequest, SendMessageRequest, SendReadReceiptRequest, } from "./models/requests"; -import { +import type { AddChatParticipantsResult, ChatMessage, ChatMessageReadReceipt, @@ -30,7 +30,7 @@ import { mapToChatThreadPropertiesSdkModel, mapToReadReceiptSdkModel, } from "./models/mappers"; -import { +import type { AddParticipantsOptions, ChatThreadClientOptions, DeleteMessageOptions, @@ -47,7 +47,7 @@ import { UpdateTopicOptions, } from "./models/options"; import { ChatApiClient } from "./generated/src"; -import { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; import { createCommunicationTokenCredentialPolicy } from "./credential/communicationTokenCredentialPolicy"; import { tracingClient } from "./generated/src/tracing"; diff --git a/sdk/communication/communication-chat/src/credential/communicationTokenCredentialPolicy.ts b/sdk/communication/communication-chat/src/credential/communicationTokenCredentialPolicy.ts index 27af1aafb0cc..eb900279250b 100644 --- a/sdk/communication/communication-chat/src/credential/communicationTokenCredentialPolicy.ts +++ b/sdk/communication/communication-chat/src/credential/communicationTokenCredentialPolicy.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommunicationTokenCredential } from "@azure/communication-common"; -import { +import type { CommunicationTokenCredential } from "@azure/communication-common"; +import type { BearerTokenAuthenticationPolicyOptions, PipelinePolicy, - bearerTokenAuthenticationPolicy, } from "@azure/core-rest-pipeline"; +import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; /** * Creates a new CommunicationTokenCredentialPolicy factory. diff --git a/sdk/communication/communication-chat/src/models/mappers.ts b/sdk/communication/communication-chat/src/models/mappers.ts index 258c8106aab5..754e22d2e1df 100644 --- a/sdk/communication/communication-chat/src/models/mappers.ts +++ b/sdk/communication/communication-chat/src/models/mappers.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { SerializedCommunicationIdentifier } from "@azure/communication-common"; import { - SerializedCommunicationIdentifier, deserializeCommunicationIdentifier, serializeCommunicationIdentifier, } from "@azure/communication-common"; -import * as RestModel from "../generated/src/models"; -import { AddParticipantsRequest } from "./requests"; -import { CreateChatThreadOptions } from "./options"; -import { +import type * as RestModel from "../generated/src/models"; +import type { AddParticipantsRequest } from "./requests"; +import type { CreateChatThreadOptions } from "./options"; +import type { ChatMessage, ChatMessageContent, ChatMessageReadReceipt, diff --git a/sdk/communication/communication-chat/src/models/models.ts b/sdk/communication/communication-chat/src/models/models.ts index 7efb869a9e3b..db9505b68c76 100644 --- a/sdk/communication/communication-chat/src/models/models.ts +++ b/sdk/communication/communication-chat/src/models/models.ts @@ -1,8 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommunicationIdentifier, CommunicationIdentifierKind } from "@azure/communication-common"; -import { ChatError, ChatMessageType } from "../generated/src"; +import type { + CommunicationIdentifier, + CommunicationIdentifierKind, +} from "@azure/communication-common"; +import type { ChatError, ChatMessageType } from "../generated/src"; export { AddChatParticipantsResult, diff --git a/sdk/communication/communication-chat/src/models/options.ts b/sdk/communication/communication-chat/src/models/options.ts index d80ce2cff206..c1c7611362af 100644 --- a/sdk/communication/communication-chat/src/models/options.ts +++ b/sdk/communication/communication-chat/src/models/options.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { ChatMessageType } from "../generated/src/models"; import { - ChatMessageType, ChatListChatThreadsOptionalParams as RestListChatThreadsOptions, ChatThreadListChatMessagesOptionalParams as RestListMessagesOptions, ChatThreadListChatParticipantsOptionalParams as RestListParticipantsOptions, ChatThreadListChatReadReceiptsOptionalParams as RestListReadReceiptsOptions, } from "../generated/src/models"; -import { ChatParticipant } from "./models"; +import type { ChatParticipant } from "./models"; export { RestListMessagesOptions, diff --git a/sdk/communication/communication-chat/src/models/requests.ts b/sdk/communication/communication-chat/src/models/requests.ts index 374be12f70c5..bc1d5f08638f 100644 --- a/sdk/communication/communication-chat/src/models/requests.ts +++ b/sdk/communication/communication-chat/src/models/requests.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ChatParticipant } from "./models"; +import type { ChatParticipant } from "./models"; export { SendReadReceiptRequest } from "../generated/src/models"; diff --git a/sdk/communication/communication-chat/src/signaling/signalingClient.browser.ts b/sdk/communication/communication-chat/src/signaling/signalingClient.browser.ts index 3260933ebf07..c61d6859c722 100644 --- a/sdk/communication/communication-chat/src/signaling/signalingClient.browser.ts +++ b/sdk/communication/communication-chat/src/signaling/signalingClient.browser.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommunicationSignalingClient, SignalingClient } from "@azure/communication-signaling"; -import { CommunicationTokenCredential } from "@azure/communication-common"; -import { AzureLogger } from "@azure/logger"; -import { SignalingClientOptions } from "./signalingClient"; +import type { SignalingClient } from "@azure/communication-signaling"; +import { CommunicationSignalingClient } from "@azure/communication-signaling"; +import type { CommunicationTokenCredential } from "@azure/communication-common"; +import type { AzureLogger } from "@azure/logger"; +import type { SignalingClientOptions } from "./signalingClient"; export const getSignalingClient = ( credential: CommunicationTokenCredential, diff --git a/sdk/communication/communication-chat/src/signaling/signalingClient.ts b/sdk/communication/communication-chat/src/signaling/signalingClient.ts index f9e5b72dc869..df7a25836733 100644 --- a/sdk/communication/communication-chat/src/signaling/signalingClient.ts +++ b/sdk/communication/communication-chat/src/signaling/signalingClient.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommunicationSignalingClient, SignalingClient } from "@azure/communication-signaling"; -import { CommunicationTokenCredential } from "@azure/communication-common"; -import { AzureLogger } from "@azure/logger"; -import { ChatClientOptions } from "@azure/communication-chat"; +import type { SignalingClient } from "@azure/communication-signaling"; +import { CommunicationSignalingClient } from "@azure/communication-signaling"; +import type { CommunicationTokenCredential } from "@azure/communication-common"; +import type { AzureLogger } from "@azure/logger"; +import type { ChatClientOptions } from "@azure/communication-chat"; export interface SignalingClientOptions extends ChatClientOptions { resourceEndpoint?: string; diff --git a/sdk/communication/communication-chat/test/internal/chatClient.mocked.spec.ts b/sdk/communication/communication-chat/test/internal/chatClient.mocked.spec.ts index 0fb26480d9e7..6b50c5faf3f7 100644 --- a/sdk/communication/communication-chat/test/internal/chatClient.mocked.spec.ts +++ b/sdk/communication/communication-chat/test/internal/chatClient.mocked.spec.ts @@ -3,14 +3,13 @@ import sinon from "sinon"; import { assert, expect } from "chai"; -import { ChatClient, ChatClientOptions, CreateChatThreadRequest } from "../../src"; -import * as RestModel from "../../src/generated/src/models"; +import type { ChatClientOptions, CreateChatThreadRequest } from "../../src"; +import { ChatClient } from "../../src"; +import type * as RestModel from "../../src/generated/src/models"; import { apiVersion } from "../../src/generated/src/models/parameters"; import { baseUri, generateToken } from "../public/utils/connectionUtils"; -import { - AzureCommunicationTokenCredential, - CommunicationUserIdentifier, -} from "@azure/communication-common"; +import type { CommunicationUserIdentifier } from "@azure/communication-common"; +import { AzureCommunicationTokenCredential } from "@azure/communication-common"; import { createChatClient, generateHttpClient, diff --git a/sdk/communication/communication-chat/test/internal/chatThreadClient.mocked.spec.ts b/sdk/communication/communication-chat/test/internal/chatThreadClient.mocked.spec.ts index 25ef2d189b56..072f476a560f 100644 --- a/sdk/communication/communication-chat/test/internal/chatThreadClient.mocked.spec.ts +++ b/sdk/communication/communication-chat/test/internal/chatThreadClient.mocked.spec.ts @@ -3,18 +3,16 @@ import sinon from "sinon"; import { assert } from "chai"; -import { - AzureCommunicationTokenCredential, - CommunicationUserIdentifier, -} from "@azure/communication-common"; -import { +import type { CommunicationUserIdentifier } from "@azure/communication-common"; +import { AzureCommunicationTokenCredential } from "@azure/communication-common"; +import type { AddParticipantsRequest, - ChatThreadClient, SendMessageOptions, SendMessageRequest, UpdateMessageOptions, } from "../../src"; -import * as RestModel from "../../src/generated/src/models"; +import { ChatThreadClient } from "../../src"; +import type * as RestModel from "../../src/generated/src/models"; import { apiVersion } from "../../src/generated/src/models/parameters"; import { baseUri, generateToken } from "../public/utils/connectionUtils"; import { diff --git a/sdk/communication/communication-chat/test/internal/utils/mockClient.ts b/sdk/communication/communication-chat/test/internal/utils/mockClient.ts index 127e45bd332f..87cf11d3c71a 100644 --- a/sdk/communication/communication-chat/test/internal/utils/mockClient.ts +++ b/sdk/communication/communication-chat/test/internal/utils/mockClient.ts @@ -2,15 +2,12 @@ // Licensed under the MIT License. import { AzureCommunicationTokenCredential } from "@azure/communication-common"; -import { - HttpClient, - PipelineRequest, - PipelineResponse, - createHttpHeaders, -} from "@azure/core-rest-pipeline"; -import * as RestModel from "../../../src/generated/src/models"; -import { ChatClient, ChatParticipant, ChatThreadClient } from "../../../src"; -import { CommunicationIdentifierModel } from "../../../src/generated/src"; +import type { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; +import type * as RestModel from "../../../src/generated/src/models"; +import type { ChatParticipant } from "../../../src"; +import { ChatClient, ChatThreadClient } from "../../../src"; +import type { CommunicationIdentifierModel } from "../../../src/generated/src"; import { baseUri, generateToken } from "../../public/utils/connectionUtils"; export const mockCommunicationIdentifier: CommunicationIdentifierModel = { diff --git a/sdk/communication/communication-chat/test/public/chatClient.spec.ts b/sdk/communication/communication-chat/test/public/chatClient.spec.ts index 7f55f829a165..b987f7d4aeb9 100644 --- a/sdk/communication/communication-chat/test/public/chatClient.spec.ts +++ b/sdk/communication/communication-chat/test/public/chatClient.spec.ts @@ -1,15 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, isLiveMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isLiveMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { ChatClient, ChatThreadClient } from "../../src"; +import type { ChatClient, ChatThreadClient } from "../../src"; import { createChatClient, createRecorder, createTestUser } from "./utils/recordedClient"; import { isNode } from "@azure/core-util"; import sinon from "sinon"; -import { CommunicationIdentifier } from "@azure/communication-common"; -import { Context } from "mocha"; -import { CommunicationUserToken } from "@azure/communication-identity"; +import type { CommunicationIdentifier } from "@azure/communication-common"; +import type { Context } from "mocha"; +import type { CommunicationUserToken } from "@azure/communication-identity"; describe("ChatClient", function () { let threadId: string | undefined; diff --git a/sdk/communication/communication-chat/test/public/chatThreadClient.spec.ts b/sdk/communication/communication-chat/test/public/chatThreadClient.spec.ts index 6aab35eeeae8..69a0de1a2d55 100644 --- a/sdk/communication/communication-chat/test/public/chatThreadClient.spec.ts +++ b/sdk/communication/communication-chat/test/public/chatThreadClient.spec.ts @@ -2,13 +2,14 @@ // Licensed under the MIT License. /* eslint-disable @typescript-eslint/no-invalid-this */ -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { ChatClient, ChatMessage, ChatThreadClient } from "../../src"; +import type { ChatClient, ChatMessage, ChatThreadClient } from "../../src"; import { createChatClient, createRecorder, createTestUser } from "./utils/recordedClient"; -import { CommunicationIdentifier, getIdentifierKind } from "@azure/communication-common"; -import { Context } from "mocha"; -import { CommunicationUserToken } from "@azure/communication-identity"; +import type { CommunicationIdentifier } from "@azure/communication-common"; +import { getIdentifierKind } from "@azure/communication-common"; +import type { Context } from "mocha"; +import type { CommunicationUserToken } from "@azure/communication-identity"; describe("ChatThreadClient", function () { let messageId: string; diff --git a/sdk/communication/communication-chat/test/public/utils/recordedClient.ts b/sdk/communication/communication-chat/test/public/utils/recordedClient.ts index 680d154eb2b5..c264f74f5871 100644 --- a/sdk/communication/communication-chat/test/public/utils/recordedClient.ts +++ b/sdk/communication/communication-chat/test/public/utils/recordedClient.ts @@ -1,22 +1,23 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Test } from "mocha"; +import type { Test } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; import { Recorder, - RecorderStartOptions, assertEnvironmentVariable, env, isPlaybackMode, } from "@azure-tools/test-recorder"; import { ChatClient } from "../../../src"; +import type { CommunicationUserIdentifier } from "@azure/communication-common"; import { AzureCommunicationTokenCredential, - CommunicationUserIdentifier, parseClientArguments, } from "@azure/communication-common"; -import { CommunicationIdentityClient, CommunicationUserToken } from "@azure/communication-identity"; +import type { CommunicationUserToken } from "@azure/communication-identity"; +import { CommunicationIdentityClient } from "@azure/communication-identity"; import { generateToken } from "./connectionUtils"; import { NoOpCredential } from "@azure-tools/test-credential"; diff --git a/sdk/communication/communication-common/test/public/communicationKeyCredentialPolicy.spec.ts b/sdk/communication/communication-common/test/public/communicationKeyCredentialPolicy.spec.ts index 1e55639a45f7..fe6335e928b9 100644 --- a/sdk/communication/communication-common/test/public/communicationKeyCredentialPolicy.spec.ts +++ b/sdk/communication/communication-common/test/public/communicationKeyCredentialPolicy.spec.ts @@ -1,14 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { HttpClient, PipelineResponse } from "@azure/core-rest-pipeline"; import { - HttpClient, - PipelineResponse, createEmptyPipeline, createHttpHeaders, createPipelineRequest, } from "@azure/core-rest-pipeline"; -import { KeyCredential } from "@azure/core-auth"; +import type { KeyCredential } from "@azure/core-auth"; import { createCommunicationAccessKeyCredentialPolicy } from "../../src/index.js"; import { isNodeLike } from "@azure/core-util"; import { set } from "mockdate"; diff --git a/sdk/communication/communication-common/test/public/identifierModelSerializer.spec.ts b/sdk/communication/communication-common/test/public/identifierModelSerializer.spec.ts index 78218b3c703b..726398d5958f 100644 --- a/sdk/communication/communication-common/test/public/identifierModelSerializer.spec.ts +++ b/sdk/communication/communication-common/test/public/identifierModelSerializer.spec.ts @@ -1,10 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CommunicationIdentifier, CommunicationIdentifierKind, SerializedCommunicationIdentifier, +} from "../../src/index.js"; +import { deserializeCommunicationIdentifier, serializeCommunicationIdentifier, } from "../../src/index.js"; diff --git a/sdk/communication/communication-common/test/public/identifierModels.spec.ts b/sdk/communication/communication-common/test/public/identifierModels.spec.ts index 53ffe4d0aca0..89ae219a5d87 100644 --- a/sdk/communication/communication-common/test/public/identifierModels.spec.ts +++ b/sdk/communication/communication-common/test/public/identifierModels.spec.ts @@ -1,10 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CommunicationIdentifier, CommunicationIdentifierKind, PhoneNumberIdentifier, +} from "../../src/index.js"; +import { createIdentifierFromRawId, getIdentifierKind, getIdentifierRawId, diff --git a/sdk/communication/communication-common/test/public/utils/credentialUtils.ts b/sdk/communication/communication-common/test/public/utils/credentialUtils.ts index 18f1d5b39e0e..b9bc7a4f7546 100644 --- a/sdk/communication/communication-common/test/public/utils/credentialUtils.ts +++ b/sdk/communication/communication-common/test/public/utils/credentialUtils.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureKeyCredential } from "@azure/core-auth"; +import type { AzureKeyCredential } from "@azure/core-auth"; import { assert } from "vitest"; export const assertPropertyNames = ( diff --git a/sdk/communication/communication-email/review/communication-email.api.md b/sdk/communication/communication-email/review/communication-email.api.md index f22438e405c1..aef0158f4a84 100644 --- a/sdk/communication/communication-email/review/communication-email.api.md +++ b/sdk/communication/communication-email/review/communication-email.api.md @@ -4,12 +4,12 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationOptions } from '@azure/core-client'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationOptions } from '@azure/core-client'; +import type { PollerLike } from '@azure/core-lro'; +import type { PollOperationState } from '@azure/core-lro'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface EmailAddress { diff --git a/sdk/communication/communication-email/src/emailClient.ts b/sdk/communication/communication-email/src/emailClient.ts index 8179e98d3dbe..b22fd75fc12d 100644 --- a/sdk/communication/communication-email/src/emailClient.ts +++ b/sdk/communication/communication-email/src/emailClient.ts @@ -1,18 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { EmailClientOptions, EmailMessage, EmailSendOptionalParams } from "./models"; -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import type { EmailClientOptions, EmailMessage, EmailSendOptionalParams } from "./models"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { PollerLike, PollOperationState } from "@azure/core-lro"; import { createCommunicationAuthPolicy, isKeyCredential, parseClientArguments, } from "@azure/communication-common"; import { EmailRestApiClient } from "./generated/src/emailRestApiClient"; -import { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; import { logger } from "./logger"; -import { EmailSendResponse } from "./generated/src"; +import type { EmailSendResponse } from "./generated/src"; /** * Checks whether the type of a value is EmailClientOptions or not. diff --git a/sdk/communication/communication-email/src/models.ts b/sdk/communication/communication-email/src/models.ts index 1921e94ee9fa..867ac18fe968 100644 --- a/sdk/communication/communication-email/src/models.ts +++ b/sdk/communication/communication-email/src/models.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; -import { EmailRecipients, EmailAttachment, EmailAddress } from "./models"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { EmailRecipients, EmailAttachment, EmailAddress } from "./models"; /** * Client options used to configure Email Client API requests. diff --git a/sdk/communication/communication-email/test/public/emailClient.spec.ts b/sdk/communication/communication-email/test/public/emailClient.spec.ts index 146af4d713de..29f32b827ed7 100644 --- a/sdk/communication/communication-email/test/public/emailClient.spec.ts +++ b/sdk/communication/communication-email/test/public/emailClient.spec.ts @@ -1,9 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { EmailClient, EmailMessage, KnownEmailSendStatus } from "../../src"; -import { Recorder, env } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { EmailClient, EmailMessage } from "../../src"; +import { KnownEmailSendStatus } from "../../src"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; import { assert } from "chai"; import { createRecordedEmailClientWithConnectionString } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-email/test/public/utils/recordedClient.ts b/sdk/communication/communication-email/test/public/utils/recordedClient.ts index ed22d18b6742..5f6c0ce20a25 100644 --- a/sdk/communication/communication-email/test/public/utils/recordedClient.ts +++ b/sdk/communication/communication-email/test/public/utils/recordedClient.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context, Test } from "mocha"; -import { Recorder, SanitizerOptions, env } from "@azure-tools/test-recorder"; +import type { Context, Test } from "mocha"; +import type { SanitizerOptions } from "@azure-tools/test-recorder"; +import { Recorder, env } from "@azure-tools/test-recorder"; import { EmailClient } from "../../../src"; export interface RecordedEmailClient { diff --git a/sdk/communication/communication-identity/review/communication-identity.api.md b/sdk/communication/communication-identity/review/communication-identity.api.md index dc02af462e2b..bcfa046cbd96 100644 --- a/sdk/communication/communication-identity/review/communication-identity.api.md +++ b/sdk/communication/communication-identity/review/communication-identity.api.md @@ -4,11 +4,11 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; -import { CommunicationUserIdentifier } from '@azure/communication-common'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationOptions } from '@azure/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { CommunicationUserIdentifier } from '@azure/communication-common'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationOptions } from '@azure/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface CommunicationAccessToken { diff --git a/sdk/communication/communication-identity/src/communicationIdentityClient.ts b/sdk/communication/communication-identity/src/communicationIdentityClient.ts index 301167e48920..11ea37113735 100644 --- a/sdk/communication/communication-identity/src/communicationIdentityClient.ts +++ b/sdk/communication/communication-identity/src/communicationIdentityClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CommunicationAccessToken, CommunicationIdentityClientOptions, CommunicationUserToken, @@ -10,14 +10,15 @@ import { GetTokenOptions, TokenScope, } from "./models"; +import type { CommunicationUserIdentifier } from "@azure/communication-common"; import { - CommunicationUserIdentifier, createCommunicationAuthPolicy, isKeyCredential, parseClientArguments, } from "@azure/communication-common"; -import { InternalClientPipelineOptions, OperationOptions } from "@azure/core-client"; -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { InternalClientPipelineOptions, OperationOptions } from "@azure/core-client"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { IdentityRestClient } from "./generated/src/identityRestClient"; import { logger } from "./common/logger"; import { tracingClient } from "./generated/src/tracing"; diff --git a/sdk/communication/communication-identity/src/models.ts b/sdk/communication/communication-identity/src/models.ts index a1dcebb1d7ca..1a493c9aaac0 100644 --- a/sdk/communication/communication-identity/src/models.ts +++ b/sdk/communication/communication-identity/src/models.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; -import { CommunicationUserIdentifier } from "@azure/communication-common"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { CommunicationUserIdentifier } from "@azure/communication-common"; /** * Represents the scope of the token. diff --git a/sdk/communication/communication-identity/test/public/communicationIdentityClient.mocked.spec.ts b/sdk/communication/communication-identity/test/public/communicationIdentityClient.mocked.spec.ts index ebd31827c5a9..1fbc27f7fb36 100644 --- a/sdk/communication/communication-identity/test/public/communicationIdentityClient.mocked.spec.ts +++ b/sdk/communication/communication-identity/test/public/communicationIdentityClient.mocked.spec.ts @@ -1,10 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - CommunicationUserIdentifier, - isCommunicationUserIdentifier, -} from "@azure/communication-common"; +import type { CommunicationUserIdentifier } from "@azure/communication-common"; +import { isCommunicationUserIdentifier } from "@azure/communication-common"; import { getTokenForTeamsUserHttpClient, getTokenHttpClient } from "./utils/mockHttpClients"; import { CommunicationIdentityClient } from "../../src"; import { TestCommunicationIdentityClient } from "./utils/testCommunicationIdentityClient"; diff --git a/sdk/communication/communication-identity/test/public/communicationIdentityClient.spec.ts b/sdk/communication/communication-identity/test/public/communicationIdentityClient.spec.ts index 4fde7ce4cc47..31a5550d7821 100644 --- a/sdk/communication/communication-identity/test/public/communicationIdentityClient.spec.ts +++ b/sdk/communication/communication-identity/test/public/communicationIdentityClient.spec.ts @@ -1,17 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - CommunicationUserIdentifier, - isCommunicationUserIdentifier, -} from "@azure/communication-common"; -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { CommunicationUserIdentifier } from "@azure/communication-common"; +import { isCommunicationUserIdentifier } from "@azure/communication-common"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { createRecordedCommunicationIdentityClient, createRecordedCommunicationIdentityClientWithToken, } from "./utils/recordedClient"; -import { CommunicationIdentityClient, TokenScope } from "../../src"; -import { Context } from "mocha"; +import type { CommunicationIdentityClient, TokenScope } from "../../src"; +import type { Context } from "mocha"; import { assert } from "chai"; import { matrix } from "@azure-tools/test-utils"; diff --git a/sdk/communication/communication-identity/test/public/node/getTokenForTeamsUser.node.spec.ts b/sdk/communication/communication-identity/test/public/node/getTokenForTeamsUser.node.spec.ts index 608cb24c09df..10c40a4bc280 100644 --- a/sdk/communication/communication-identity/test/public/node/getTokenForTeamsUser.node.spec.ts +++ b/sdk/communication/communication-identity/test/public/node/getTokenForTeamsUser.node.spec.ts @@ -1,19 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CommunicationAccessToken, CommunicationIdentityClient, GetTokenForTeamsUserOptions, } from "../../../src"; -import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import { createRecordedCommunicationIdentityClient, createRecordedCommunicationIdentityClientWithToken, } from "../utils/recordedClient"; import { PublicClientApplication } from "@azure/msal-node"; import { matrix } from "@azure-tools/test-utils"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { assert } from "chai"; matrix([[true, false]], async function (useAad) { diff --git a/sdk/communication/communication-identity/test/public/node/tokenCustomExpiration.node.spec.ts b/sdk/communication/communication-identity/test/public/node/tokenCustomExpiration.node.spec.ts index cb358546ff00..99da3a6303f4 100644 --- a/sdk/communication/communication-identity/test/public/node/tokenCustomExpiration.node.spec.ts +++ b/sdk/communication/communication-identity/test/public/node/tokenCustomExpiration.node.spec.ts @@ -1,17 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommunicationUserIdentifier } from "@azure/communication-common"; -import { Recorder, isLiveMode } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { CommunicationUserIdentifier } from "@azure/communication-common"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isLiveMode } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; import { assert } from "chai"; import { matrix } from "@azure-tools/test-utils"; -import { CommunicationIdentityClient } from "../../../src/communicationIdentityClient"; +import type { CommunicationIdentityClient } from "../../../src/communicationIdentityClient"; import { createRecordedCommunicationIdentityClient, createRecordedCommunicationIdentityClientWithToken, } from "../utils/recordedClient"; -import { CreateUserAndTokenOptions, GetTokenOptions } from "../../../src/models"; +import type { CreateUserAndTokenOptions, GetTokenOptions } from "../../../src/models"; matrix([[true, false]], async function (useAad: boolean) { describe(`Get Token With Custom Expiration [Playback/Live]${ diff --git a/sdk/communication/communication-identity/test/public/utils/mockHttpClients.ts b/sdk/communication/communication-identity/test/public/utils/mockHttpClients.ts index 646aa4525075..364ec845b24e 100644 --- a/sdk/communication/communication-identity/test/public/utils/mockHttpClients.ts +++ b/sdk/communication/communication-identity/test/public/utils/mockHttpClients.ts @@ -1,13 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - HttpClient, - PipelineRequest, - PipelineResponse, - createHttpHeaders, -} from "@azure/core-rest-pipeline"; -import { CommunicationAccessToken } from "../../../src"; +import type { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; +import type { CommunicationAccessToken } from "../../../src"; export const createMockHttpClient = >( status: number = 200, diff --git a/sdk/communication/communication-identity/test/public/utils/recordedClient.ts b/sdk/communication/communication-identity/test/public/utils/recordedClient.ts index 9c5716931074..a42dba769a4a 100644 --- a/sdk/communication/communication-identity/test/public/utils/recordedClient.ts +++ b/sdk/communication/communication-identity/test/public/utils/recordedClient.ts @@ -1,16 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context, Test } from "mocha"; -import { - Recorder, - RecorderStartOptions, - SanitizerOptions, - env, - isPlaybackMode, -} from "@azure-tools/test-recorder"; +import type { Context, Test } from "mocha"; +import type { RecorderStartOptions, SanitizerOptions } from "@azure-tools/test-recorder"; +import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; import { CommunicationIdentityClient } from "../../../src"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { createTestCredential } from "@azure-tools/test-credential"; import { parseConnectionString } from "@azure/communication-common"; diff --git a/sdk/communication/communication-identity/test/public/utils/testCommunicationIdentityClient.ts b/sdk/communication/communication-identity/test/public/utils/testCommunicationIdentityClient.ts index ad867f0af93a..b676a4e94ac1 100644 --- a/sdk/communication/communication-identity/test/public/utils/testCommunicationIdentityClient.ts +++ b/sdk/communication/communication-identity/test/public/utils/testCommunicationIdentityClient.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CommunicationAccessToken, - CommunicationIdentityClient, CommunicationIdentityClientOptions, CommunicationUserToken, TokenScope, } from "../../../src"; +import { CommunicationIdentityClient } from "../../../src"; import { createUserAndTokenHttpClient, createUserHttpClient, @@ -15,8 +15,8 @@ import { getTokenHttpClient, revokeTokensHttpClient, } from "./mockHttpClients"; -import { CommunicationUserIdentifier } from "@azure/communication-common"; -import { OperationOptions } from "@azure/core-client"; +import type { CommunicationUserIdentifier } from "@azure/communication-common"; +import type { OperationOptions } from "@azure/core-client"; export class TestCommunicationIdentityClient { private connectionString: string = "endpoint=https://contoso.spool.azure.local;accesskey=banana"; diff --git a/sdk/communication/communication-job-router-rest/review/communication-job-router.api.md b/sdk/communication/communication-job-router-rest/review/communication-job-router.api.md index 2ae1f4191a4a..9b30c2a23469 100644 --- a/sdk/communication/communication-job-router-rest/review/communication-job-router.api.md +++ b/sdk/communication/communication-job-router-rest/review/communication-job-router.api.md @@ -4,19 +4,19 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { ErrorResponse } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { Paged } from '@azure/core-paging'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { ErrorResponse } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { Paged } from '@azure/core-paging'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface Accept { diff --git a/sdk/communication/communication-job-router-rest/src/azureCommunicationRoutingServiceClient.ts b/sdk/communication/communication-job-router-rest/src/azureCommunicationRoutingServiceClient.ts index 4d12aefb6d05..9350d3e0a573 100644 --- a/sdk/communication/communication-job-router-rest/src/azureCommunicationRoutingServiceClient.ts +++ b/sdk/communication/communication-job-router-rest/src/azureCommunicationRoutingServiceClient.ts @@ -1,10 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; -import { isTokenCredential, KeyCredential, TokenCredential } from "@azure/core-auth"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { logger } from "./logger"; -import { AzureCommunicationRoutingServiceClient } from "./clientDefinitions"; +import type { AzureCommunicationRoutingServiceClient } from "./clientDefinitions"; import { createCommunicationAuthPolicy, isKeyCredential, diff --git a/sdk/communication/communication-job-router-rest/src/clientDefinitions.ts b/sdk/communication/communication-job-router-rest/src/clientDefinitions.ts index 31d3383916fe..2eb1025edc1b 100644 --- a/sdk/communication/communication-job-router-rest/src/clientDefinitions.ts +++ b/sdk/communication/communication-job-router-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { UpsertClassificationPolicyParameters, GetClassificationPolicyParameters, DeleteClassificationPolicyParameters, @@ -36,7 +36,7 @@ import { DeleteWorkerParameters, ListWorkersParameters, } from "./parameters"; -import { +import type { UpsertClassificationPolicy200Response, UpsertClassificationPolicy201Response, UpsertClassificationPolicyDefaultResponse, @@ -110,7 +110,7 @@ import { ListWorkers200Response, ListWorkersDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface UpsertClassificationPolicy { /** Creates or updates a classification policy. */ diff --git a/sdk/communication/communication-job-router-rest/src/isUnexpected.ts b/sdk/communication/communication-job-router-rest/src/isUnexpected.ts index 5d40767927b3..246ce83cfd09 100644 --- a/sdk/communication/communication-job-router-rest/src/isUnexpected.ts +++ b/sdk/communication/communication-job-router-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { UpsertClassificationPolicy200Response, UpsertClassificationPolicy201Response, UpsertClassificationPolicyDefaultResponse, diff --git a/sdk/communication/communication-job-router-rest/src/outputModels.ts b/sdk/communication/communication-job-router-rest/src/outputModels.ts index 462a8cdf40e3..9c1515d7a9c2 100644 --- a/sdk/communication/communication-job-router-rest/src/outputModels.ts +++ b/sdk/communication/communication-job-router-rest/src/outputModels.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Paged } from "@azure/core-paging"; +import type { Paged } from "@azure/core-paging"; /** A container for the rules that govern how jobs are classified. */ export interface ClassificationPolicyOutput { diff --git a/sdk/communication/communication-job-router-rest/src/paginateHelper.ts b/sdk/communication/communication-job-router-rest/src/paginateHelper.ts index e27846d32a90..5d541b4e406d 100644 --- a/sdk/communication/communication-job-router-rest/src/paginateHelper.ts +++ b/sdk/communication/communication-job-router-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/communication/communication-job-router-rest/src/parameters.ts b/sdk/communication/communication-job-router-rest/src/parameters.ts index d6113ad1f531..0c1853137bf2 100644 --- a/sdk/communication/communication-job-router-rest/src/parameters.ts +++ b/sdk/communication/communication-job-router-rest/src/parameters.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { ClassificationPolicy, DistributionPolicy, ExceptionPolicy, diff --git a/sdk/communication/communication-job-router-rest/src/responses.ts b/sdk/communication/communication-job-router-rest/src/responses.ts index 4915e143e5a6..dcd846fd6022 100644 --- a/sdk/communication/communication-job-router-rest/src/responses.ts +++ b/sdk/communication/communication-job-router-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; +import type { ClassificationPolicyOutput, PagedClassificationPolicyOutput, DistributionPolicyOutput, diff --git a/sdk/communication/communication-job-router-rest/test/internal/utils/mockClient.ts b/sdk/communication/communication-job-router-rest/test/internal/utils/mockClient.ts index ee0c7dbad5f8..6cb9b9f7e42f 100644 --- a/sdk/communication/communication-job-router-rest/test/internal/utils/mockClient.ts +++ b/sdk/communication/communication-job-router-rest/test/internal/utils/mockClient.ts @@ -1,12 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; import * as dotenv from "dotenv"; -import { Recorder, env, RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, env } from "@azure-tools/test-recorder"; import JobRouter from "../../../src"; -import { AzureCommunicationRoutingServiceClient } from "../../../src"; -import { Context, Test } from "mocha"; +import type { AzureCommunicationRoutingServiceClient } from "../../../src"; +import type { Context, Test } from "mocha"; import { isNode } from "@azure/core-util"; import { generateToken } from "../../public/utils/connection"; diff --git a/sdk/communication/communication-job-router-rest/test/public/methods/classificationPolicies.spec.ts b/sdk/communication/communication-job-router-rest/test/public/methods/classificationPolicies.spec.ts index fc500652cb0d..6fefad420e43 100644 --- a/sdk/communication/communication-job-router-rest/test/public/methods/classificationPolicies.spec.ts +++ b/sdk/communication/communication-job-router-rest/test/public/methods/classificationPolicies.spec.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { +import type { Context } from "mocha"; +import type { AzureCommunicationRoutingServiceClient, ClassificationPolicyOutput, - paginate, } from "../../../src"; +import { paginate } from "../../../src"; import { getClassificationPolicyRequest, getDistributionPolicyRequest, diff --git a/sdk/communication/communication-job-router-rest/test/public/methods/distributionPolicies.spec.ts b/sdk/communication/communication-job-router-rest/test/public/methods/distributionPolicies.spec.ts index ef20e544d9bb..695949c358d9 100644 --- a/sdk/communication/communication-job-router-rest/test/public/methods/distributionPolicies.spec.ts +++ b/sdk/communication/communication-job-router-rest/test/public/methods/distributionPolicies.spec.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { +import type { Context } from "mocha"; +import type { AzureCommunicationRoutingServiceClient, DistributionPolicyOutput, - paginate, } from "../../../src"; +import { paginate } from "../../../src"; import { getDistributionPolicyRequest } from "../utils/testData"; import { createRecordedRouterClientWithConnectionString } from "../../internal/utils/mockClient"; import { timeoutMs } from "../utils/constants"; diff --git a/sdk/communication/communication-job-router-rest/test/public/methods/exceptionPolicies.spec.ts b/sdk/communication/communication-job-router-rest/test/public/methods/exceptionPolicies.spec.ts index 4c930a98c678..b3dd868bd7e5 100644 --- a/sdk/communication/communication-job-router-rest/test/public/methods/exceptionPolicies.spec.ts +++ b/sdk/communication/communication-job-router-rest/test/public/methods/exceptionPolicies.spec.ts @@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { - AzureCommunicationRoutingServiceClient, - ExceptionPolicyOutput, - paginate, -} from "../../../src"; +import type { Context } from "mocha"; +import type { AzureCommunicationRoutingServiceClient, ExceptionPolicyOutput } from "../../../src"; +import { paginate } from "../../../src"; import { getExceptionPolicyRequest } from "../utils/testData"; import { createRecordedRouterClientWithConnectionString } from "../../internal/utils/mockClient"; import { timeoutMs } from "../utils/constants"; diff --git a/sdk/communication/communication-job-router-rest/test/public/methods/jobs.spec.ts b/sdk/communication/communication-job-router-rest/test/public/methods/jobs.spec.ts index 6bb2114cb39b..d1beab1ea444 100644 --- a/sdk/communication/communication-job-router-rest/test/public/methods/jobs.spec.ts +++ b/sdk/communication/communication-job-router-rest/test/public/methods/jobs.spec.ts @@ -1,16 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { +import type { AzureCommunicationRoutingServiceClient, - paginate, RouterJob, RouterJobOutput, RouterJobPositionDetailsOutput, } from "../../../src"; -import { Context } from "mocha"; +import { paginate } from "../../../src"; +import type { Context } from "mocha"; import { getClassificationPolicyRequest, getDistributionPolicyRequest, diff --git a/sdk/communication/communication-job-router-rest/test/public/methods/queues.spec.ts b/sdk/communication/communication-job-router-rest/test/public/methods/queues.spec.ts index e5928b228da8..101108aadeac 100644 --- a/sdk/communication/communication-job-router-rest/test/public/methods/queues.spec.ts +++ b/sdk/communication/communication-job-router-rest/test/public/methods/queues.spec.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { AzureCommunicationRoutingServiceClient, paginate, RouterQueueOutput } from "../../../src"; -import { Context } from "mocha"; +import type { AzureCommunicationRoutingServiceClient, RouterQueueOutput } from "../../../src"; +import { paginate } from "../../../src"; +import type { Context } from "mocha"; import { getQueueRequest, getExceptionPolicyRequest, diff --git a/sdk/communication/communication-job-router-rest/test/public/methods/workers.spec.ts b/sdk/communication/communication-job-router-rest/test/public/methods/workers.spec.ts index 9f621d422bb7..7b601bb6659b 100644 --- a/sdk/communication/communication-job-router-rest/test/public/methods/workers.spec.ts +++ b/sdk/communication/communication-job-router-rest/test/public/methods/workers.spec.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { AzureCommunicationRoutingServiceClient, paginate, RouterWorkerOutput } from "../../../src"; +import type { Context } from "mocha"; +import type { AzureCommunicationRoutingServiceClient, RouterWorkerOutput } from "../../../src"; +import { paginate } from "../../../src"; import { getDistributionPolicyRequest, getExceptionPolicyRequest, diff --git a/sdk/communication/communication-job-router-rest/test/public/sampleTest.spec.ts b/sdk/communication/communication-job-router-rest/test/public/sampleTest.spec.ts index 78de635beb5d..707dd944309e 100644 --- a/sdk/communication/communication-job-router-rest/test/public/sampleTest.spec.ts +++ b/sdk/communication/communication-job-router-rest/test/public/sampleTest.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("My test", () => { let recorder: Recorder; diff --git a/sdk/communication/communication-job-router-rest/test/public/utils/polling.ts b/sdk/communication/communication-job-router-rest/test/public/utils/polling.ts index 16cef4fce128..7edf1fbdd66b 100644 --- a/sdk/communication/communication-job-router-rest/test/public/utils/polling.ts +++ b/sdk/communication/communication-job-router-rest/test/public/utils/polling.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureCommunicationRoutingServiceClient, RouterJobOutput } from "../../../src"; -import { RouterJob } from "../../../src"; +import type { AzureCommunicationRoutingServiceClient, RouterJobOutput } from "../../../src"; +import type { RouterJob } from "../../../src"; // export async function pollForJobOffer( // workerId: string, diff --git a/sdk/communication/communication-job-router-rest/test/public/utils/recordedClient.ts b/sdk/communication/communication-job-router-rest/test/public/utils/recordedClient.ts index 2fed754ad000..d7508a2c1842 100644 --- a/sdk/communication/communication-job-router-rest/test/public/utils/recordedClient.ts +++ b/sdk/communication/communication-job-router-rest/test/public/utils/recordedClient.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder } from "@azure-tools/test-recorder"; import "./env"; const envSetupForPlayback: Record = { diff --git a/sdk/communication/communication-job-router-rest/test/public/utils/testData.ts b/sdk/communication/communication-job-router-rest/test/public/utils/testData.ts index d6bb48908eb3..249679c4716a 100644 --- a/sdk/communication/communication-job-router-rest/test/public/utils/testData.ts +++ b/sdk/communication/communication-job-router-rest/test/public/utils/testData.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ClassificationPolicy, ConditionalQueueSelectorAttachment, DistributionPolicy, diff --git a/sdk/communication/communication-job-router/review/communication-job-router.api.md b/sdk/communication/communication-job-router/review/communication-job-router.api.md index 8a971b3e2814..f6962deb16fa 100644 --- a/sdk/communication/communication-job-router/review/communication-job-router.api.md +++ b/sdk/communication/communication-job-router/review/communication-job-router.api.md @@ -4,14 +4,14 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; -import { CommunicationTokenCredential } from '@azure/communication-common'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { CommunicationTokenCredential } from '@azure/communication-common'; import * as coreClient from '@azure/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PageSettings } from '@azure/core-paging'; -import { TokenCredential } from '@azure/core-auth'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PageSettings } from '@azure/core-paging'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AcceptJobOfferResponse { diff --git a/sdk/communication/communication-job-router/src/clientUtils.ts b/sdk/communication/communication-job-router/src/clientUtils.ts index 86816d36a26f..b32ed8d810cb 100644 --- a/sdk/communication/communication-job-router/src/clientUtils.ts +++ b/sdk/communication/communication-job-router/src/clientUtils.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. /// -import { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; export type Transformer = (input: TFrom) => TTo; export class TransformingPagedAsyncIterableIterator< diff --git a/sdk/communication/communication-job-router/src/jobRouterAdministrationClient.ts b/sdk/communication/communication-job-router/src/jobRouterAdministrationClient.ts index 5a66cda58781..ee3dfccaa167 100644 --- a/sdk/communication/communication-job-router/src/jobRouterAdministrationClient.ts +++ b/sdk/communication/communication-job-router/src/jobRouterAdministrationClient.ts @@ -3,24 +3,24 @@ /// /* eslint-disable @azure/azure-sdk/ts-naming-options */ +import type { CommunicationTokenCredential } from "@azure/communication-common"; import { - CommunicationTokenCredential, createCommunicationAuthPolicy, isKeyCredential, parseClientArguments, } from "@azure/communication-common"; -import { KeyCredential, TokenCredential } from "@azure/core-auth"; -import { OperationOptions } from "@azure/core-client"; -import { InternalPipelineOptions } from "@azure/core-rest-pipeline"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import type { OperationOptions } from "@azure/core-client"; +import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { JobRouterAdministrationListClassificationPoliciesOptionalParams, JobRouterAdministrationListDistributionPoliciesOptionalParams, JobRouterAdministrationListExceptionPoliciesOptionalParams, JobRouterAdministrationListQueuesOptionalParams, - JobRouterApiClient, } from "./generated/src"; -import { +import { JobRouterApiClient } from "./generated/src"; +import type { ClassificationPolicyItem, DistributionPolicyItem, ExceptionPolicyItem, @@ -30,7 +30,7 @@ import { RouterQueue, ClassificationPolicy, } from "./models"; -import { +import type { CreateClassificationPolicyOptions, CreateDistributionPolicyOptions, CreateExceptionPolicyOptions, @@ -45,7 +45,7 @@ import { UpdateExceptionPolicyOptions, UpdateQueueOptions, } from "./options"; -import { +import type { ClassificationPolicyResponse, DistributionPolicyResponse, ExceptionPolicyResponse, diff --git a/sdk/communication/communication-job-router/src/jobRouterClient.ts b/sdk/communication/communication-job-router/src/jobRouterClient.ts index 6e5715892501..745adf4deb43 100644 --- a/sdk/communication/communication-job-router/src/jobRouterClient.ts +++ b/sdk/communication/communication-job-router/src/jobRouterClient.ts @@ -3,18 +3,17 @@ /// /* eslint-disable @azure/azure-sdk/ts-naming-options */ +import type { CommunicationTokenCredential } from "@azure/communication-common"; import { - CommunicationTokenCredential, createCommunicationAuthPolicy, isKeyCredential, parseClientArguments, } from "@azure/communication-common"; -import { KeyCredential, TokenCredential } from "@azure/core-auth"; -import { OperationOptions } from "@azure/core-client"; -import { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import type { OperationOptions } from "@azure/core-client"; +import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; import { SDK_VERSION } from "./constants"; -import { - JobRouterApiClient, +import type { JobRouterListJobsOptionalParams, JobRouterListWorkersOptionalParams, RouterJobPositionDetails, @@ -22,11 +21,11 @@ import { RouterJob as RouterJobGenerated, RouterJobItem as RouterJobItemGenerated, RouterWorkerItem as RouterWorkerItemGenerated, - KnownJobMatchModeType, JobMatchingMode, } from "./generated/src"; +import { JobRouterApiClient, KnownJobMatchModeType } from "./generated/src"; import { logger } from "./logger"; -import { +import type { RouterJobItem, RouterWorkerItem, RouterJobNote, @@ -35,7 +34,7 @@ import { RouterJobMatchingMode, RouterWorkerState, } from "./models"; -import { +import type { JobRouterClientOptions, CreateJobOptions, UpdateJobOptions, @@ -50,7 +49,7 @@ import { UpdateWorkerOptions, ListWorkersOptions, } from "./options"; -import { +import type { RouterJobResponse, CancelJobResponse, CompleteJobResponse, diff --git a/sdk/communication/communication-job-router/src/models.ts b/sdk/communication/communication-job-router/src/models.ts index 0f652bfc14e0..5766a681521b 100644 --- a/sdk/communication/communication-job-router/src/models.ts +++ b/sdk/communication/communication-job-router/src/models.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ScoringRuleParameterSelector, ExpressionRouterRuleLanguage, RouterWorkerSelectorStatus, diff --git a/sdk/communication/communication-job-router/src/options.ts b/sdk/communication/communication-job-router/src/options.ts index b96c4deedaab..015a65386691 100644 --- a/sdk/communication/communication-job-router/src/options.ts +++ b/sdk/communication/communication-job-router/src/options.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { JobRouterAdministrationUpsertClassificationPolicyOptionalParams, JobRouterAdministrationUpsertDistributionPolicyOptionalParams, JobRouterAdministrationUpsertExceptionPolicyOptionalParams, @@ -14,8 +14,8 @@ import { JobRouterUnassignJobActionOptionalParams, ChannelConfiguration, } from "./generated/src"; -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; -import { +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { JSONObject, RouterJobMatchingMode, RouterJobNote, diff --git a/sdk/communication/communication-job-router/src/responses.ts b/sdk/communication/communication-job-router/src/responses.ts index e17f0ace2f6c..e92f71cae659 100644 --- a/sdk/communication/communication-job-router/src/responses.ts +++ b/sdk/communication/communication-job-router/src/responses.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ClassificationPolicy, ExceptionPolicy, DistributionPolicy, diff --git a/sdk/communication/communication-job-router/test/internal/utils/mockClient.ts b/sdk/communication/communication-job-router/test/internal/utils/mockClient.ts index 120cfe794e08..c8e78f06357a 100644 --- a/sdk/communication/communication-job-router/test/internal/utils/mockClient.ts +++ b/sdk/communication/communication-job-router/test/internal/utils/mockClient.ts @@ -2,11 +2,12 @@ // Licensed under the MIT License. import * as dotenv from "dotenv"; -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { JobRouterAdministrationClient, JobRouterClient } from "../../../src"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { isNode } from "@azure/core-util"; -import { JobRouterAdministrationClientOptions, JobRouterClientOptions } from "../../../src"; +import type { JobRouterAdministrationClientOptions, JobRouterClientOptions } from "../../../src"; import { createRecorder } from "./recordedClient"; if (isNode) { diff --git a/sdk/communication/communication-job-router/test/internal/utils/recordedClient.ts b/sdk/communication/communication-job-router/test/internal/utils/recordedClient.ts index c8b92e6b136a..e96d8ba6c3f3 100644 --- a/sdk/communication/communication-job-router/test/internal/utils/recordedClient.ts +++ b/sdk/communication/communication-job-router/test/internal/utils/recordedClient.ts @@ -3,8 +3,9 @@ import * as dotenv from "dotenv"; import { isNode } from "@azure/core-util"; -import { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; -import { Test } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder } from "@azure-tools/test-recorder"; +import type { Test } from "mocha"; import { generateToken } from "../../public/utils/connection"; if (isNode) { diff --git a/sdk/communication/communication-job-router/test/public/methods/classificationPolicies.spec.ts b/sdk/communication/communication-job-router/test/public/methods/classificationPolicies.spec.ts index 76fa77b6083d..7163573d9a73 100644 --- a/sdk/communication/communication-job-router/test/public/methods/classificationPolicies.spec.ts +++ b/sdk/communication/communication-job-router/test/public/methods/classificationPolicies.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { ClassificationPolicy, JobRouterAdministrationClient } from "../../../src"; +import type { Context } from "mocha"; +import type { ClassificationPolicy, JobRouterAdministrationClient } from "../../../src"; import { getClassificationPolicyRequest, getDistributionPolicyRequest, diff --git a/sdk/communication/communication-job-router/test/public/methods/distributionPolicies.spec.ts b/sdk/communication/communication-job-router/test/public/methods/distributionPolicies.spec.ts index 18faad4025e1..a92555393cda 100644 --- a/sdk/communication/communication-job-router/test/public/methods/distributionPolicies.spec.ts +++ b/sdk/communication/communication-job-router/test/public/methods/distributionPolicies.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { DistributionPolicy, JobRouterAdministrationClient } from "../../../src"; +import type { Context } from "mocha"; +import type { DistributionPolicy, JobRouterAdministrationClient } from "../../../src"; import { getDistributionPolicyRequest } from "../utils/testData"; import { createRecordedRouterClientWithConnectionString } from "../../internal/utils/mockClient"; import { timeoutMs } from "../utils/constants"; diff --git a/sdk/communication/communication-job-router/test/public/methods/exceptionPolicies.spec.ts b/sdk/communication/communication-job-router/test/public/methods/exceptionPolicies.spec.ts index 75dff336fa18..974c37de2c41 100644 --- a/sdk/communication/communication-job-router/test/public/methods/exceptionPolicies.spec.ts +++ b/sdk/communication/communication-job-router/test/public/methods/exceptionPolicies.spec.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; -import { ExceptionPolicy, JobRouterAdministrationClient } from "../../../src"; +import type { Recorder } from "@azure-tools/test-recorder"; +import type { ExceptionPolicy, JobRouterAdministrationClient } from "../../../src"; import { assert } from "chai"; import { createRecordedRouterClientWithConnectionString } from "../../internal/utils/mockClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { getExceptionPolicyRequest } from "../utils/testData"; import { timeoutMs } from "../utils/constants"; diff --git a/sdk/communication/communication-job-router/test/public/methods/jobs.spec.ts b/sdk/communication/communication-job-router/test/public/methods/jobs.spec.ts index 0a2922e28004..37dede44f2d3 100644 --- a/sdk/communication/communication-job-router/test/public/methods/jobs.spec.ts +++ b/sdk/communication/communication-job-router/test/public/methods/jobs.spec.ts @@ -1,16 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { +import type { CreateJobOptions, JobRouterAdministrationClient, JobRouterClient, RouterJob, UpdateJobOptions, } from "../../../src"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { getClassificationPolicyRequest, getDistributionPolicyRequest, diff --git a/sdk/communication/communication-job-router/test/public/methods/queues.spec.ts b/sdk/communication/communication-job-router/test/public/methods/queues.spec.ts index 4dcccbdfa4a3..ad2b79042559 100644 --- a/sdk/communication/communication-job-router/test/public/methods/queues.spec.ts +++ b/sdk/communication/communication-job-router/test/public/methods/queues.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { RouterQueue, JobRouterAdministrationClient } from "../../../src"; -import { Context } from "mocha"; +import type { RouterQueue, JobRouterAdministrationClient } from "../../../src"; +import type { Context } from "mocha"; import { getDistributionPolicyRequest, getExceptionPolicyRequest, diff --git a/sdk/communication/communication-job-router/test/public/methods/workers.spec.ts b/sdk/communication/communication-job-router/test/public/methods/workers.spec.ts index 4b79f20e52bb..c02825679eaa 100644 --- a/sdk/communication/communication-job-router/test/public/methods/workers.spec.ts +++ b/sdk/communication/communication-job-router/test/public/methods/workers.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { JobRouterAdministrationClient, JobRouterClient, RouterWorker } from "../../../src"; +import type { Context } from "mocha"; +import type { JobRouterAdministrationClient, JobRouterClient, RouterWorker } from "../../../src"; import { getDistributionPolicyRequest, getExceptionPolicyRequest, diff --git a/sdk/communication/communication-job-router/test/public/scenarios/assignmentScenario.spec.ts b/sdk/communication/communication-job-router/test/public/scenarios/assignmentScenario.spec.ts index db05168a6905..0b4857655156 100644 --- a/sdk/communication/communication-job-router/test/public/scenarios/assignmentScenario.spec.ts +++ b/sdk/communication/communication-job-router/test/public/scenarios/assignmentScenario.spec.ts @@ -10,16 +10,16 @@ import { getWorkerRequest, } from "../utils/testData"; import { assert } from "chai"; -import { +import type { RouterJobAssignment, RouterJobOffer, JobRouterAdministrationClient, JobRouterClient, } from "../../../src"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createRecordedRouterClientWithConnectionString } from "../../internal/utils/mockClient"; import { timeoutMs } from "../utils/constants"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { pollForJobAssignment, pollForJobOffer } from "../utils/polling"; describe("JobRouterClient", function () { diff --git a/sdk/communication/communication-job-router/test/public/scenarios/cancellationScenario.spec.ts b/sdk/communication/communication-job-router/test/public/scenarios/cancellationScenario.spec.ts index 5d1cac8f4ded..37f6f83fa8d5 100644 --- a/sdk/communication/communication-job-router/test/public/scenarios/cancellationScenario.spec.ts +++ b/sdk/communication/communication-job-router/test/public/scenarios/cancellationScenario.spec.ts @@ -9,9 +9,9 @@ import { getQueueRequest, } from "../utils/testData"; import { assert } from "chai"; -import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; -import { JobRouterAdministrationClient, JobRouterClient } from "../../../src"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; +import type { JobRouterAdministrationClient, JobRouterClient } from "../../../src"; import { createRecordedRouterClientWithConnectionString } from "../../internal/utils/mockClient"; import { pollForJobCancelled, pollForJobQueued } from "../utils/polling"; import { timeoutMs } from "../utils/constants"; diff --git a/sdk/communication/communication-job-router/test/public/scenarios/queueingScenario.spec.ts b/sdk/communication/communication-job-router/test/public/scenarios/queueingScenario.spec.ts index fc960944e0a9..49bfb5a77c90 100644 --- a/sdk/communication/communication-job-router/test/public/scenarios/queueingScenario.spec.ts +++ b/sdk/communication/communication-job-router/test/public/scenarios/queueingScenario.spec.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { JobRouterAdministrationClient, JobRouterClient } from "../../../src"; -import { Context } from "mocha"; +import type { JobRouterAdministrationClient, JobRouterClient } from "../../../src"; +import type { Context } from "mocha"; import { getClassificationPolicyCombined, getClassificationPolicyConditional, @@ -22,7 +22,7 @@ import { } from "../utils/testData"; import { createRecordedRouterClientWithConnectionString } from "../../internal/utils/mockClient"; import { timeoutMs } from "../utils/constants"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { pollForJobQueued, retry } from "../utils/polling"; describe("JobRouterClient", function () { diff --git a/sdk/communication/communication-job-router/test/public/utils/polling.ts b/sdk/communication/communication-job-router/test/public/utils/polling.ts index d436a49d053a..d76aa980dde3 100644 --- a/sdk/communication/communication-job-router/test/public/utils/polling.ts +++ b/sdk/communication/communication-job-router/test/public/utils/polling.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { JobRouterClient } from "../../../src/jobRouterClient"; -import { RouterJob, RouterWorker, RouterJobAssignment, RouterJobOffer } from "../../../src"; +import type { JobRouterClient } from "../../../src/jobRouterClient"; +import type { RouterJob, RouterWorker, RouterJobAssignment, RouterJobOffer } from "../../../src"; export async function pollForJobOffer( workerId: string, diff --git a/sdk/communication/communication-job-router/test/public/utils/testData.ts b/sdk/communication/communication-job-router/test/public/utils/testData.ts index 10e1b1af3fa6..ea5c0adead8d 100644 --- a/sdk/communication/communication-job-router/test/public/utils/testData.ts +++ b/sdk/communication/communication-job-router/test/public/utils/testData.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ClassificationPolicy, ConditionalQueueSelectorAttachment, DistributionPolicy, diff --git a/sdk/communication/communication-messages-rest/review/communication-messages.api.md b/sdk/communication/communication-messages-rest/review/communication-messages.api.md index f92947f39883..726e335bf7d6 100644 --- a/sdk/communication/communication-messages-rest/review/communication-messages.api.md +++ b/sdk/communication/communication-messages-rest/review/communication-messages.api.md @@ -8,7 +8,7 @@ import { Client } from '@azure-rest/core-client'; import { ClientOptions } from '@azure-rest/core-client'; import { ErrorResponse } from '@azure-rest/core-client'; import { HttpResponse } from '@azure-rest/core-client'; -import { KeyCredential } from '@azure/core-auth'; +import type { KeyCredential } from '@azure/core-auth'; import { Paged } from '@azure/core-paging'; import { PagedAsyncIterableIterator } from '@azure/core-paging'; import { PathUncheckedResponse } from '@azure-rest/core-client'; @@ -16,7 +16,7 @@ import { RawHttpHeaders } from '@azure/core-rest-pipeline'; import { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; import { RequestParameters } from '@azure-rest/core-client'; import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AudioNotificationContent extends NotificationContentParent { diff --git a/sdk/communication/communication-messages-rest/src/messagesServiceClient.ts b/sdk/communication/communication-messages-rest/src/messagesServiceClient.ts index 6d849cb043d0..bf96056bd9b4 100644 --- a/sdk/communication/communication-messages-rest/src/messagesServiceClient.ts +++ b/sdk/communication/communication-messages-rest/src/messagesServiceClient.ts @@ -1,15 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - TokenCredential, - isTokenCredential, - KeyCredential, - isKeyCredential, -} from "@azure/core-auth"; -import { ClientOptions } from "@azure-rest/core-client"; +import type { TokenCredential, KeyCredential } from "@azure/core-auth"; +import { isTokenCredential, isKeyCredential } from "@azure/core-auth"; +import type { ClientOptions } from "@azure-rest/core-client"; import { parseClientArguments, createCommunicationAuthPolicy } from "@azure/communication-common"; -import { MessagesServiceClient } from "./generated/src/clientDefinitions"; +import type { MessagesServiceClient } from "./generated/src/clientDefinitions"; import GeneratedAzureCommunicationMessageServiceClient from "./generated/src/messagesServiceClient"; /** diff --git a/sdk/communication/communication-messages-rest/test/public/messageTest.spec.ts b/sdk/communication/communication-messages-rest/test/public/messageTest.spec.ts index a3432c9a0ce5..455e125b579d 100644 --- a/sdk/communication/communication-messages-rest/test/public/messageTest.spec.ts +++ b/sdk/communication/communication-messages-rest/test/public/messageTest.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorderWithConnectionString } from "./utils/recordedClient"; -import { Context } from "mocha"; -import { +import type { Context } from "mocha"; +import type { MessagesServiceClient, Send202Response, MessageTemplate, diff --git a/sdk/communication/communication-messages-rest/test/public/utils/recordedClient.ts b/sdk/communication/communication-messages-rest/test/public/utils/recordedClient.ts index 7c93a432b047..4adaeff1146f 100644 --- a/sdk/communication/communication-messages-rest/test/public/utils/recordedClient.ts +++ b/sdk/communication/communication-messages-rest/test/public/utils/recordedClient.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context, Test } from "mocha"; -import { Recorder, RecorderStartOptions, SanitizerOptions, env } from "@azure-tools/test-recorder"; -import MessageClient, { MessagesServiceClient } from "../../../src"; +import type { Context, Test } from "mocha"; +import type { RecorderStartOptions, SanitizerOptions } from "@azure-tools/test-recorder"; +import { Recorder, env } from "@azure-tools/test-recorder"; +import type { MessagesServiceClient } from "../../../src"; +import MessageClient from "../../../src"; import { parseConnectionString } from "@azure/communication-common"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { createTestCredential } from "@azure-tools/test-credential"; export interface RecordedMessageClient { diff --git a/sdk/communication/communication-phone-numbers/review/communication-phone-numbers.api.md b/sdk/communication/communication-phone-numbers/review/communication-phone-numbers.api.md index 2014e0062216..a0bd2df2b5f5 100644 --- a/sdk/communication/communication-phone-numbers/review/communication-phone-numbers.api.md +++ b/sdk/communication/communication-phone-numbers/review/communication-phone-numbers.api.md @@ -4,14 +4,14 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; +import type { CommonClientOptions } from '@azure/core-client'; import * as coreClient from '@azure/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { TokenCredential } from '@azure/core-auth'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PollerLike } from '@azure/core-lro'; +import type { PollOperationState } from '@azure/core-lro'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface BeginPurchasePhoneNumbersOptions extends OperationOptions { diff --git a/sdk/communication/communication-phone-numbers/src/lroModels.ts b/sdk/communication/communication-phone-numbers/src/lroModels.ts index c1b137ac1c13..f0923781e000 100644 --- a/sdk/communication/communication-phone-numbers/src/lroModels.ts +++ b/sdk/communication/communication-phone-numbers/src/lroModels.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; /** * Additional options for the search available phone numbers operation. diff --git a/sdk/communication/communication-phone-numbers/src/mappers.ts b/sdk/communication/communication-phone-numbers/src/mappers.ts index eff7da20e64c..05de07579ff0 100644 --- a/sdk/communication/communication-phone-numbers/src/mappers.ts +++ b/sdk/communication/communication-phone-numbers/src/mappers.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { SipTrunk } from "./models"; -import { TrunkUpdate as RestSipTrunk } from "./generated/src/siprouting/models"; +import type { SipTrunk } from "./models"; +import type { TrunkUpdate as RestSipTrunk } from "./generated/src/siprouting/models"; /** * @internal diff --git a/sdk/communication/communication-phone-numbers/src/models.ts b/sdk/communication/communication-phone-numbers/src/models.ts index ec7390d1330a..f8b01c89c986 100644 --- a/sdk/communication/communication-phone-numbers/src/models.ts +++ b/sdk/communication/communication-phone-numbers/src/models.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { +import type { OperationOptions } from "@azure/core-client"; +import type { PhoneNumberAssignmentType, PhoneNumberSearchRequest, PhoneNumbersListAreaCodesOptionalParams, diff --git a/sdk/communication/communication-phone-numbers/src/phoneNumbersClient.ts b/sdk/communication/communication-phone-numbers/src/phoneNumbersClient.ts index d30ce0ac4839..35c2b41cd3b4 100644 --- a/sdk/communication/communication-phone-numbers/src/phoneNumbersClient.ts +++ b/sdk/communication/communication-phone-numbers/src/phoneNumbersClient.ts @@ -8,12 +8,13 @@ import { isKeyCredential, parseClientArguments, } from "@azure/communication-common"; -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { InternalPipelineOptions } from "@azure/core-rest-pipeline"; -import { PollOperationState, PollerLike } from "@azure/core-lro"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import type { PollOperationState, PollerLike } from "@azure/core-lro"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; import { PhoneNumbersClient as PhoneNumbersGeneratedClient } from "./generated/src"; -import { +import type { OperatorInformationResult, PhoneNumberAreaCode, PhoneNumberCapabilitiesRequest, @@ -23,7 +24,7 @@ import { PhoneNumberSearchResult, PurchasedPhoneNumber, } from "./generated/src/models/"; -import { +import type { GetPurchasedPhoneNumberOptions, ListAvailableCountriesOptions, ListGeographicAreaCodesOptions, @@ -36,14 +37,14 @@ import { SearchAvailablePhoneNumbersRequest, SearchOperatorInformationOptions, } from "./models"; -import { +import type { BeginPurchasePhoneNumbersOptions, BeginReleasePhoneNumberOptions, BeginSearchAvailablePhoneNumbersOptions, BeginUpdatePhoneNumberCapabilitiesOptions, } from "./lroModels"; import { createPhoneNumbersPagingPolicy } from "./utils/customPipelinePolicies"; -import { CommonClientOptions } from "@azure/core-client"; +import type { CommonClientOptions } from "@azure/core-client"; import { logger } from "./utils"; import { tracingClient } from "./generated/src/tracing"; diff --git a/sdk/communication/communication-phone-numbers/src/sipRoutingClient.ts b/sdk/communication/communication-phone-numbers/src/sipRoutingClient.ts index aa4e0343afad..7e479861af83 100644 --- a/sdk/communication/communication-phone-numbers/src/sipRoutingClient.ts +++ b/sdk/communication/communication-phone-numbers/src/sipRoutingClient.ts @@ -7,16 +7,17 @@ import { isKeyCredential, parseClientArguments, } from "@azure/communication-common"; -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; import { logger } from "./utils"; import { SipRoutingClient as SipRoutingGeneratedClient } from "./generated/src/siprouting/sipRoutingClient"; -import { SipConfigurationUpdate, SipRoutingError } from "./generated/src/siprouting/models"; -import { ListSipRoutesOptions, ListSipTrunksOptions, SipTrunk, SipTrunkRoute } from "./models"; +import type { SipConfigurationUpdate, SipRoutingError } from "./generated/src/siprouting/models"; +import type { ListSipRoutesOptions, ListSipTrunksOptions, SipTrunk, SipTrunkRoute } from "./models"; import { transformFromRestModel, transformIntoRestModel } from "./mappers"; -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; import { tracingClient } from "./generated/src/tracing"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; export * from "./models"; diff --git a/sdk/communication/communication-phone-numbers/src/utils/customPipelinePolicies.ts b/sdk/communication/communication-phone-numbers/src/utils/customPipelinePolicies.ts index e1ffbc0b06d5..6706965977c0 100644 --- a/sdk/communication/communication-phone-numbers/src/utils/customPipelinePolicies.ts +++ b/sdk/communication/communication-phone-numbers/src/utils/customPipelinePolicies.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { FullOperationResponse } from "@azure/core-client"; -import { +import type { FullOperationResponse } from "@azure/core-client"; +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/communication/communication-phone-numbers/test/internal/customPipelinePolicies.spec.ts b/sdk/communication/communication-phone-numbers/test/internal/customPipelinePolicies.spec.ts index 99d7570db62d..e3f6c1c0023e 100644 --- a/sdk/communication/communication-phone-numbers/test/internal/customPipelinePolicies.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/internal/customPipelinePolicies.spec.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { FullOperationResponse } from "@azure/core-client"; -import { PipelineRequest, PipelineResponse, createHttpHeaders } from "@azure/core-rest-pipeline"; +import type { FullOperationResponse } from "@azure/core-client"; +import type { PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; import { assert } from "chai"; import { createPhoneNumbersPagingPolicy } from "../../src/utils/customPipelinePolicies"; diff --git a/sdk/communication/communication-phone-numbers/test/internal/headers.spec.ts b/sdk/communication/communication-phone-numbers/test/internal/headers.spec.ts index 674d1435532d..3908287e058e 100644 --- a/sdk/communication/communication-phone-numbers/test/internal/headers.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/internal/headers.spec.ts @@ -3,15 +3,15 @@ import { AzureKeyCredential } from "@azure/core-auth"; import { isNode } from "@azure/core-util"; -import { TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; import { assert } from "chai"; import sinon from "sinon"; import { PhoneNumbersClient } from "../../src/phoneNumbersClient"; import { getPhoneNumberHttpClient } from "../public/utils/mockHttpClients"; import { SDK_VERSION } from "../../src/utils/constants"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createMockToken } from "../public/utils/recordedClient"; -import { PipelineRequest } from "@azure/core-rest-pipeline"; +import type { PipelineRequest } from "@azure/core-rest-pipeline"; describe("PhoneNumbersClient - headers", function () { const endpoint = "https://contoso.spool.azure.local"; diff --git a/sdk/communication/communication-phone-numbers/test/internal/siprouting/headers.spec.ts b/sdk/communication/communication-phone-numbers/test/internal/siprouting/headers.spec.ts index d1c6d0055874..ee9aff2e14ca 100644 --- a/sdk/communication/communication-phone-numbers/test/internal/siprouting/headers.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/internal/siprouting/headers.spec.ts @@ -3,15 +3,15 @@ import { AzureKeyCredential } from "@azure/core-auth"; import { isNode } from "@azure/core-util"; -import { TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; import { assert } from "chai"; import sinon from "sinon"; import { SipRoutingClient } from "../../../src/sipRoutingClient"; import { getTrunksHttpClient } from "../../public/siprouting/utils/mockHttpClients"; import { SDK_VERSION } from "../../../src/utils/constants"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createMockToken } from "../../public/utils/recordedClient"; -import { PipelineRequest } from "@azure/core-rest-pipeline"; +import type { PipelineRequest } from "@azure/core-rest-pipeline"; describe("SipRoutingClient - headers", function () { const endpoint = "https://contoso.spool.azure.local"; diff --git a/sdk/communication/communication-phone-numbers/test/public/areaCodes.spec.ts b/sdk/communication/communication-phone-numbers/test/public/areaCodes.spec.ts index 7a0a6bab08b7..35ead99ec905 100644 --- a/sdk/communication/communication-phone-numbers/test/public/areaCodes.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/areaCodes.spec.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { matrix } from "@azure-tools/test-utils"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { PhoneNumbersListAreaCodesOptionalParams, PhoneNumbersClient } from "../../src"; +import type { Context } from "mocha"; +import type { PhoneNumbersListAreaCodesOptionalParams, PhoneNumbersClient } from "../../src"; import { createRecordedClient, createRecordedClientWithToken } from "./utils/recordedClient"; matrix([[true, false]], async function (useAad) { diff --git a/sdk/communication/communication-phone-numbers/test/public/countries.spec.ts b/sdk/communication/communication-phone-numbers/test/public/countries.spec.ts index 2b289c04ee7c..76e8a82e6f78 100644 --- a/sdk/communication/communication-phone-numbers/test/public/countries.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/countries.spec.ts @@ -3,10 +3,10 @@ import { setLogLevel } from "@azure/logger"; import { matrix } from "@azure-tools/test-utils"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { PhoneNumbersClient } from "../../src"; +import type { Context } from "mocha"; +import type { PhoneNumbersClient } from "../../src"; import { createRecordedClient, createRecordedClientWithToken } from "./utils/recordedClient"; matrix([[true, false]], async function (useAad) { diff --git a/sdk/communication/communication-phone-numbers/test/public/ctor.spec.ts b/sdk/communication/communication-phone-numbers/test/public/ctor.spec.ts index 79e4a394402a..99e8800ccdeb 100644 --- a/sdk/communication/communication-phone-numbers/test/public/ctor.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/ctor.spec.ts @@ -3,7 +3,7 @@ import { AzureKeyCredential } from "@azure/core-auth"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { PhoneNumbersClient } from "../../src"; import { createMockToken } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-phone-numbers/test/public/get.spec.ts b/sdk/communication/communication-phone-numbers/test/public/get.spec.ts index be9026cfd52f..04f824dad60f 100644 --- a/sdk/communication/communication-phone-numbers/test/public/get.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/get.spec.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { matrix } from "@azure-tools/test-utils"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { PhoneNumbersClient } from "../../src"; +import type { Context } from "mocha"; +import type { PhoneNumbersClient } from "../../src"; import { createRecordedClient, createRecordedClientWithToken } from "./utils/recordedClient"; import { getPhoneNumber } from "./utils/testPhoneNumber"; diff --git a/sdk/communication/communication-phone-numbers/test/public/list.spec.ts b/sdk/communication/communication-phone-numbers/test/public/list.spec.ts index 34e55f5025ff..3733953944d8 100644 --- a/sdk/communication/communication-phone-numbers/test/public/list.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/list.spec.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { matrix } from "@azure-tools/test-utils"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { PhoneNumbersClient } from "../../src"; +import type { Context } from "mocha"; +import type { PhoneNumbersClient } from "../../src"; import { createRecordedClient, createRecordedClientWithToken } from "./utils/recordedClient"; matrix([[true, false]], async function (useAad) { diff --git a/sdk/communication/communication-phone-numbers/test/public/localities.spec.ts b/sdk/communication/communication-phone-numbers/test/public/localities.spec.ts index 6853acaf02cf..e045034d41d4 100644 --- a/sdk/communication/communication-phone-numbers/test/public/localities.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/localities.spec.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { matrix } from "@azure-tools/test-utils"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { ListLocalitiesOptions, PhoneNumbersClient } from "../../src"; +import type { Context } from "mocha"; +import type { ListLocalitiesOptions, PhoneNumbersClient } from "../../src"; import { createRecordedClient, createRecordedClientWithToken } from "./utils/recordedClient"; matrix([[true, false]], async function (useAad) { diff --git a/sdk/communication/communication-phone-numbers/test/public/lro.purchaseAndRelease.spec.ts b/sdk/communication/communication-phone-numbers/test/public/lro.purchaseAndRelease.spec.ts index a26ff4ccb940..680af06bd7fb 100644 --- a/sdk/communication/communication-phone-numbers/test/public/lro.purchaseAndRelease.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/lro.purchaseAndRelease.spec.ts @@ -2,10 +2,11 @@ // Licensed under the MIT License. import { matrix } from "@azure-tools/test-utils"; -import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { PhoneNumbersClient, SearchAvailablePhoneNumbersRequest } from "../../src"; +import type { Context } from "mocha"; +import type { PhoneNumbersClient, SearchAvailablePhoneNumbersRequest } from "../../src"; import { createRecordedClient, createRecordedClientWithToken } from "./utils/recordedClient"; matrix([[true, false]], async function (useAad) { diff --git a/sdk/communication/communication-phone-numbers/test/public/lro.search.spec.ts b/sdk/communication/communication-phone-numbers/test/public/lro.search.spec.ts index eced136fdb85..b9bb5816e61f 100644 --- a/sdk/communication/communication-phone-numbers/test/public/lro.search.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/lro.search.spec.ts @@ -2,10 +2,11 @@ // Licensed under the MIT License. import { matrix } from "@azure-tools/test-utils"; -import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { PhoneNumbersClient, SearchAvailablePhoneNumbersRequest } from "../../src"; +import type { Context } from "mocha"; +import type { PhoneNumbersClient, SearchAvailablePhoneNumbersRequest } from "../../src"; import { createRecordedClient, createRecordedClientWithToken } from "./utils/recordedClient"; import { isClientErrorStatusCode } from "./utils/statusCodeHelpers"; diff --git a/sdk/communication/communication-phone-numbers/test/public/lro.update.spec.ts b/sdk/communication/communication-phone-numbers/test/public/lro.update.spec.ts index 84ae6a499cbe..afd16ba8d45b 100644 --- a/sdk/communication/communication-phone-numbers/test/public/lro.update.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/lro.update.spec.ts @@ -2,10 +2,11 @@ // Licensed under the MIT License. import { matrix } from "@azure-tools/test-utils"; -import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { PhoneNumberCapabilitiesRequest, PhoneNumbersClient } from "../../src"; +import type { Context } from "mocha"; +import type { PhoneNumberCapabilitiesRequest, PhoneNumbersClient } from "../../src"; import { createRecordedClient, createRecordedClientWithToken } from "./utils/recordedClient"; import { getPhoneNumber } from "./utils/testPhoneNumber"; import { isClientErrorStatusCode } from "./utils/statusCodeHelpers"; diff --git a/sdk/communication/communication-phone-numbers/test/public/numberLookup.spec.ts b/sdk/communication/communication-phone-numbers/test/public/numberLookup.spec.ts index 976add3a871f..d68f82c6a181 100644 --- a/sdk/communication/communication-phone-numbers/test/public/numberLookup.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/numberLookup.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { PhoneNumbersClient } from "../../src"; +import type { Context } from "mocha"; +import type { PhoneNumbersClient } from "../../src"; import { createRecordedClient } from "./utils/recordedClient"; import { getPhoneNumber } from "./utils/testPhoneNumber"; diff --git a/sdk/communication/communication-phone-numbers/test/public/offerings.spec.ts b/sdk/communication/communication-phone-numbers/test/public/offerings.spec.ts index 2ce25ab5ffec..75f934df6154 100644 --- a/sdk/communication/communication-phone-numbers/test/public/offerings.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/offerings.spec.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { matrix } from "@azure-tools/test-utils"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { PhoneNumbersClient } from "../../src"; +import type { Context } from "mocha"; +import type { PhoneNumbersClient } from "../../src"; import { createRecordedClient, createRecordedClientWithToken } from "./utils/recordedClient"; matrix([[true, false]], async function (useAad) { diff --git a/sdk/communication/communication-phone-numbers/test/public/siprouting/ctor.spec.ts b/sdk/communication/communication-phone-numbers/test/public/siprouting/ctor.spec.ts index 1495498fc974..401926cb8831 100644 --- a/sdk/communication/communication-phone-numbers/test/public/siprouting/ctor.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/siprouting/ctor.spec.ts @@ -3,7 +3,7 @@ import { AzureKeyCredential } from "@azure/core-auth"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { SipRoutingClient } from "../../../src"; import { createMockToken } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-phone-numbers/test/public/siprouting/deleteTrunk.spec.ts b/sdk/communication/communication-phone-numbers/test/public/siprouting/deleteTrunk.spec.ts index 6f57e0ed557d..d8730c06fc3b 100644 --- a/sdk/communication/communication-phone-numbers/test/public/siprouting/deleteTrunk.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/siprouting/deleteTrunk.spec.ts @@ -2,12 +2,13 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; -import { SipRoutingClient } from "../../../src"; +import type { SipRoutingClient } from "../../../src"; -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; -import { SipTrunk } from "../../../src/models"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; +import type { SipTrunk } from "../../../src/models"; import { clearSipConfiguration, createRecordedClient, diff --git a/sdk/communication/communication-phone-numbers/test/public/siprouting/getRoutes.spec.ts b/sdk/communication/communication-phone-numbers/test/public/siprouting/getRoutes.spec.ts index ae0427ee0604..f06b6087c209 100644 --- a/sdk/communication/communication-phone-numbers/test/public/siprouting/getRoutes.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/siprouting/getRoutes.spec.ts @@ -2,12 +2,13 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; -import { SipRoutingClient } from "../../../src"; +import type { SipRoutingClient } from "../../../src"; import { matrix } from "@azure-tools/test-utils"; -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { clearSipConfiguration, createRecordedClient, diff --git a/sdk/communication/communication-phone-numbers/test/public/siprouting/getTrunks.spec.ts b/sdk/communication/communication-phone-numbers/test/public/siprouting/getTrunks.spec.ts index 2d3080bcc40b..51d5ee963dec 100644 --- a/sdk/communication/communication-phone-numbers/test/public/siprouting/getTrunks.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/siprouting/getTrunks.spec.ts @@ -2,12 +2,13 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; -import { SipRoutingClient } from "../../../src"; +import type { SipRoutingClient } from "../../../src"; -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; -import { SipTrunk } from "../../../src/models"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; +import type { SipTrunk } from "../../../src/models"; import { clearSipConfiguration, createRecordedClient, diff --git a/sdk/communication/communication-phone-numbers/test/public/siprouting/setRoutes.spec.ts b/sdk/communication/communication-phone-numbers/test/public/siprouting/setRoutes.spec.ts index 5d339aec8889..2db2b5e58053 100644 --- a/sdk/communication/communication-phone-numbers/test/public/siprouting/setRoutes.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/siprouting/setRoutes.spec.ts @@ -2,12 +2,13 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; -import { SipRoutingClient } from "../../../src"; +import type { SipRoutingClient } from "../../../src"; -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; -import { SipTrunk, SipTrunkRoute } from "../../../src/models"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; +import type { SipTrunk, SipTrunkRoute } from "../../../src/models"; import { clearSipConfiguration, createRecordedClient, diff --git a/sdk/communication/communication-phone-numbers/test/public/siprouting/setTrunks.spec.ts b/sdk/communication/communication-phone-numbers/test/public/siprouting/setTrunks.spec.ts index 9117d5542e7b..794819c2a97a 100644 --- a/sdk/communication/communication-phone-numbers/test/public/siprouting/setTrunks.spec.ts +++ b/sdk/communication/communication-phone-numbers/test/public/siprouting/setTrunks.spec.ts @@ -2,12 +2,13 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; -import { SipRoutingClient } from "../../../src"; +import type { SipRoutingClient } from "../../../src"; -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; -import { SipTrunk, SipTrunkRoute } from "../../../src/models"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; +import type { SipTrunk, SipTrunkRoute } from "../../../src/models"; import { clearSipConfiguration, createRecordedClient, diff --git a/sdk/communication/communication-phone-numbers/test/public/siprouting/utils/mockHttpClients.ts b/sdk/communication/communication-phone-numbers/test/public/siprouting/utils/mockHttpClients.ts index caa0bad9668f..672f48a891b7 100644 --- a/sdk/communication/communication-phone-numbers/test/public/siprouting/utils/mockHttpClients.ts +++ b/sdk/communication/communication-phone-numbers/test/public/siprouting/utils/mockHttpClients.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { HttpClient, HttpHeaders, PipelineRequest, PipelineResponse, } from "@azure/core-rest-pipeline"; -import { SipTrunk } from "../../../../src"; +import type { SipTrunk } from "../../../../src"; export const createMockHttpClient = >( status: number = 200, diff --git a/sdk/communication/communication-phone-numbers/test/public/siprouting/utils/msUserAgentPolicy.ts b/sdk/communication/communication-phone-numbers/test/public/siprouting/utils/msUserAgentPolicy.ts index 3830e3bd81dc..1de4c36d1974 100644 --- a/sdk/communication/communication-phone-numbers/test/public/siprouting/utils/msUserAgentPolicy.ts +++ b/sdk/communication/communication-phone-numbers/test/public/siprouting/utils/msUserAgentPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/communication/communication-phone-numbers/test/public/siprouting/utils/recordedClient.ts b/sdk/communication/communication-phone-numbers/test/public/siprouting/utils/recordedClient.ts index 3f2998a77209..9e43bb0a16fe 100644 --- a/sdk/communication/communication-phone-numbers/test/public/siprouting/utils/recordedClient.ts +++ b/sdk/communication/communication-phone-numbers/test/public/siprouting/utils/recordedClient.ts @@ -1,20 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context, Test } from "mocha"; +import type { Context, Test } from "mocha"; import * as dotenv from "dotenv"; +import type { RecorderStartOptions, SanitizerOptions } from "@azure-tools/test-recorder"; import { Recorder, - RecorderStartOptions, - SanitizerOptions, assertEnvironmentVariable, env, isPlaybackMode, } from "@azure-tools/test-recorder"; -import { SipRoutingClient, SipTrunk, SipTrunkRoute } from "../../../../src"; +import type { SipTrunk, SipTrunkRoute } from "../../../../src"; +import { SipRoutingClient } from "../../../../src"; import { parseConnectionString } from "@azure/communication-common"; -import { TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; import { isNodeLike } from "@azure/core-util"; import { createTestCredential } from "@azure-tools/test-credential"; import { randomUUID } from "@azure/core-util"; diff --git a/sdk/communication/communication-phone-numbers/test/public/utils/mockHttpClients.ts b/sdk/communication/communication-phone-numbers/test/public/utils/mockHttpClients.ts index 85c95963937d..7463fa409cdb 100644 --- a/sdk/communication/communication-phone-numbers/test/public/utils/mockHttpClients.ts +++ b/sdk/communication/communication-phone-numbers/test/public/utils/mockHttpClients.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { HttpClient, HttpHeaders, PipelineRequest, PipelineResponse, } from "@azure/core-rest-pipeline"; -import { PurchasedPhoneNumber } from "../../../src"; -import { PurchasedPhoneNumbers } from "../../../src/generated/src/models"; +import type { PurchasedPhoneNumber } from "../../../src"; +import type { PurchasedPhoneNumbers } from "../../../src/generated/src/models"; export const createMockHttpClient = >( status: number = 200, diff --git a/sdk/communication/communication-phone-numbers/test/public/utils/msUserAgentPolicy.ts b/sdk/communication/communication-phone-numbers/test/public/utils/msUserAgentPolicy.ts index 3830e3bd81dc..1de4c36d1974 100644 --- a/sdk/communication/communication-phone-numbers/test/public/utils/msUserAgentPolicy.ts +++ b/sdk/communication/communication-phone-numbers/test/public/utils/msUserAgentPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/communication/communication-phone-numbers/test/public/utils/recordedClient.ts b/sdk/communication/communication-phone-numbers/test/public/utils/recordedClient.ts index d97fc76ba503..7549df2d33b2 100644 --- a/sdk/communication/communication-phone-numbers/test/public/utils/recordedClient.ts +++ b/sdk/communication/communication-phone-numbers/test/public/utils/recordedClient.ts @@ -1,19 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context, Test } from "mocha"; +import type { Context, Test } from "mocha"; import * as dotenv from "dotenv"; -import { - Recorder, - RecorderStartOptions, - env, - isPlaybackMode, - SanitizerOptions, -} from "@azure-tools/test-recorder"; +import type { RecorderStartOptions, SanitizerOptions } from "@azure-tools/test-recorder"; +import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; import { PhoneNumbersClient } from "../../../src"; import { parseConnectionString } from "@azure/communication-common"; -import { TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; import { isNode } from "@azure-tools/test-utils"; import { createTestCredential } from "@azure-tools/test-credential"; import { createMSUserAgentPolicy } from "./msUserAgentPolicy"; diff --git a/sdk/communication/communication-recipient-verification/review/communication-recipient-verification.api.md b/sdk/communication/communication-recipient-verification/review/communication-recipient-verification.api.md index 76e9397ebb87..e2c800344061 100644 --- a/sdk/communication/communication-recipient-verification/review/communication-recipient-verification.api.md +++ b/sdk/communication/communication-recipient-verification/review/communication-recipient-verification.api.md @@ -4,10 +4,10 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; +import type { CommonClientOptions } from '@azure/core-client'; import * as coreClient from '@azure/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { TokenCredential } from '@azure/core-auth'; +import type { KeyCredential } from '@azure/core-auth'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AcsVerification { diff --git a/sdk/communication/communication-recipient-verification/src/recipientVerificationClient.ts b/sdk/communication/communication-recipient-verification/src/recipientVerificationClient.ts index 13c65506707f..e0e9af15663e 100644 --- a/sdk/communication/communication-recipient-verification/src/recipientVerificationClient.ts +++ b/sdk/communication/communication-recipient-verification/src/recipientVerificationClient.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. /// -import { +import type { AcsVerificationGetVerificationsOptionalParams, AcsVerificationRequestVerificationOptionalParams, AcsVerificationRequestVerificationResponse, @@ -11,9 +11,10 @@ import { AcsVerificationDeleteVerificationOptionalParams, AcsVerificationGetVerificationConstantsOptionalParams, } from "./models"; -import { CommonClientOptions, InternalClientPipelineOptions } from "@azure/core-client"; -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { AcsVerification, VerificationConstantsResponse } from "./generated/src/models"; +import type { CommonClientOptions, InternalClientPipelineOptions } from "@azure/core-client"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { AcsVerification, VerificationConstantsResponse } from "./generated/src/models"; import { createCommunicationAuthPolicy } from "@azure/communication-common"; import { isKeyCredential, parseClientArguments } from "@azure/communication-common"; import { RecipientVerificationClient as RecipientVerificationGeneratedClient } from "./generated/src"; diff --git a/sdk/communication/communication-recipient-verification/test/public/ctor.spec.ts b/sdk/communication/communication-recipient-verification/test/public/ctor.spec.ts index 3700a92a663d..f7fe64f5c7ac 100644 --- a/sdk/communication/communication-recipient-verification/test/public/ctor.spec.ts +++ b/sdk/communication/communication-recipient-verification/test/public/ctor.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { AzureKeyCredential } from "@azure/core-auth"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { RecipientVerificationClient } from "../../src"; import { assert } from "chai"; import { createMockToken } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-recipient-verification/test/public/getVerificationConstants.spec.ts b/sdk/communication/communication-recipient-verification/test/public/getVerificationConstants.spec.ts index cf59f6e43114..a82d3779f737 100644 --- a/sdk/communication/communication-recipient-verification/test/public/getVerificationConstants.spec.ts +++ b/sdk/communication/communication-recipient-verification/test/public/getVerificationConstants.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; -import { RecipientVerificationClient } from "../../src"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; +import type { RecipientVerificationClient } from "../../src"; import { assert } from "chai"; import { createRecordedClient } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-recipient-verification/test/public/listVerifications.spec.ts b/sdk/communication/communication-recipient-verification/test/public/listVerifications.spec.ts index 70c0fedc9d8e..497b36a7e341 100644 --- a/sdk/communication/communication-recipient-verification/test/public/listVerifications.spec.ts +++ b/sdk/communication/communication-recipient-verification/test/public/listVerifications.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; -import { RecipientVerificationClient } from "../../src"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; +import type { RecipientVerificationClient } from "../../src"; import { assert } from "chai"; import { createRecordedClient } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-recipient-verification/test/public/utils/recordedClient.ts b/sdk/communication/communication-recipient-verification/test/public/utils/recordedClient.ts index 217dcfb865e3..6a76cd28560d 100644 --- a/sdk/communication/communication-recipient-verification/test/public/utils/recordedClient.ts +++ b/sdk/communication/communication-recipient-verification/test/public/utils/recordedClient.ts @@ -2,15 +2,16 @@ // Licensed under the MIT License. import * as dotenv from "dotenv"; -import { ClientSecretCredential, DefaultAzureCredential, TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; +import { ClientSecretCredential, DefaultAzureCredential } from "@azure/identity"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; import { Recorder, - RecorderStartOptions, assertEnvironmentVariable, env, isPlaybackMode, } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { RecipientVerificationClient } from "../../../src"; import { isNodeLike } from "@azure/core-util"; import { parseConnectionString } from "@azure/communication-common"; diff --git a/sdk/communication/communication-rooms/review/communication-rooms.api.md b/sdk/communication/communication-rooms/review/communication-rooms.api.md index e4ef87b96563..f725c3a27588 100644 --- a/sdk/communication/communication-rooms/review/communication-rooms.api.md +++ b/sdk/communication/communication-rooms/review/communication-rooms.api.md @@ -4,13 +4,13 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; -import { CommunicationIdentifier } from '@azure/communication-common'; -import { CommunicationIdentifierKind } from '@azure/communication-common'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { CommunicationIdentifier } from '@azure/communication-common'; +import type { CommunicationIdentifierKind } from '@azure/communication-common'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { TokenCredential } from '@azure/core-auth'; // @public export type AddOrUpdateParticipantsOptions = OperationOptions; diff --git a/sdk/communication/communication-rooms/src/models/mappers.ts b/sdk/communication/communication-rooms/src/models/mappers.ts index 003e1a4b61d0..8e5f73c01f27 100644 --- a/sdk/communication/communication-rooms/src/models/mappers.ts +++ b/sdk/communication/communication-rooms/src/models/mappers.ts @@ -1,19 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as RestModel from "../generated/src/models"; -import { +import type * as RestModel from "../generated/src/models"; +import type { CommunicationRoom, ParticipantRole, RoomParticipant, RoomParticipantPatch, } from "./models"; -import { - CommunicationIdentifier, - getIdentifierKind, - getIdentifierRawId, -} from "@azure/communication-common"; -import { +import type { CommunicationIdentifier } from "@azure/communication-common"; +import { getIdentifierKind, getIdentifierRawId } from "@azure/communication-common"; +import type { ParticipantProperties, RoomParticipant as RESTRoomParticipant, } from "../generated/src/models"; diff --git a/sdk/communication/communication-rooms/src/models/models.ts b/sdk/communication/communication-rooms/src/models/models.ts index 0ac6ce1a0b6b..0ca348b12ddd 100644 --- a/sdk/communication/communication-rooms/src/models/models.ts +++ b/sdk/communication/communication-rooms/src/models/models.ts @@ -1,7 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommunicationIdentifier, CommunicationIdentifierKind } from "@azure/communication-common"; +import type { + CommunicationIdentifier, + CommunicationIdentifierKind, +} from "@azure/communication-common"; /** The meeting room. */ export interface CommunicationRoom { diff --git a/sdk/communication/communication-rooms/src/models/options.ts b/sdk/communication/communication-rooms/src/models/options.ts index 4c341d7f7f7b..e9acf3e80390 100644 --- a/sdk/communication/communication-rooms/src/models/options.ts +++ b/sdk/communication/communication-rooms/src/models/options.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; -import { RoomParticipantPatch } from "./models"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { RoomParticipantPatch } from "./models"; /** * Options to create rooms client. diff --git a/sdk/communication/communication-rooms/src/roomsClient.ts b/sdk/communication/communication-rooms/src/roomsClient.ts index 4050d3976154..13e4f8d3d2ba 100644 --- a/sdk/communication/communication-rooms/src/roomsClient.ts +++ b/sdk/communication/communication-rooms/src/roomsClient.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { InternalClientPipelineOptions } from "@azure/core-client"; -import { KeyCredential, TokenCredential } from "@azure/core-auth"; +import type { InternalClientPipelineOptions } from "@azure/core-client"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import type { CommunicationIdentifier } from "@azure/communication-common"; import { - CommunicationIdentifier, createCommunicationAuthPolicy, isKeyCredential, parseClientArguments, @@ -19,8 +19,8 @@ import { mapRoomParticipantToRawId, mapToRoomParticipantSDKModel, } from "./models/mappers"; -import { CommunicationRoom, RoomParticipantPatch, RoomParticipant } from "./models/models"; -import { +import type { CommunicationRoom, RoomParticipantPatch, RoomParticipant } from "./models/models"; +import type { CreateRoomOptions, DeleteRoomOptions, GetRoomOptions, @@ -32,7 +32,7 @@ import { AddOrUpdateParticipantsOptions, } from "./models/options"; import { randomUUID } from "@azure/core-util"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; /** * @internal diff --git a/sdk/communication/communication-rooms/test/internal/roomsClient.mocked.spec.ts b/sdk/communication/communication-rooms/test/internal/roomsClient.mocked.spec.ts index c6315b76051a..fbab3f57100f 100644 --- a/sdk/communication/communication-rooms/test/internal/roomsClient.mocked.spec.ts +++ b/sdk/communication/communication-rooms/test/internal/roomsClient.mocked.spec.ts @@ -3,7 +3,7 @@ import sinon from "sinon"; import { assert } from "chai"; -import { RoomsClient } from "../../src"; +import type { RoomsClient } from "../../src"; import { createRoomsClient, generateHttpClient, diff --git a/sdk/communication/communication-rooms/test/internal/utils/mockedClient.ts b/sdk/communication/communication-rooms/test/internal/utils/mockedClient.ts index 5a53b31801a6..32d88625735c 100644 --- a/sdk/communication/communication-rooms/test/internal/utils/mockedClient.ts +++ b/sdk/communication/communication-rooms/test/internal/utils/mockedClient.ts @@ -1,13 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - HttpClient, - PipelineRequest, - PipelineResponse, - createHttpHeaders, -} from "@azure/core-rest-pipeline"; -import * as RestModel from "../../../src/generated/src/models"; +import type { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; +import type * as RestModel from "../../../src/generated/src/models"; import { RoomsClient } from "../../../src"; export const mockCreateRoomsResult: RestModel.RoomsCreateResponse = { diff --git a/sdk/communication/communication-rooms/test/public/roomsClient.spec.ts b/sdk/communication/communication-rooms/test/public/roomsClient.spec.ts index 4c9bd5b0d724..cbd41fc5c098 100644 --- a/sdk/communication/communication-rooms/test/public/roomsClient.spec.ts +++ b/sdk/communication/communication-rooms/test/public/roomsClient.spec.ts @@ -1,15 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { createRecordedRoomsClient, createTestUser } from "./utils/recordedClient"; import { assert, expect } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import sinon from "sinon"; -import { RoomsClient } from "../../src/roomsClient"; -import { CommunicationUserIdentifier } from "@azure/communication-common"; -import { CreateRoomOptions, UpdateRoomOptions } from "../../src/models/options"; -import { CommunicationRoom, RoomParticipantPatch } from "../../src/models/models"; +import type { RoomsClient } from "../../src/roomsClient"; +import type { CommunicationUserIdentifier } from "@azure/communication-common"; +import type { CreateRoomOptions, UpdateRoomOptions } from "../../src/models/options"; +import type { CommunicationRoom, RoomParticipantPatch } from "../../src/models/models"; describe("RoomsClient", function () { let recorder: Recorder; diff --git a/sdk/communication/communication-rooms/test/public/utils/recordedClient.ts b/sdk/communication/communication-rooms/test/public/utils/recordedClient.ts index 1e6db6f150d0..2d8778466867 100644 --- a/sdk/communication/communication-rooms/test/public/utils/recordedClient.ts +++ b/sdk/communication/communication-rooms/test/public/utils/recordedClient.ts @@ -1,20 +1,21 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { RecorderStartOptions, SanitizerOptions } from "@azure-tools/test-recorder"; import { Recorder, - RecorderStartOptions, - SanitizerOptions, assertEnvironmentVariable, env, isPlaybackMode, } from "@azure-tools/test-recorder"; -import { TokenCredential } from "@azure/core-auth"; -import { CommunicationUserIdentifier, parseConnectionString } from "@azure/communication-common"; +import type { TokenCredential } from "@azure/core-auth"; +import type { CommunicationUserIdentifier } from "@azure/communication-common"; +import { parseConnectionString } from "@azure/communication-common"; import { createTestCredential } from "@azure-tools/test-credential"; -import { Context, Test } from "mocha"; +import type { Context, Test } from "mocha"; import { RoomsClient } from "../../../src"; -import { CommunicationIdentityClient, CommunicationUserToken } from "@azure/communication-identity"; +import type { CommunicationUserToken } from "@azure/communication-identity"; +import { CommunicationIdentityClient } from "@azure/communication-identity"; import { generateToken } from "./connectionUtils"; export interface RecordedClient { diff --git a/sdk/communication/communication-short-codes/review/communication-short-codes.api.md b/sdk/communication/communication-short-codes/review/communication-short-codes.api.md index 53c203b12193..b8ebe03b2a86 100644 --- a/sdk/communication/communication-short-codes/review/communication-short-codes.api.md +++ b/sdk/communication/communication-short-codes/review/communication-short-codes.api.md @@ -4,12 +4,12 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; +import type { CommonClientOptions } from '@azure/core-client'; import * as coreClient from '@azure/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { TokenCredential } from '@azure/core-auth'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { TokenCredential } from '@azure/core-auth'; // @public export type AttachmentType = "callToAction" | "termsOfService" | "privacyPolicy" | "other"; diff --git a/sdk/communication/communication-short-codes/src/models.ts b/sdk/communication/communication-short-codes/src/models.ts index e56e3e71737b..e7bd2bf43191 100644 --- a/sdk/communication/communication-short-codes/src/models.ts +++ b/sdk/communication/communication-short-codes/src/models.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { +import type { OperationOptions } from "@azure/core-client"; +import type { ShortCodesGetShortCodesOptionalParams, ShortCodesGetUSProgramBriefsOptionalParams, ShortCodesGetCostsOptionalParams, diff --git a/sdk/communication/communication-short-codes/src/shortCodesClient.ts b/sdk/communication/communication-short-codes/src/shortCodesClient.ts index e91f7776819c..f26441bca20b 100644 --- a/sdk/communication/communication-short-codes/src/shortCodesClient.ts +++ b/sdk/communication/communication-short-codes/src/shortCodesClient.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. /// -import { +import type { AttachmentType, DeleteUSProgramBriefOptions, FileType, @@ -16,9 +16,10 @@ import { ShortCodesGetUSProgramBriefAttachmentsOptionalParams, SubmitUSProgramBriefOptions, } from "./models"; -import { CommonClientOptions, InternalClientPipelineOptions } from "@azure/core-client"; -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { +import type { CommonClientOptions, InternalClientPipelineOptions } from "@azure/core-client"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { ProgramBriefAttachment, ShortCode, ShortCodeCost, @@ -26,7 +27,7 @@ import { USProgramBrief, } from "./generated/src/models/"; import { isKeyCredential, parseClientArguments } from "@azure/communication-common"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; import { ShortCodesClient as ShortCodesGeneratedClient } from "./generated/src"; import { createCommunicationAuthPolicy } from "@azure/communication-common"; import { logger } from "./utils"; diff --git a/sdk/communication/communication-short-codes/src/utils/customPipelinePolicies.ts b/sdk/communication/communication-short-codes/src/utils/customPipelinePolicies.ts index 61f030659ee7..76aa0c25fe51 100644 --- a/sdk/communication/communication-short-codes/src/utils/customPipelinePolicies.ts +++ b/sdk/communication/communication-short-codes/src/utils/customPipelinePolicies.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { FullOperationResponse } from "@azure/core-client"; -import { +import type { FullOperationResponse } from "@azure/core-client"; +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/communication/communication-short-codes/test/internal/generated_client.spec.ts b/sdk/communication/communication-short-codes/test/internal/generated_client.spec.ts index fb2d6303c35f..7aadfe256ca2 100644 --- a/sdk/communication/communication-short-codes/test/internal/generated_client.spec.ts +++ b/sdk/communication/communication-short-codes/test/internal/generated_client.spec.ts @@ -1,20 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { PipelinePolicy } from "@azure/core-rest-pipeline"; import { - PipelinePolicy, bearerTokenAuthenticationPolicy, createEmptyPipeline, bearerTokenAuthenticationPolicyName, } from "@azure/core-rest-pipeline"; import { ShortCodesClient as ShortCodesGeneratedClient } from "../../src/generated/src"; -import { TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; import { assert } from "chai"; import { createMockToken } from "../public/utils/recordedClient"; import { isNodeLike } from "@azure/core-util"; import { parseClientArguments } from "@azure/communication-common"; import sinon from "sinon"; -import { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import type { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; export const createMockHttpClient = >( status: number = 200, diff --git a/sdk/communication/communication-short-codes/test/internal/headers.spec.ts b/sdk/communication/communication-short-codes/test/internal/headers.spec.ts index 69acea3116f4..4e3b2e4202d3 100644 --- a/sdk/communication/communication-short-codes/test/internal/headers.spec.ts +++ b/sdk/communication/communication-short-codes/test/internal/headers.spec.ts @@ -2,11 +2,11 @@ // Licensed under the MIT License. import { AzureKeyCredential } from "@azure/core-auth"; -import { Context } from "mocha"; -import { PipelineRequest } from "@azure/core-rest-pipeline"; +import type { Context } from "mocha"; +import type { PipelineRequest } from "@azure/core-rest-pipeline"; import { SDK_VERSION } from "../../src/utils/constants"; import { ShortCodesClient } from "../../src/shortCodesClient"; -import { TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; import { assert } from "chai"; import { createMockToken } from "../public/utils/recordedClient"; import { getUSProgramBriefHttpClient } from "../public/utils/mockHttpClients"; diff --git a/sdk/communication/communication-short-codes/test/public/ctor.spec.ts b/sdk/communication/communication-short-codes/test/public/ctor.spec.ts index dfa798a12eb6..87b5d7fcd70e 100644 --- a/sdk/communication/communication-short-codes/test/public/ctor.spec.ts +++ b/sdk/communication/communication-short-codes/test/public/ctor.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { AzureKeyCredential } from "@azure/core-auth"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { ShortCodesClient } from "../../src"; import { assert } from "chai"; import { createMockToken } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-short-codes/test/public/listShortCodeCosts.spec.ts b/sdk/communication/communication-short-codes/test/public/listShortCodeCosts.spec.ts index a36597219ff1..61ad9d6ed2c8 100644 --- a/sdk/communication/communication-short-codes/test/public/listShortCodeCosts.spec.ts +++ b/sdk/communication/communication-short-codes/test/public/listShortCodeCosts.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; -import { ShortCodesClient } from "../../src"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; +import type { ShortCodesClient } from "../../src"; import { assert } from "chai"; import { createRecordedClient } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-short-codes/test/public/listShortCodes.spec.ts b/sdk/communication/communication-short-codes/test/public/listShortCodes.spec.ts index 75903c335b6e..758e026e7e12 100644 --- a/sdk/communication/communication-short-codes/test/public/listShortCodes.spec.ts +++ b/sdk/communication/communication-short-codes/test/public/listShortCodes.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; -import { ShortCodesClient } from "../../src"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; +import type { ShortCodesClient } from "../../src"; import { assert } from "chai"; import { createRecordedClient } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-short-codes/test/public/manageProgramBriefAttachment.spec.ts b/sdk/communication/communication-short-codes/test/public/manageProgramBriefAttachment.spec.ts index 962c8bc48fa6..ac152427a4d7 100644 --- a/sdk/communication/communication-short-codes/test/public/manageProgramBriefAttachment.spec.ts +++ b/sdk/communication/communication-short-codes/test/public/manageProgramBriefAttachment.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ProgramBriefAttachment, ShortCodesClient, ShortCodesUpsertUSProgramBriefOptionalParams, @@ -18,8 +18,8 @@ import { getTestUSProgramBrief, runTestCleaningLeftovers, } from "./utils/testUSProgramBrief"; -import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecordedClient } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-short-codes/test/public/manageUSProgramBriefs.spec.ts b/sdk/communication/communication-short-codes/test/public/manageUSProgramBriefs.spec.ts index f77a9e708492..e70d797cc468 100644 --- a/sdk/communication/communication-short-codes/test/public/manageUSProgramBriefs.spec.ts +++ b/sdk/communication/communication-short-codes/test/public/manageUSProgramBriefs.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ShortCodesClient, ShortCodesUpsertUSProgramBriefOptionalParams, USProgramBrief, @@ -12,8 +12,8 @@ import { getTestUSProgramBrief, runTestCleaningLeftovers, } from "./utils/testUSProgramBrief"; -import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecordedClient } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-short-codes/test/public/utils/mockHttpClients.ts b/sdk/communication/communication-short-codes/test/public/utils/mockHttpClients.ts index 66170e546540..2bfab7fc4cd2 100644 --- a/sdk/communication/communication-short-codes/test/public/utils/mockHttpClients.ts +++ b/sdk/communication/communication-short-codes/test/public/utils/mockHttpClients.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import type { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; export const createMockHttpClient = >( status: number = 200, diff --git a/sdk/communication/communication-short-codes/test/public/utils/msUserAgentPolicy.ts b/sdk/communication/communication-short-codes/test/public/utils/msUserAgentPolicy.ts index 73ca5cd71652..7958724263e6 100644 --- a/sdk/communication/communication-short-codes/test/public/utils/msUserAgentPolicy.ts +++ b/sdk/communication/communication-short-codes/test/public/utils/msUserAgentPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/communication/communication-short-codes/test/public/utils/recordedClient.ts b/sdk/communication/communication-short-codes/test/public/utils/recordedClient.ts index 4a1dd113cb47..f32f142ba3b6 100644 --- a/sdk/communication/communication-short-codes/test/public/utils/recordedClient.ts +++ b/sdk/communication/communication-short-codes/test/public/utils/recordedClient.ts @@ -2,15 +2,16 @@ // Licensed under the MIT License. import * as dotenv from "dotenv"; -import { ClientSecretCredential, DefaultAzureCredential, TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; +import { ClientSecretCredential, DefaultAzureCredential } from "@azure/identity"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; import { Recorder, - RecorderStartOptions, assertEnvironmentVariable, env, isPlaybackMode, } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { ShortCodesClient } from "../../../src"; import { isNodeLike } from "@azure/core-util"; import { parseConnectionString } from "@azure/communication-common"; diff --git a/sdk/communication/communication-short-codes/test/public/utils/testProgramBriefAttachment.ts b/sdk/communication/communication-short-codes/test/public/utils/testProgramBriefAttachment.ts index 504fe7b712c2..aaad9c90d216 100644 --- a/sdk/communication/communication-short-codes/test/public/utils/testProgramBriefAttachment.ts +++ b/sdk/communication/communication-short-codes/test/public/utils/testProgramBriefAttachment.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ProgramBriefAttachment, ShortCodesClient } from "../../../src"; +import type { ProgramBriefAttachment, ShortCodesClient } from "../../../src"; import { v4 as uuid } from "uuid"; export function getTestProgramBriefAttachment(): ProgramBriefAttachment { diff --git a/sdk/communication/communication-short-codes/test/public/utils/testUSProgramBrief.ts b/sdk/communication/communication-short-codes/test/public/utils/testUSProgramBrief.ts index 3f4baa469fb4..c98720bffd94 100644 --- a/sdk/communication/communication-short-codes/test/public/utils/testUSProgramBrief.ts +++ b/sdk/communication/communication-short-codes/test/public/utils/testUSProgramBrief.ts @@ -1,17 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RestError } from "@azure/core-rest-pipeline"; +import type { RestError } from "@azure/core-rest-pipeline"; +import type { ShortCodesClient, USProgramBrief } from "../../../src"; import { CompanyInformationMapper, MessageDetailsMapper, ProgramDetailsMapper, - ShortCodesClient, TrafficDetailsMapper, - USProgramBrief, } from "../../../src"; import { assert } from "chai"; -import { CompositeMapper } from "@azure/core-client"; +import type { CompositeMapper } from "@azure/core-client"; import { isPlaybackMode } from "@azure-tools/test-recorder"; import { v4 as uuid } from "uuid"; diff --git a/sdk/communication/communication-sms/review/communication-sms.api.md b/sdk/communication/communication-sms/review/communication-sms.api.md index 4339124889b9..62b9568facb9 100644 --- a/sdk/communication/communication-sms/review/communication-sms.api.md +++ b/sdk/communication/communication-sms/review/communication-sms.api.md @@ -4,10 +4,10 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationOptions } from '@azure/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationOptions } from '@azure/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export class SmsClient { diff --git a/sdk/communication/communication-sms/src/extractOperationOptions.ts b/sdk/communication/communication-sms/src/extractOperationOptions.ts index 2b1aeb8849b8..301c90538793 100644 --- a/sdk/communication/communication-sms/src/extractOperationOptions.ts +++ b/sdk/communication/communication-sms/src/extractOperationOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; export const extractOperationOptions = ( obj: T, diff --git a/sdk/communication/communication-sms/src/smsClient.ts b/sdk/communication/communication-sms/src/smsClient.ts index 5d552d2e1596..87f9c27a1590 100644 --- a/sdk/communication/communication-sms/src/smsClient.ts +++ b/sdk/communication/communication-sms/src/smsClient.ts @@ -7,9 +7,10 @@ import { isKeyCredential, parseClientArguments, } from "@azure/communication-common"; -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; -import { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; import { SmsApiClient } from "./generated/src/smsApiClient"; import { extractOperationOptions } from "./extractOperationOptions"; import { generateSendMessageRequest } from "./utils/smsUtils"; diff --git a/sdk/communication/communication-sms/src/utils/smsUtils.ts b/sdk/communication/communication-sms/src/utils/smsUtils.ts index 4085b77466b7..b3d958acc3f4 100644 --- a/sdk/communication/communication-sms/src/utils/smsUtils.ts +++ b/sdk/communication/communication-sms/src/utils/smsUtils.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { SendMessageRequest } from "../generated/src/models"; -import { SmsSendOptions, SmsSendRequest } from "../smsClient"; +import type { SendMessageRequest } from "../generated/src/models"; +import type { SmsSendOptions, SmsSendRequest } from "../smsClient"; import { Uuid } from "./uuid"; -import { SmsSendOptions as InternalOptions } from "../generated/src/models"; +import type { SmsSendOptions as InternalOptions } from "../generated/src/models"; export function generateSendMessageRequest( smsRequest: SmsSendRequest, diff --git a/sdk/communication/communication-sms/test/internal/smsClient.internal.mocked.spec.ts b/sdk/communication/communication-sms/test/internal/smsClient.internal.mocked.spec.ts index 43ae6045bac3..a235cc35c32c 100644 --- a/sdk/communication/communication-sms/test/internal/smsClient.internal.mocked.spec.ts +++ b/sdk/communication/communication-sms/test/internal/smsClient.internal.mocked.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpClient } from "@azure/core-rest-pipeline"; +import type { HttpClient } from "@azure/core-rest-pipeline"; import { generateSendMessageRequest } from "../../src/utils/smsUtils"; import { Uuid } from "../../src/utils/uuid"; @@ -9,7 +9,8 @@ import { Uuid } from "../../src/utils/uuid"; import { assert } from "chai"; import sinon from "sinon"; import { apiVersion } from "../../src/generated/src/models/parameters"; -import { SmsClient, SmsSendRequest } from "../../src/smsClient"; +import type { SmsSendRequest } from "../../src/smsClient"; +import { SmsClient } from "../../src/smsClient"; import { MockHttpClient } from "../public/utils/mockHttpClient"; const API_VERSION = apiVersion.mapper.defaultValue; diff --git a/sdk/communication/communication-sms/test/internal/smsClient.internal.spec.ts b/sdk/communication/communication-sms/test/internal/smsClient.internal.spec.ts index abc1b8ddf384..1eef236ebf3d 100644 --- a/sdk/communication/communication-sms/test/internal/smsClient.internal.spec.ts +++ b/sdk/communication/communication-sms/test/internal/smsClient.internal.spec.ts @@ -8,11 +8,12 @@ * These tests will be skipped in Live Mode since the public tests run in live mode only. */ -import { Recorder, isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; import { matrix } from "@azure-tools/test-utils"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import * as sinon from "sinon"; -import { SmsClient } from "../../src"; +import type { SmsClient } from "../../src"; import { Uuid } from "../../src/utils/uuid"; import sendSmsSuites from "../public/suites/smsClient.send"; import { diff --git a/sdk/communication/communication-sms/test/public/smsClient.mocked.spec.ts b/sdk/communication/communication-sms/test/public/smsClient.mocked.spec.ts index ced8b4432250..6e7cf712a244 100644 --- a/sdk/communication/communication-sms/test/public/smsClient.mocked.spec.ts +++ b/sdk/communication/communication-sms/test/public/smsClient.mocked.spec.ts @@ -2,12 +2,13 @@ // Licensed under the MIT License. import { AzureKeyCredential } from "@azure/core-auth"; -import { HttpClient } from "@azure/core-rest-pipeline"; +import type { HttpClient } from "@azure/core-rest-pipeline"; import { isNode } from "@azure/core-util"; -import { TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; import { assert } from "chai"; import sinon from "sinon"; -import { SmsClient, SmsClientOptions, SmsSendRequest } from "../../src"; +import type { SmsClientOptions, SmsSendRequest } from "../../src"; +import { SmsClient } from "../../src"; import { MockHttpClient } from "./utils/mockHttpClient"; const TEST_NUMBER = "+14255550123"; diff --git a/sdk/communication/communication-sms/test/public/smsClient.spec.ts b/sdk/communication/communication-sms/test/public/smsClient.spec.ts index 0070a827ed1b..fda727ca6d0f 100644 --- a/sdk/communication/communication-sms/test/public/smsClient.spec.ts +++ b/sdk/communication/communication-sms/test/public/smsClient.spec.ts @@ -6,11 +6,12 @@ * They are duplicated in an internal test which contains workaround logic to record/playback the tests */ -import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import { matrix } from "@azure-tools/test-utils"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import sinon from "sinon"; -import { SmsClient } from "../../src"; +import type { SmsClient } from "../../src"; import { Uuid } from "../../src/utils/uuid"; import sendSmsSuites from "./suites/smsClient.send"; import { createRecordedSmsClient, createRecordedSmsClientWithToken } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-sms/test/public/suites/smsClient.send.ts b/sdk/communication/communication-sms/test/public/suites/smsClient.send.ts index 35ed4d9d75e5..5e61f049eb1c 100644 --- a/sdk/communication/communication-sms/test/public/suites/smsClient.send.ts +++ b/sdk/communication/communication-sms/test/public/suites/smsClient.send.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { SmsSendOptions, SmsSendRequest } from "../../../src"; +import type { SmsSendOptions, SmsSendRequest } from "../../../src"; import { env } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { assertIsFailureResult, assertIsSuccessResult } from "../utils/assertHelpers"; export default function testCases(): void { diff --git a/sdk/communication/communication-sms/test/public/utils/assertHelpers.ts b/sdk/communication/communication-sms/test/public/utils/assertHelpers.ts index 3f358b2329c1..63f10660953a 100644 --- a/sdk/communication/communication-sms/test/public/utils/assertHelpers.ts +++ b/sdk/communication/communication-sms/test/public/utils/assertHelpers.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { SmsSendResult } from "../../../src"; +import type { SmsSendResult } from "../../../src"; export const assertIsSuccessResult = ( actualSmsResult: SmsSendResult, diff --git a/sdk/communication/communication-sms/test/public/utils/mockHttpClient.ts b/sdk/communication/communication-sms/test/public/utils/mockHttpClient.ts index 48306e0623fe..b3790a7ea494 100644 --- a/sdk/communication/communication-sms/test/public/utils/mockHttpClient.ts +++ b/sdk/communication/communication-sms/test/public/utils/mockHttpClient.ts @@ -1,12 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - HttpClient, - PipelineRequest, - PipelineResponse, - createHttpHeaders, -} from "@azure/core-rest-pipeline"; +import type { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; export class MockHttpClient implements HttpClient { constructor(private _phoneNumber: string) {} diff --git a/sdk/communication/communication-sms/test/public/utils/recordedClient.ts b/sdk/communication/communication-sms/test/public/utils/recordedClient.ts index da33d96c6d1f..e18e022f225f 100644 --- a/sdk/communication/communication-sms/test/public/utils/recordedClient.ts +++ b/sdk/communication/communication-sms/test/public/utils/recordedClient.ts @@ -1,17 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context, Test } from "mocha"; -import { - Recorder, - RecorderStartOptions, - SanitizerOptions, - env, - isPlaybackMode, -} from "@azure-tools/test-recorder"; +import type { Context, Test } from "mocha"; +import type { RecorderStartOptions, SanitizerOptions } from "@azure-tools/test-recorder"; +import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; import { SmsClient } from "../../../src"; import { parseConnectionString } from "@azure/communication-common"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { createTestCredential } from "@azure-tools/test-credential"; export interface RecordedClient { diff --git a/sdk/communication/communication-tiering/review/communication-tiering.api.md b/sdk/communication/communication-tiering/review/communication-tiering.api.md index b8827d928b62..dc761e594320 100644 --- a/sdk/communication/communication-tiering/review/communication-tiering.api.md +++ b/sdk/communication/communication-tiering/review/communication-tiering.api.md @@ -4,10 +4,10 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; +import type { CommonClientOptions } from '@azure/core-client'; import * as coreClient from '@azure/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { TokenCredential } from '@azure/core-auth'; +import type { KeyCredential } from '@azure/core-auth'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AcsTier { diff --git a/sdk/communication/communication-tiering/src/tieringClient.ts b/sdk/communication/communication-tiering/src/tieringClient.ts index 8f79cf953526..feb5b8bc8770 100644 --- a/sdk/communication/communication-tiering/src/tieringClient.ts +++ b/sdk/communication/communication-tiering/src/tieringClient.ts @@ -2,14 +2,15 @@ // Licensed under the MIT License. /// -import { +import type { NumberAllotmentGetAcquiredNumberLimitsOptionalParams, TieringGetByResourceIdOptionalParams, AcsTier, AssetDetailsModel, } from "./models"; -import { CommonClientOptions, InternalClientPipelineOptions } from "@azure/core-client"; -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { CommonClientOptions, InternalClientPipelineOptions } from "@azure/core-client"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { createCommunicationAuthPolicy } from "@azure/communication-common"; import { isKeyCredential, parseClientArguments } from "@azure/communication-common"; import { TieringClient as TieringGeneratedClient } from "./generated/src"; diff --git a/sdk/communication/communication-tiering/test/public/ctor.spec.ts b/sdk/communication/communication-tiering/test/public/ctor.spec.ts index 1b6d68de9e63..f4db8797210b 100644 --- a/sdk/communication/communication-tiering/test/public/ctor.spec.ts +++ b/sdk/communication/communication-tiering/test/public/ctor.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { AzureKeyCredential } from "@azure/core-auth"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { TieringClient } from "../../src"; import { assert } from "chai"; import { createMockToken } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-tiering/test/public/getAcquiredNumberLimit.spec.ts b/sdk/communication/communication-tiering/test/public/getAcquiredNumberLimit.spec.ts index 8de59b5faeb7..3f8db786ebe2 100644 --- a/sdk/communication/communication-tiering/test/public/getAcquiredNumberLimit.spec.ts +++ b/sdk/communication/communication-tiering/test/public/getAcquiredNumberLimit.spec.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder, env } from "@azure-tools/test-recorder"; -import { TieringClient } from "../../src"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; +import type { TieringClient } from "../../src"; import { assert } from "chai"; import { createRecordedClient } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-tiering/test/public/getTierInfo.spec.ts b/sdk/communication/communication-tiering/test/public/getTierInfo.spec.ts index 627227337f9f..74febfcb8aeb 100644 --- a/sdk/communication/communication-tiering/test/public/getTierInfo.spec.ts +++ b/sdk/communication/communication-tiering/test/public/getTierInfo.spec.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder, env } from "@azure-tools/test-recorder"; -import { TieringClient } from "../../src"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; +import type { TieringClient } from "../../src"; import { assert } from "chai"; import { createRecordedClient } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-tiering/test/public/utils/recordedClient.ts b/sdk/communication/communication-tiering/test/public/utils/recordedClient.ts index 446638823f7f..87f403bb0eda 100644 --- a/sdk/communication/communication-tiering/test/public/utils/recordedClient.ts +++ b/sdk/communication/communication-tiering/test/public/utils/recordedClient.ts @@ -2,15 +2,16 @@ // Licensed under the MIT License. import * as dotenv from "dotenv"; -import { ClientSecretCredential, DefaultAzureCredential, TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; +import { ClientSecretCredential, DefaultAzureCredential } from "@azure/identity"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; import { Recorder, - RecorderStartOptions, assertEnvironmentVariable, env, isPlaybackMode, } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { TieringClient } from "../../../src"; import { isNodeLike } from "@azure/core-util"; import { parseConnectionString } from "@azure/communication-common"; diff --git a/sdk/communication/communication-toll-free-verification/review/communication-toll-free-verification.api.md b/sdk/communication/communication-toll-free-verification/review/communication-toll-free-verification.api.md index 6d47ed441a7e..f35048c7aa1b 100644 --- a/sdk/communication/communication-toll-free-verification/review/communication-toll-free-verification.api.md +++ b/sdk/communication/communication-toll-free-verification/review/communication-toll-free-verification.api.md @@ -4,11 +4,11 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; +import type { CommonClientOptions } from '@azure/core-client'; import * as coreClient from '@azure/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { TokenCredential } from '@azure/core-auth'; +import type { KeyCredential } from '@azure/core-auth'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface Address { diff --git a/sdk/communication/communication-toll-free-verification/src/tollFreeVerificationClient.ts b/sdk/communication/communication-toll-free-verification/src/tollFreeVerificationClient.ts index 77be4f2cfb69..03a22cc87a1b 100644 --- a/sdk/communication/communication-toll-free-verification/src/tollFreeVerificationClient.ts +++ b/sdk/communication/communication-toll-free-verification/src/tollFreeVerificationClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. /// -import { +import type { AttachmentType, CampaignBrief, CampaignBriefAttachment, @@ -17,14 +17,13 @@ import { TollFreeVerificationSubmitCampaignBriefResponse, TollFreeVerificationUpsertCampaignBriefOptionalParams, } from "./models"; -import { CommonClientOptions, InternalClientPipelineOptions } from "@azure/core-client"; -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { CommonClientOptions, InternalClientPipelineOptions } from "@azure/core-client"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { isKeyCredential, parseClientArguments } from "@azure/communication-common"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { - CampaignBriefSummary, - TollFreeVerificationClient as TollFreeVerificationGeneratedClient, -} from "./generated/src"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { CampaignBriefSummary } from "./generated/src"; +import { TollFreeVerificationClient as TollFreeVerificationGeneratedClient } from "./generated/src"; import { createCommunicationAuthPolicy } from "@azure/communication-common"; import { logger } from "./utils"; import { tracingClient } from "./generated/src/tracing"; diff --git a/sdk/communication/communication-toll-free-verification/test/internal/headers.spec.ts b/sdk/communication/communication-toll-free-verification/test/internal/headers.spec.ts index 998986c664ca..3d38eed0bc9c 100644 --- a/sdk/communication/communication-toll-free-verification/test/internal/headers.spec.ts +++ b/sdk/communication/communication-toll-free-verification/test/internal/headers.spec.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { AzureKeyCredential } from "@azure/core-auth"; -import { Context } from "mocha"; -import { PipelineRequest } from "@azure/core-rest-pipeline"; +import type { Context } from "mocha"; +import type { PipelineRequest } from "@azure/core-rest-pipeline"; import { SDK_VERSION } from "../../src/utils/constants"; -import { TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; import { TollFreeVerificationClient } from "../../src"; import { assert } from "chai"; import { configurationHttpClient } from "../public/utils/mockHttpClients"; diff --git a/sdk/communication/communication-toll-free-verification/test/public/ctor.spec.ts b/sdk/communication/communication-toll-free-verification/test/public/ctor.spec.ts index c2402e4f38fc..9b9583cfbd56 100644 --- a/sdk/communication/communication-toll-free-verification/test/public/ctor.spec.ts +++ b/sdk/communication/communication-toll-free-verification/test/public/ctor.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { AzureKeyCredential } from "@azure/core-auth"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { TollFreeVerificationClient } from "../../src"; import { assert } from "chai"; import { createMockToken } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-toll-free-verification/test/public/listCampaignBriefs.spec.ts b/sdk/communication/communication-toll-free-verification/test/public/listCampaignBriefs.spec.ts index c1492a533fa6..3893b4f67764 100644 --- a/sdk/communication/communication-toll-free-verification/test/public/listCampaignBriefs.spec.ts +++ b/sdk/communication/communication-toll-free-verification/test/public/listCampaignBriefs.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; -import { TollFreeVerificationClient } from "../../src"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; +import type { TollFreeVerificationClient } from "../../src"; import { assert } from "chai"; import { createRecordedClient } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-toll-free-verification/test/public/manageUSCampaignBriefs.spec.ts b/sdk/communication/communication-toll-free-verification/test/public/manageUSCampaignBriefs.spec.ts index 92e0ffd22334..41338e7d67a9 100644 --- a/sdk/communication/communication-toll-free-verification/test/public/manageUSCampaignBriefs.spec.ts +++ b/sdk/communication/communication-toll-free-verification/test/public/manageUSCampaignBriefs.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { TollFreeVerificationClient, TollFreeVerificationUpsertCampaignBriefOptionalParams, } from "../../src"; @@ -11,8 +11,8 @@ import { doesCampaignBriefExist, getTestUSCampaignBrief, } from "./utils/testUSCampaignBrief"; -import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecordedClient } from "./utils/recordedClient"; diff --git a/sdk/communication/communication-toll-free-verification/test/public/utils/mockHttpClients.ts b/sdk/communication/communication-toll-free-verification/test/public/utils/mockHttpClients.ts index 390fb271884f..fd92c957346b 100644 --- a/sdk/communication/communication-toll-free-verification/test/public/utils/mockHttpClients.ts +++ b/sdk/communication/communication-toll-free-verification/test/public/utils/mockHttpClients.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import type { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; export const createMockHttpClient = >( status: number = 200, diff --git a/sdk/communication/communication-toll-free-verification/test/public/utils/recordedClient.ts b/sdk/communication/communication-toll-free-verification/test/public/utils/recordedClient.ts index d29f25cea844..0fb10668ccbf 100644 --- a/sdk/communication/communication-toll-free-verification/test/public/utils/recordedClient.ts +++ b/sdk/communication/communication-toll-free-verification/test/public/utils/recordedClient.ts @@ -2,15 +2,16 @@ // Licensed under the MIT License. import * as dotenv from "dotenv"; -import { ClientSecretCredential, DefaultAzureCredential, TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; +import { ClientSecretCredential, DefaultAzureCredential } from "@azure/identity"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; import { Recorder, - RecorderStartOptions, assertEnvironmentVariable, env, isPlaybackMode, } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { TollFreeVerificationClient } from "../../../src"; import { isNodeLike } from "@azure/core-util"; import { parseConnectionString } from "@azure/communication-common"; diff --git a/sdk/communication/communication-toll-free-verification/test/public/utils/testUSCampaignBrief.ts b/sdk/communication/communication-toll-free-verification/test/public/utils/testUSCampaignBrief.ts index 4149cd16eea6..418b0c34da11 100644 --- a/sdk/communication/communication-toll-free-verification/test/public/utils/testUSCampaignBrief.ts +++ b/sdk/communication/communication-toll-free-verification/test/public/utils/testUSCampaignBrief.ts @@ -1,16 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RestError } from "@azure/core-rest-pipeline"; -import { - BusinessInformationMapper, - BusinessPointOfContactMapper, - CampaignBrief, - CampaignBriefSummary, - TollFreeVerificationClient, -} from "../../../src"; +import type { RestError } from "@azure/core-rest-pipeline"; +import type { CampaignBrief, CampaignBriefSummary, TollFreeVerificationClient } from "../../../src"; +import { BusinessInformationMapper, BusinessPointOfContactMapper } from "../../../src"; import { assert } from "chai"; -import { CompositeMapper } from "@azure/core-client"; +import type { CompositeMapper } from "@azure/core-client"; import { isPlaybackMode } from "@azure-tools/test-recorder"; import { randomUUID } from "@azure/core-util"; diff --git a/sdk/compute/arm-compute-rest/review/arm-compute.api.md b/sdk/compute/arm-compute-rest/review/arm-compute.api.md index 2893ca7b8218..fbcf6d59ac8d 100644 --- a/sdk/compute/arm-compute-rest/review/arm-compute.api.md +++ b/sdk/compute/arm-compute-rest/review/arm-compute.api.md @@ -4,17 +4,17 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { LroEngineOptions } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { LroEngineOptions } from '@azure/core-lro'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { PollerLike } from '@azure/core-lro'; +import type { PollOperationState } from '@azure/core-lro'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AccessUriOutput { diff --git a/sdk/compute/arm-compute-rest/src/clientDefinitions.ts b/sdk/compute/arm-compute-rest/src/clientDefinitions.ts index 037e4f055856..ca568ac43ff1 100644 --- a/sdk/compute/arm-compute-rest/src/clientDefinitions.ts +++ b/sdk/compute/arm-compute-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AvailabilitySetsCreateOrUpdateParameters, AvailabilitySetsDeleteParameters, AvailabilitySetsGetParameters, @@ -282,7 +282,7 @@ import { VirtualMachinesStartParameters, VirtualMachinesUpdateParameters, } from "./parameters"; -import { +import type { AvailabilitySetsCreateOrUpdate200Response, AvailabilitySetsCreateOrUpdateDefaultResponse, AvailabilitySetsDelete200Response, @@ -968,7 +968,7 @@ import { VirtualMachinesUpdate200Response, VirtualMachinesUpdateDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface OperationsList { /** Gets a list of compute operations. */ diff --git a/sdk/compute/arm-compute-rest/src/computeManagementClient.ts b/sdk/compute/arm-compute-rest/src/computeManagementClient.ts index 9ef2b43ca395..988004183db1 100644 --- a/sdk/compute/arm-compute-rest/src/computeManagementClient.ts +++ b/sdk/compute/arm-compute-rest/src/computeManagementClient.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientOptions, getClient } from "@azure-rest/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { ComputeManagementClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { ComputeManagementClient } from "./clientDefinitions"; /** * Initialize a new instance of the class ComputeManagementClient class. diff --git a/sdk/compute/arm-compute-rest/src/isUnexpected.ts b/sdk/compute/arm-compute-rest/src/isUnexpected.ts index 2ddd76bf74b3..7f70c2f69659 100644 --- a/sdk/compute/arm-compute-rest/src/isUnexpected.ts +++ b/sdk/compute/arm-compute-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AvailabilitySetsCreateOrUpdate200Response, AvailabilitySetsCreateOrUpdateDefaultResponse, AvailabilitySetsDelete200Response, diff --git a/sdk/compute/arm-compute-rest/src/paginateHelper.ts b/sdk/compute/arm-compute-rest/src/paginateHelper.ts index e03661e44e7a..5d541b4e406d 100644 --- a/sdk/compute/arm-compute-rest/src/paginateHelper.ts +++ b/sdk/compute/arm-compute-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PagedAsyncIterableIterator, PagedResult, getPagedAsyncIterator } from "@azure/core-paging"; -import { Client, PathUncheckedResponse, createRestError } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/compute/arm-compute-rest/src/parameters.ts b/sdk/compute/arm-compute-rest/src/parameters.ts index 1b6f05385f59..94c2d218b515 100644 --- a/sdk/compute/arm-compute-rest/src/parameters.ts +++ b/sdk/compute/arm-compute-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RequestParameters } from "@azure-rest/core-client"; +import type { AvailabilitySet, AvailabilitySetUpdate, CapacityReservation, diff --git a/sdk/compute/arm-compute-rest/src/pollingHelper.ts b/sdk/compute/arm-compute-rest/src/pollingHelper.ts index e973746eb789..bd4b4d6bda6c 100644 --- a/sdk/compute/arm-compute-rest/src/pollingHelper.ts +++ b/sdk/compute/arm-compute-rest/src/pollingHelper.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { LongRunningOperation, - LroEngine, LroEngineOptions, LroResponse, PollOperationState, PollerLike, } from "@azure/core-lro"; +import { LroEngine } from "@azure/core-lro"; /** * Helper function that builds a Poller object to help polling a long running operation. diff --git a/sdk/compute/arm-compute-rest/src/responses.ts b/sdk/compute/arm-compute-rest/src/responses.ts index 40a31a5c6c3f..678671811564 100644 --- a/sdk/compute/arm-compute-rest/src/responses.ts +++ b/sdk/compute/arm-compute-rest/src/responses.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { HttpResponse } from "@azure-rest/core-client"; +import type { AccessUriOutput, AvailabilitySetListResultOutput, AvailabilitySetOutput, diff --git a/sdk/compute/arm-compute-rest/test/public/compute-rest-sample.spec.ts b/sdk/compute/arm-compute-rest/test/public/compute-rest-sample.spec.ts index 7d815630da99..5691b7a500e3 100644 --- a/sdk/compute/arm-compute-rest/test/public/compute-rest-sample.spec.ts +++ b/sdk/compute/arm-compute-rest/test/public/compute-rest-sample.spec.ts @@ -9,11 +9,12 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { Recorder, RecorderStartOptions, env, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; import { createTestCredential } from "@azure-tools/test-credential"; import { assert } from "chai"; -import { Context } from "mocha"; -import { +import type { Context } from "mocha"; +import type { AvailabilitySetsCreateOrUpdateParameters, AvailabilitySetsDeleteParameters, AvailabilitySetsGetParameters, @@ -25,16 +26,10 @@ import { VirtualMachinesGetParameters, VirtualMachinesListParameters, VirtualMachinesUpdateParameters, - getLongRunningPoller, - isUnexpected, - paginate, } from "../../src"; -import { - NetworkInterface, - NetworkManagementClient, - Subnet, - VirtualNetwork, -} from "@azure/arm-network"; +import { getLongRunningPoller, isUnexpected, paginate } from "../../src"; +import type { NetworkInterface, Subnet, VirtualNetwork } from "@azure/arm-network"; +import { NetworkManagementClient } from "@azure/arm-network"; import { createTestComputeManagementClient } from "./utils/recordedClient"; const replaceableVariables: Record = { SUBSCRIPTION_ID: "azure_subscription_id", diff --git a/sdk/compute/arm-compute-rest/test/public/utils/recordedClient.ts b/sdk/compute/arm-compute-rest/test/public/utils/recordedClient.ts index 5d4023c9218d..6fca9d6f8e78 100644 --- a/sdk/compute/arm-compute-rest/test/public/utils/recordedClient.ts +++ b/sdk/compute/arm-compute-rest/test/public/utils/recordedClient.ts @@ -1,12 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder } from "@azure-tools/test-recorder"; -import { TokenCredential } from "@azure/core-auth"; -import { ClientOptions } from "@azure-rest/core-client"; -import { ComputeManagementClient } from "../../../src/clientDefinitions"; +import type { TokenCredential } from "@azure/core-auth"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { ComputeManagementClient } from "../../../src/clientDefinitions"; import createComputeManagementClient from "../../../src"; const envSetupForPlayback: Record = { diff --git a/sdk/confidentialledger/confidential-ledger-rest/review/confidential-ledger.api.md b/sdk/confidentialledger/confidential-ledger-rest/review/confidential-ledger.api.md index 90b51431f8a4..1e05c536d7bf 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/review/confidential-ledger.api.md +++ b/sdk/confidentialledger/confidential-ledger-rest/review/confidential-ledger.api.md @@ -5,14 +5,14 @@ ```ts import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; import { HttpResponse } from '@azure-rest/core-client'; import { PagedAsyncIterableIterator } from '@azure/core-paging'; import { PathUncheckedResponse } from '@azure-rest/core-client'; import { RawHttpHeaders } from '@azure/core-rest-pipeline'; import { RequestParameters } from '@azure-rest/core-client'; import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface CollectionOutput { diff --git a/sdk/confidentialledger/confidential-ledger-rest/src/confidentialLedger.ts b/sdk/confidentialledger/confidential-ledger-rest/src/confidentialLedger.ts index ab76ab05a3f2..650c6bae5a47 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/src/confidentialLedger.ts +++ b/sdk/confidentialledger/confidential-ledger-rest/src/confidentialLedger.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; -import { ClientOptions } from "@azure-rest/core-client"; -import { ConfidentialLedgerClient } from "./generated/src/clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { ConfidentialLedgerClient } from "./generated/src/clientDefinitions"; import GeneratedConfidentialLedger from "./generated/src/confidentialLedger"; export default function ConfidentialLedger( diff --git a/sdk/confidentialledger/confidential-ledger-rest/test/public/colderEndpoints.spec.ts b/sdk/confidentialledger/confidential-ledger-rest/test/public/colderEndpoints.spec.ts index 8cf1486b2fe0..fee5b80b2f61 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/test/public/colderEndpoints.spec.ts +++ b/sdk/confidentialledger/confidential-ledger-rest/test/public/colderEndpoints.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ConfidentialLedgerClient, isUnexpected } from "../../src"; +import type { ConfidentialLedgerClient } from "../../src"; +import { isUnexpected } from "../../src"; import { createClient, createRecorder } from "./utils/recordedClient"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Colder endpoints", function () { let recorder: Recorder; diff --git a/sdk/confidentialledger/confidential-ledger-rest/test/public/getCollections.spec.ts b/sdk/confidentialledger/confidential-ledger-rest/test/public/getCollections.spec.ts index 905c552337a6..9f2f3ae2109d 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/test/public/getCollections.spec.ts +++ b/sdk/confidentialledger/confidential-ledger-rest/test/public/getCollections.spec.ts @@ -1,16 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - ConfidentialLedgerClient, - CreateLedgerEntryParameters, - isUnexpected, - LedgerEntry, -} from "../../src"; +import type { ConfidentialLedgerClient, CreateLedgerEntryParameters, LedgerEntry } from "../../src"; +import { isUnexpected } from "../../src"; import { createClient, createRecorder, getRecorderUniqueVariable } from "./utils/recordedClient"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Get Collections", function () { let recorder: Recorder; diff --git a/sdk/confidentialledger/confidential-ledger-rest/test/public/historicalRangeQuery.spec.ts b/sdk/confidentialledger/confidential-ledger-rest/test/public/historicalRangeQuery.spec.ts index b86710a48a99..8e0ad028f572 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/test/public/historicalRangeQuery.spec.ts +++ b/sdk/confidentialledger/confidential-ledger-rest/test/public/historicalRangeQuery.spec.ts @@ -1,18 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - ConfidentialLedgerClient, - CreateLedgerEntryParameters, - isUnexpected, - LedgerEntry, - paginate, -} from "../../src"; +import type { ConfidentialLedgerClient, CreateLedgerEntryParameters, LedgerEntry } from "../../src"; +import { isUnexpected, paginate } from "../../src"; import { createClient, createRecorder, getRecorderUniqueVariable } from "./utils/recordedClient"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Range query should be successful", function () { let recorder: Recorder; diff --git a/sdk/confidentialledger/confidential-ledger-rest/test/public/ledgerHistory.spec.ts b/sdk/confidentialledger/confidential-ledger-rest/test/public/ledgerHistory.spec.ts index e6c9f71eeb49..bed77d450e21 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/test/public/ledgerHistory.spec.ts +++ b/sdk/confidentialledger/confidential-ledger-rest/test/public/ledgerHistory.spec.ts @@ -1,10 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ConfidentialLedgerClient, isUnexpected } from "../../src"; +import type { ConfidentialLedgerClient } from "../../src"; +import { isUnexpected } from "../../src"; import { createClient, createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; -import { Recorder, isLiveMode } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isLiveMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; describe("Get ledger history", function () { diff --git a/sdk/confidentialledger/confidential-ledger-rest/test/public/listEnclaveQuotes.spec.ts b/sdk/confidentialledger/confidential-ledger-rest/test/public/listEnclaveQuotes.spec.ts index 8f255a4dfff7..cdc80740764b 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/test/public/listEnclaveQuotes.spec.ts +++ b/sdk/confidentialledger/confidential-ledger-rest/test/public/listEnclaveQuotes.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ConfidentialLedgerClient, isUnexpected } from "../../src"; +import type { ConfidentialLedgerClient } from "../../src"; +import { isUnexpected } from "../../src"; import { createClient, createRecorder } from "./utils/recordedClient"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("List Enclaves", function () { let recorder: Recorder; diff --git a/sdk/confidentialledger/confidential-ledger-rest/test/public/postTransaction.spec.ts b/sdk/confidentialledger/confidential-ledger-rest/test/public/postTransaction.spec.ts index 9c722f00774d..a77678473693 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/test/public/postTransaction.spec.ts +++ b/sdk/confidentialledger/confidential-ledger-rest/test/public/postTransaction.spec.ts @@ -1,15 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - ConfidentialLedgerClient, - CreateLedgerEntryParameters, - LedgerEntry, - isUnexpected, -} from "../../src"; +import type { ConfidentialLedgerClient, CreateLedgerEntryParameters, LedgerEntry } from "../../src"; +import { isUnexpected } from "../../src"; import { createClient, createRecorder, getRecorderUniqueVariable } from "./utils/recordedClient"; -import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; describe("Post transaction", function () { diff --git a/sdk/confidentialledger/confidential-ledger-rest/test/public/usersEndpoint.spec.ts b/sdk/confidentialledger/confidential-ledger-rest/test/public/usersEndpoint.spec.ts index 95a9307c8a64..1c536b782617 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/test/public/usersEndpoint.spec.ts +++ b/sdk/confidentialledger/confidential-ledger-rest/test/public/usersEndpoint.spec.ts @@ -1,10 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ConfidentialLedgerClient, isUnexpected } from "../../src"; -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { ConfidentialLedgerClient } from "../../src"; +import { isUnexpected } from "../../src"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { createClient, createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { assert } from "chai"; describe("Get user", function () { diff --git a/sdk/confidentialledger/confidential-ledger-rest/test/public/utils/recordedClient.ts b/sdk/confidentialledger/confidential-ledger-rest/test/public/utils/recordedClient.ts index 06adb5e1c390..001a226e9fe5 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/test/public/utils/recordedClient.ts +++ b/sdk/confidentialledger/confidential-ledger-rest/test/public/utils/recordedClient.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import ConfidentialLedger, { ConfidentialLedgerClient, getLedgerIdentity } from "../../../src"; +import type { ConfidentialLedgerClient } from "../../../src"; +import ConfidentialLedger, { getLedgerIdentity } from "../../../src"; import { Recorder, env, @@ -9,7 +10,7 @@ import { isPlaybackMode, } from "@azure-tools/test-recorder"; import { createTestCredential } from "@azure-tools/test-credential"; -import { Context } from "mocha"; +import type { Context } from "mocha"; const replaceableVariables: { [k: string]: string } = { LEDGER_URI: "https://test-ledger.confidential-ledger.azure.com", diff --git a/sdk/containerregistry/container-registry/review/container-registry.api.md b/sdk/containerregistry/container-registry/review/container-registry.api.md index e07b1d8d4188..824a0858375a 100644 --- a/sdk/containerregistry/container-registry/review/container-registry.api.md +++ b/sdk/containerregistry/container-registry/review/container-registry.api.md @@ -4,10 +4,10 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { TokenCredential } from '@azure/core-auth'; // @public export type ArtifactManifestOrder = "LastUpdatedOnDescending" | "LastUpdatedOnAscending"; diff --git a/sdk/containerregistry/container-registry/src/containerRegistryChallengeHandler.ts b/sdk/containerregistry/container-registry/src/containerRegistryChallengeHandler.ts index db435fe35dd3..025d58d077ff 100644 --- a/sdk/containerregistry/container-registry/src/containerRegistryChallengeHandler.ts +++ b/sdk/containerregistry/container-registry/src/containerRegistryChallengeHandler.ts @@ -1,18 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { GetTokenOptions } from "@azure/core-auth"; -import { +import type { GetTokenOptions } from "@azure/core-auth"; +import type { AuthorizeRequestOnChallengeOptions, ChallengeCallbacks, AuthorizeRequestOptions, } from "@azure/core-rest-pipeline"; import { parseWWWAuthenticate } from "./utils/wwwAuthenticateParser"; -import { +import type { ContainerRegistryGetTokenOptions, ContainerRegistryRefreshTokenCredential, } from "./containerRegistryTokenCredential"; -import { AccessTokenRefresher, createTokenCycler } from "./utils/tokenCycler"; +import type { AccessTokenRefresher } from "./utils/tokenCycler"; +import { createTokenCycler } from "./utils/tokenCycler"; const fiveMinutesInMs = 5 * 60 * 1000; diff --git a/sdk/containerregistry/container-registry/src/containerRegistryClient.ts b/sdk/containerregistry/container-registry/src/containerRegistryClient.ts index a237a111635d..bde436fe3496 100644 --- a/sdk/containerregistry/container-registry/src/containerRegistryClient.ts +++ b/sdk/containerregistry/container-registry/src/containerRegistryClient.ts @@ -3,27 +3,23 @@ /// -import { isTokenCredential, TokenCredential } from "@azure/core-auth"; -import { - InternalPipelineOptions, - bearerTokenAuthenticationPolicy, -} from "@azure/core-rest-pipeline"; -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; -import { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; import { logger } from "./logger"; import { GeneratedClient } from "./generated"; import { tracingClient } from "./tracing"; -import { RepositoryPageResponse } from "./models"; +import type { RepositoryPageResponse } from "./models"; import { extractNextLink } from "./utils/helpers"; import { ChallengeHandler } from "./containerRegistryChallengeHandler"; -import { - ContainerRepository, - ContainerRepositoryImpl, - DeleteRepositoryOptions, -} from "./containerRepository"; -import { RegistryArtifact } from "./registryArtifact"; +import type { ContainerRepository, DeleteRepositoryOptions } from "./containerRepository"; +import { ContainerRepositoryImpl } from "./containerRepository"; +import type { RegistryArtifact } from "./registryArtifact"; import { ContainerRegistryRefreshTokenCredential } from "./containerRegistryTokenCredential"; const LATEST_API_VERSION = "2021-07-01"; diff --git a/sdk/containerregistry/container-registry/src/containerRegistryTokenCredential.ts b/sdk/containerregistry/container-registry/src/containerRegistryTokenCredential.ts index c2295f485bfe..fd5dd15069d2 100644 --- a/sdk/containerregistry/container-registry/src/containerRegistryTokenCredential.ts +++ b/sdk/containerregistry/container-registry/src/containerRegistryTokenCredential.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import { GeneratedClient } from "./generated"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { GeneratedClient } from "./generated"; import { base64decode } from "./utils/base64"; export interface ContainerRegistryGetTokenOptions extends GetTokenOptions { diff --git a/sdk/containerregistry/container-registry/src/containerRepository.ts b/sdk/containerregistry/container-registry/src/containerRepository.ts index 61a8d08654ea..ebeb0a0ffbe7 100644 --- a/sdk/containerregistry/container-registry/src/containerRepository.ts +++ b/sdk/containerregistry/container-registry/src/containerRepository.ts @@ -3,18 +3,19 @@ /// -import { OperationOptions } from "@azure/core-client"; -import { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { OperationOptions } from "@azure/core-client"; +import type { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; -import { GeneratedClient, RepositoryWriteableProperties } from "./generated"; +import type { GeneratedClient, RepositoryWriteableProperties } from "./generated"; import { tracingClient } from "./tracing"; -import { +import type { ArtifactManifestOrder, ContainerRepositoryProperties, ArtifactManifestProperties, ManifestPageResponse, } from "./models"; -import { RegistryArtifact, RegistryArtifactImpl } from "./registryArtifact"; +import type { RegistryArtifact } from "./registryArtifact"; +import { RegistryArtifactImpl } from "./registryArtifact"; import { toArtifactManifestProperties, toServiceManifestOrderBy } from "./transformations"; import { extractNextLink } from "./utils/helpers"; diff --git a/sdk/containerregistry/container-registry/src/content/containerRegistryContentClient.ts b/sdk/containerregistry/container-registry/src/content/containerRegistryContentClient.ts index 5ad3fac97593..ad04f9e599bf 100644 --- a/sdk/containerregistry/container-registry/src/content/containerRegistryContentClient.ts +++ b/sdk/containerregistry/container-registry/src/content/containerRegistryContentClient.ts @@ -1,32 +1,29 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - InternalPipelineOptions, - bearerTokenAuthenticationPolicy, - RestError, -} from "@azure/core-rest-pipeline"; -import { TokenCredential } from "@azure/core-auth"; +import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import { bearerTokenAuthenticationPolicy, RestError } from "@azure/core-rest-pipeline"; +import type { TokenCredential } from "@azure/core-auth"; import { GeneratedClient } from "../generated"; import { ChallengeHandler } from "../containerRegistryChallengeHandler"; import { ContainerRegistryRefreshTokenCredential } from "../containerRegistryTokenCredential"; import { logger } from "../logger"; import { calculateDigest } from "../utils/digest"; -import { +import type { DeleteBlobOptions, DeleteManifestOptions, DownloadBlobOptions, DownloadBlobResult, GetManifestOptions, GetManifestResult, - KnownManifestMediaType, UploadBlobOptions, UploadBlobResult, SetManifestOptions, SetManifestResult, OciImageManifest, } from "./models"; -import { CommonClientOptions } from "@azure/core-client"; +import { KnownManifestMediaType } from "./models"; +import type { CommonClientOptions } from "@azure/core-client"; import { isDigest, readChunksFromStream, readStreamToEnd } from "../utils/helpers"; import { Readable } from "stream"; import { tracingClient } from "../tracing"; diff --git a/sdk/containerregistry/container-registry/src/content/models.ts b/sdk/containerregistry/container-registry/src/content/models.ts index 48c29dc80ab7..bb4ffc8b521d 100644 --- a/sdk/containerregistry/container-registry/src/content/models.ts +++ b/sdk/containerregistry/container-registry/src/content/models.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; /** * Options for configuring the upload manifest operation. diff --git a/sdk/containerregistry/container-registry/src/models.ts b/sdk/containerregistry/container-registry/src/models.ts index 721c4d5e938c..dab656f72422 100644 --- a/sdk/containerregistry/container-registry/src/models.ts +++ b/sdk/containerregistry/container-registry/src/models.ts @@ -3,7 +3,7 @@ export { ContainerRepositoryProperties, ArtifactTagProperties } from "./generated"; -import { ArtifactTagProperties } from "./generated"; +import type { ArtifactTagProperties } from "./generated"; /** * Defines known cloud audiences for Azure Container Registry. diff --git a/sdk/containerregistry/container-registry/src/registryArtifact.ts b/sdk/containerregistry/container-registry/src/registryArtifact.ts index c716117edd03..f69219ada860 100644 --- a/sdk/containerregistry/container-registry/src/registryArtifact.ts +++ b/sdk/containerregistry/container-registry/src/registryArtifact.ts @@ -3,17 +3,17 @@ /// -import { OperationOptions } from "@azure/core-client"; -import { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { OperationOptions } from "@azure/core-client"; +import type { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; -import { +import type { ArtifactTagProperties, ArtifactManifestProperties, ArtifactTagOrder, TagPageResponse, } from "./models"; import { tracingClient } from "./tracing"; -import { GeneratedClient } from "./generated"; +import type { GeneratedClient } from "./generated"; import { extractNextLink, isDigest } from "./utils/helpers"; import { toArtifactManifestProperties, toServiceTagOrderBy } from "./transformations"; diff --git a/sdk/containerregistry/container-registry/src/transformations.ts b/sdk/containerregistry/container-registry/src/transformations.ts index a27c54bdf2e0..48055d4b602c 100644 --- a/sdk/containerregistry/container-registry/src/transformations.ts +++ b/sdk/containerregistry/container-registry/src/transformations.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ArtifactTagOrderBy as ServiceTagOrderBy, ArtifactManifestOrderBy as ServiceManifestOrderBy, ManifestWriteableProperties as ServiceManifestWritableProperties, ArtifactManifestProperties as ServiceArtifactManifestProperties, } from "./generated/models"; -import { ArtifactManifestProperties, ArtifactTagOrder, ArtifactManifestOrder } from "./models"; +import type { ArtifactManifestProperties, ArtifactTagOrder, ArtifactManifestOrder } from "./models"; /** Changeable attributes. Filter out `quarantineState` and `quarantineDetails` returned by service */ interface ManifestWriteableProperties { diff --git a/sdk/containerregistry/container-registry/src/utils/retriableReadableStream.ts b/sdk/containerregistry/container-registry/src/utils/retriableReadableStream.ts index 4e0cbbcd84ba..7b566c55d260 100644 --- a/sdk/containerregistry/container-registry/src/utils/retriableReadableStream.ts +++ b/sdk/containerregistry/container-registry/src/utils/retriableReadableStream.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { AbortError } from "@azure/abort-controller"; -import { TransferProgressEvent } from "@azure/core-rest-pipeline"; +import type { TransferProgressEvent } from "@azure/core-rest-pipeline"; import { Readable } from "stream"; export type ReadableStreamGetter = (offset: number) => Promise; diff --git a/sdk/containerregistry/container-registry/src/utils/tokenCycler.ts b/sdk/containerregistry/container-registry/src/utils/tokenCycler.ts index 97b1692507de..5fef4215ba19 100644 --- a/sdk/containerregistry/container-registry/src/utils/tokenCycler.ts +++ b/sdk/containerregistry/container-registry/src/utils/tokenCycler.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; function delay(t: number, value?: T): Promise { return new Promise((resolve) => setTimeout(() => resolve(value), t)); diff --git a/sdk/containerregistry/container-registry/test/public/anonymousAccess.spec.ts b/sdk/containerregistry/container-registry/test/public/anonymousAccess.spec.ts index 18dfd4862583..e02989b4907d 100644 --- a/sdk/containerregistry/container-registry/test/public/anonymousAccess.spec.ts +++ b/sdk/containerregistry/container-registry/test/public/anonymousAccess.spec.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; -import { ContainerRegistryClient } from "../../src"; +import type { ContainerRegistryClient } from "../../src"; import { versionsToTest } from "@azure-tools/test-utils"; import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; diff --git a/sdk/containerregistry/container-registry/test/public/containerRegistryClient.spec.ts b/sdk/containerregistry/container-registry/test/public/containerRegistryClient.spec.ts index 66ff75571edc..1dbe6dcece44 100644 --- a/sdk/containerregistry/container-registry/test/public/containerRegistryClient.spec.ts +++ b/sdk/containerregistry/container-registry/test/public/containerRegistryClient.spec.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; -import { ContainerRegistryClient } from "../../src"; +import type { ContainerRegistryClient } from "../../src"; import { versionsToTest } from "@azure-tools/test-utils"; import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; diff --git a/sdk/containerregistry/container-registry/test/public/containerRegistryContentClient.spec.ts b/sdk/containerregistry/container-registry/test/public/containerRegistryContentClient.spec.ts index 2364921e2c0f..f2cb58704bd6 100644 --- a/sdk/containerregistry/container-registry/test/public/containerRegistryContentClient.spec.ts +++ b/sdk/containerregistry/container-registry/test/public/containerRegistryContentClient.spec.ts @@ -7,13 +7,10 @@ import { isPlaybackMode, isLiveMode, } from "@azure-tools/test-recorder"; -import { - ContainerRegistryContentClient, - KnownManifestMediaType, - OciImageManifest, -} from "../../src"; +import type { ContainerRegistryContentClient, OciImageManifest } from "../../src"; +import { KnownManifestMediaType } from "../../src"; import { assert, versionsToTest } from "@azure-tools/test-utils"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createBlobClient, recorderStartOptions, serviceVersions } from "../utils/utils"; import fs from "fs"; import { Readable } from "stream"; diff --git a/sdk/containerregistry/container-registry/test/public/repositoryAndArtifact.spec.ts b/sdk/containerregistry/container-registry/test/public/repositoryAndArtifact.spec.ts index 35f0bd9113b8..3195d5fdd481 100644 --- a/sdk/containerregistry/container-registry/test/public/repositoryAndArtifact.spec.ts +++ b/sdk/containerregistry/container-registry/test/public/repositoryAndArtifact.spec.ts @@ -2,11 +2,11 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; -import { ContainerRegistryClient, ContainerRepository } from "../../src"; +import type { Context } from "mocha"; +import type { ContainerRegistryClient, ContainerRepository } from "../../src"; import { versionsToTest } from "@azure-tools/test-utils"; import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; -import { RestError } from "@azure/core-rest-pipeline"; +import type { RestError } from "@azure/core-rest-pipeline"; import { createRegistryClient, recorderStartOptions, serviceVersions } from "../utils/utils"; versionsToTest(serviceVersions, {}, (serviceVersion, onVersions) => { diff --git a/sdk/containerregistry/container-registry/test/utils/utils.ts b/sdk/containerregistry/container-registry/test/utils/utils.ts index 4723acba7ec3..e01ea3d2630f 100644 --- a/sdk/containerregistry/container-registry/test/utils/utils.ts +++ b/sdk/containerregistry/container-registry/test/utils/utils.ts @@ -3,7 +3,8 @@ import { AzureAuthorityHosts } from "@azure/identity"; import { createTestCredential } from "@azure-tools/test-credential"; -import { Recorder, RecorderStartOptions, isLiveMode } from "@azure-tools/test-recorder"; +import type { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import { isLiveMode } from "@azure-tools/test-recorder"; import { ContainerRegistryContentClient, ContainerRegistryClient, diff --git a/sdk/containerservice/arm-containerservice-rest/review/arm-containerservice.api.md b/sdk/containerservice/arm-containerservice-rest/review/arm-containerservice.api.md index 167381957d2a..1fa167212751 100644 --- a/sdk/containerservice/arm-containerservice-rest/review/arm-containerservice.api.md +++ b/sdk/containerservice/arm-containerservice-rest/review/arm-containerservice.api.md @@ -4,18 +4,18 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { LroEngineOptions } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { LroEngineOptions } from '@azure/core-lro'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { PollerLike } from '@azure/core-lro'; +import type { PollOperationState } from '@azure/core-lro'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface AccessProfile { diff --git a/sdk/containerservice/arm-containerservice-rest/src/clientDefinitions.ts b/sdk/containerservice/arm-containerservice-rest/src/clientDefinitions.ts index b0db65c156d5..9d999c903da4 100644 --- a/sdk/containerservice/arm-containerservice-rest/src/clientDefinitions.ts +++ b/sdk/containerservice/arm-containerservice-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AgentPoolsCreateOrUpdateParameters, AgentPoolsDeleteParameters, AgentPoolsGetAvailableAgentPoolVersionsParameters, @@ -59,7 +59,7 @@ import { TrustedAccessRoleBindingsListParameters, TrustedAccessRolesListParameters, } from "./parameters"; -import { +import type { AgentPoolsCreateOrUpdate200Response, AgentPoolsCreateOrUpdate201Response, AgentPoolsCreateOrUpdatedefaultResponse, @@ -192,7 +192,7 @@ import { TrustedAccessRolesList200Response, TrustedAccessRolesListdefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface OperationsList { /** Gets a list of operations. */ diff --git a/sdk/containerservice/arm-containerservice-rest/src/containerServiceClient.ts b/sdk/containerservice/arm-containerservice-rest/src/containerServiceClient.ts index 94d9147f1d79..643ec663e486 100644 --- a/sdk/containerservice/arm-containerservice-rest/src/containerServiceClient.ts +++ b/sdk/containerservice/arm-containerservice-rest/src/containerServiceClient.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientOptions, getClient } from "@azure-rest/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { ContainerServiceClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { ContainerServiceClient } from "./clientDefinitions"; import { customizedApiVersionPolicy } from "./customizedApiVersionPolicy"; export default function createClient( diff --git a/sdk/containerservice/arm-containerservice-rest/src/customizedApiVersionPolicy.ts b/sdk/containerservice/arm-containerservice-rest/src/customizedApiVersionPolicy.ts index 4116218da0a5..590bbbf44241 100644 --- a/sdk/containerservice/arm-containerservice-rest/src/customizedApiVersionPolicy.ts +++ b/sdk/containerservice/arm-containerservice-rest/src/customizedApiVersionPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientOptions } from "@azure-rest/core-client"; -import { PipelinePolicy } from "@azure/core-rest-pipeline"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { PipelinePolicy } from "@azure/core-rest-pipeline"; export const apiVersionPolicyName = "CustomizedApiVersionPolicy"; diff --git a/sdk/containerservice/arm-containerservice-rest/src/isUnexpected.ts b/sdk/containerservice/arm-containerservice-rest/src/isUnexpected.ts index 0559cbb0e857..39ef02ca96b0 100644 --- a/sdk/containerservice/arm-containerservice-rest/src/isUnexpected.ts +++ b/sdk/containerservice/arm-containerservice-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AgentPoolsCreateOrUpdate200Response, AgentPoolsCreateOrUpdate201Response, AgentPoolsCreateOrUpdatedefaultResponse, diff --git a/sdk/containerservice/arm-containerservice-rest/src/paginateHelper.ts b/sdk/containerservice/arm-containerservice-rest/src/paginateHelper.ts index e03661e44e7a..5d541b4e406d 100644 --- a/sdk/containerservice/arm-containerservice-rest/src/paginateHelper.ts +++ b/sdk/containerservice/arm-containerservice-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PagedAsyncIterableIterator, PagedResult, getPagedAsyncIterator } from "@azure/core-paging"; -import { Client, PathUncheckedResponse, createRestError } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/containerservice/arm-containerservice-rest/src/parameters.ts b/sdk/containerservice/arm-containerservice-rest/src/parameters.ts index 1c5e0e7ffbc7..ba3498d29067 100644 --- a/sdk/containerservice/arm-containerservice-rest/src/parameters.ts +++ b/sdk/containerservice/arm-containerservice-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RequestParameters } from "@azure-rest/core-client"; +import type { AgentPool, MaintenanceConfiguration, ManagedCluster, diff --git a/sdk/containerservice/arm-containerservice-rest/src/pollingHelper.ts b/sdk/containerservice/arm-containerservice-rest/src/pollingHelper.ts index a8903590694f..d25daede0b1c 100644 --- a/sdk/containerservice/arm-containerservice-rest/src/pollingHelper.ts +++ b/sdk/containerservice/arm-containerservice-rest/src/pollingHelper.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { LongRunningOperation, - LroEngine, LroEngineOptions, LroResponse, PollOperationState, PollerLike, } from "@azure/core-lro"; +import { LroEngine } from "@azure/core-lro"; /** * Helper function that builds a Poller object to help polling a long running operation. diff --git a/sdk/containerservice/arm-containerservice-rest/src/responses.ts b/sdk/containerservice/arm-containerservice-rest/src/responses.ts index 9b18568000a0..07d29120561f 100644 --- a/sdk/containerservice/arm-containerservice-rest/src/responses.ts +++ b/sdk/containerservice/arm-containerservice-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse } from "@azure-rest/core-client"; +import type { AgentPoolAvailableVersionsOutput, AgentPoolListResultOutput, AgentPoolOutput, diff --git a/sdk/containerservice/arm-containerservice-rest/test/public/containerservice-test.spec.ts b/sdk/containerservice/arm-containerservice-rest/test/public/containerservice-test.spec.ts index be79f30f1bdf..8b03172d4e6b 100644 --- a/sdk/containerservice/arm-containerservice-rest/test/public/containerservice-test.spec.ts +++ b/sdk/containerservice/arm-containerservice-rest/test/public/containerservice-test.spec.ts @@ -1,18 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createTestCredential } from "@azure-tools/test-credential"; -import ContainerServiceManagementClient, { +import type { ContainerServiceClient, ManagedClusterOutput, ManagedClusterUpgradeProfileOutput, - getLongRunningPoller, - paginate, } from "../../src"; +import ContainerServiceManagementClient, { getLongRunningPoller, paginate } from "../../src"; export const testPollingOptions = { intervalInMs: isPlaybackMode() ? 0 : undefined, diff --git a/sdk/containerservice/arm-containerservice-rest/test/public/utils/recordedClient.ts b/sdk/containerservice/arm-containerservice-rest/test/public/utils/recordedClient.ts index 2fed754ad000..d7508a2c1842 100644 --- a/sdk/containerservice/arm-containerservice-rest/test/public/utils/recordedClient.ts +++ b/sdk/containerservice/arm-containerservice-rest/test/public/utils/recordedClient.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder } from "@azure-tools/test-recorder"; import "./env"; const envSetupForPlayback: Record = { diff --git a/sdk/contentsafety/ai-content-safety-rest/package.json b/sdk/contentsafety/ai-content-safety-rest/package.json index c6743012bfdf..2b7110d406fb 100644 --- a/sdk/contentsafety/ai-content-safety-rest/package.json +++ b/sdk/contentsafety/ai-content-safety-rest/package.json @@ -87,7 +87,7 @@ "karma-chrome-launcher": "catalog:legacy", "karma-coverage": "catalog:legacy", "karma-env-preprocessor": "catalog:legacy", - "karma-firefox-launcher": "^2.1.2", + "karma-firefox-launcher": "catalog:legacy", "karma-junit-reporter": "catalog:legacy", "karma-mocha": "catalog:legacy", "karma-mocha-reporter": "catalog:legacy", diff --git a/sdk/contentsafety/ai-content-safety-rest/review/ai-content-safety.api.md b/sdk/contentsafety/ai-content-safety-rest/review/ai-content-safety.api.md index 557b396ff4ed..32ddc49df2d7 100644 --- a/sdk/contentsafety/ai-content-safety-rest/review/ai-content-safety.api.md +++ b/sdk/contentsafety/ai-content-safety-rest/review/ai-content-safety.api.md @@ -4,18 +4,18 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { ErrorResponse } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { Paged } from '@azure/core-paging'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { ErrorResponse } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { Paged } from '@azure/core-paging'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface AddOrUpdateBlocklistItems { diff --git a/sdk/contentsafety/ai-content-safety-rest/src/clientDefinitions.ts b/sdk/contentsafety/ai-content-safety-rest/src/clientDefinitions.ts index 094ab8756891..89e32d0c316d 100644 --- a/sdk/contentsafety/ai-content-safety-rest/src/clientDefinitions.ts +++ b/sdk/contentsafety/ai-content-safety-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AnalyzeTextParameters, AnalyzeImageParameters, GetTextBlocklistParameters, @@ -13,7 +13,7 @@ import { GetTextBlocklistItemParameters, ListTextBlocklistItemsParameters, } from "./parameters"; -import { +import type { AnalyzeText200Response, AnalyzeTextDefaultResponse, AnalyzeImage200Response, @@ -36,7 +36,7 @@ import { ListTextBlocklistItems200Response, ListTextBlocklistItemsDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface AnalyzeText { /** A synchronous API for the analysis of potentially harmful text content. Currently, it supports four categories: Hate, SelfHarm, Sexual, and Violence. */ diff --git a/sdk/contentsafety/ai-content-safety-rest/src/contentSafetyClient.ts b/sdk/contentsafety/ai-content-safety-rest/src/contentSafetyClient.ts index 37718493f62c..11de9651d47e 100644 --- a/sdk/contentsafety/ai-content-safety-rest/src/contentSafetyClient.ts +++ b/sdk/contentsafety/ai-content-safety-rest/src/contentSafetyClient.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "./logger"; -import { TokenCredential, KeyCredential } from "@azure/core-auth"; -import { ContentSafetyClient } from "./clientDefinitions"; +import type { TokenCredential, KeyCredential } from "@azure/core-auth"; +import type { ContentSafetyClient } from "./clientDefinitions"; /** * Initialize a new instance of `ContentSafetyClient` diff --git a/sdk/contentsafety/ai-content-safety-rest/src/isUnexpected.ts b/sdk/contentsafety/ai-content-safety-rest/src/isUnexpected.ts index 308de1622937..860c320bc851 100644 --- a/sdk/contentsafety/ai-content-safety-rest/src/isUnexpected.ts +++ b/sdk/contentsafety/ai-content-safety-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AnalyzeText200Response, AnalyzeTextDefaultResponse, AnalyzeImage200Response, diff --git a/sdk/contentsafety/ai-content-safety-rest/src/outputModels.ts b/sdk/contentsafety/ai-content-safety-rest/src/outputModels.ts index 749397533dc2..5436bd44eff4 100644 --- a/sdk/contentsafety/ai-content-safety-rest/src/outputModels.ts +++ b/sdk/contentsafety/ai-content-safety-rest/src/outputModels.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Paged } from "@azure/core-paging"; +import type { Paged } from "@azure/core-paging"; /** The text analysis request. */ export interface AnalyzeTextOptionsOutput { diff --git a/sdk/contentsafety/ai-content-safety-rest/src/paginateHelper.ts b/sdk/contentsafety/ai-content-safety-rest/src/paginateHelper.ts index e27846d32a90..5d541b4e406d 100644 --- a/sdk/contentsafety/ai-content-safety-rest/src/paginateHelper.ts +++ b/sdk/contentsafety/ai-content-safety-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/contentsafety/ai-content-safety-rest/src/parameters.ts b/sdk/contentsafety/ai-content-safety-rest/src/parameters.ts index e0d47a12248e..b14ff16dd770 100644 --- a/sdk/contentsafety/ai-content-safety-rest/src/parameters.ts +++ b/sdk/contentsafety/ai-content-safety-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RequestParameters } from "@azure-rest/core-client"; +import type { AnalyzeTextOptions, AnalyzeImageOptions, TextBlocklist, diff --git a/sdk/contentsafety/ai-content-safety-rest/src/responses.ts b/sdk/contentsafety/ai-content-safety-rest/src/responses.ts index e940f71b5593..bbf9b343850d 100644 --- a/sdk/contentsafety/ai-content-safety-rest/src/responses.ts +++ b/sdk/contentsafety/ai-content-safety-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; +import type { AnalyzeTextResultOutput, AnalyzeImageResultOutput, TextBlocklistOutput, diff --git a/sdk/contentsafety/ai-content-safety-rest/test/public/contentSafety.spec.ts b/sdk/contentsafety/ai-content-safety-rest/test/public/contentSafety.spec.ts index 27137f09212d..11f2a29e819f 100644 --- a/sdk/contentsafety/ai-content-safety-rest/test/public/contentSafety.spec.ts +++ b/sdk/contentsafety/ai-content-safety-rest/test/public/contentSafety.spec.ts @@ -1,12 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder, createClient } from "./utils/recordedClient"; -import { Context } from "mocha"; -import { ContentSafetyClient, isUnexpected, paginate, TextBlocklistItemOutput } from "../../src"; -import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import type { Context } from "mocha"; +import type { ContentSafetyClient, TextBlocklistItemOutput } from "../../src"; +import { isUnexpected, paginate } from "../../src"; +import type { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; import fs from "fs"; import path from "path"; import { isBrowser } from "@azure/core-util"; diff --git a/sdk/contentsafety/ai-content-safety-rest/test/public/contentSafety_AADAuth.spec.ts b/sdk/contentsafety/ai-content-safety-rest/test/public/contentSafety_AADAuth.spec.ts index f899a7c62633..ae7a6c508438 100644 --- a/sdk/contentsafety/ai-content-safety-rest/test/public/contentSafety_AADAuth.spec.ts +++ b/sdk/contentsafety/ai-content-safety-rest/test/public/contentSafety_AADAuth.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createAADRecorder, createAADClient } from "./utils/recordedAADClient"; -import { Context } from "mocha"; -import { ContentSafetyClient, isUnexpected } from "../../src"; +import type { Context } from "mocha"; +import type { ContentSafetyClient } from "../../src"; +import { isUnexpected } from "../../src"; import fs from "fs"; import path from "path"; import { isBrowser } from "@azure/core-util"; diff --git a/sdk/contentsafety/ai-content-safety-rest/test/public/utils/recordedAADClient.ts b/sdk/contentsafety/ai-content-safety-rest/test/public/utils/recordedAADClient.ts index 610deb0260dd..63bf606dc5f2 100644 --- a/sdk/contentsafety/ai-content-safety-rest/test/public/utils/recordedAADClient.ts +++ b/sdk/contentsafety/ai-content-safety-rest/test/public/utils/recordedAADClient.ts @@ -1,14 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { - Recorder, - RecorderStartOptions, - assertEnvironmentVariable, -} from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; import "./env"; -import ContentSafety, { ContentSafetyClient } from "../../../src"; +import type { ContentSafetyClient } from "../../../src"; +import ContentSafety from "../../../src"; import { createTestCredential } from "@azure-tools/test-credential"; // import { AzureKeyCredential } from "@azure/core-auth"; // import { ClientOptions } from "@azure-rest/core-client"; diff --git a/sdk/contentsafety/ai-content-safety-rest/test/public/utils/recordedClient.ts b/sdk/contentsafety/ai-content-safety-rest/test/public/utils/recordedClient.ts index ec06abfa3e03..ba5fb0931250 100644 --- a/sdk/contentsafety/ai-content-safety-rest/test/public/utils/recordedClient.ts +++ b/sdk/contentsafety/ai-content-safety-rest/test/public/utils/recordedClient.ts @@ -1,14 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { - Recorder, - RecorderStartOptions, - assertEnvironmentVariable, -} from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; import "./env"; -import ContentSafety, { ContentSafetyClient } from "../../../src"; +import type { ContentSafetyClient } from "../../../src"; +import ContentSafety from "../../../src"; import { AzureKeyCredential } from "@azure/core-auth"; // import { ClientOptions } from "@azure-rest/core-client"; diff --git a/sdk/core/abort-controller/test/aborter.spec.ts b/sdk/core/abort-controller/test/aborter.spec.ts index d43b843e6690..7378f3c958e3 100644 --- a/sdk/core/abort-controller/test/aborter.spec.ts +++ b/sdk/core/abort-controller/test/aborter.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError, AbortSignalLike } from "../src/index.js"; +import type { AbortSignalLike } from "../src/index.js"; +import { AbortError } from "../src/index.js"; import { describe, it, assert } from "vitest"; describe("AbortSignalLike", () => { diff --git a/sdk/core/core-amqp/review/core-amqp.api.md b/sdk/core/core-amqp/review/core-amqp.api.md index 64b5562f1b92..c0f8f9413531 100644 --- a/sdk/core/core-amqp/review/core-amqp.api.md +++ b/sdk/core/core-amqp/review/core-amqp.api.md @@ -4,22 +4,22 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; -import { AccessToken } from '@azure/core-auth'; +import type { AbortSignalLike } from '@azure/abort-controller'; +import type { AccessToken } from '@azure/core-auth'; import { AzureLogger } from '@azure/logger'; import { Connection } from 'rhea-promise'; -import { Message } from 'rhea-promise'; -import { MessageHeader } from 'rhea-promise'; -import { MessageProperties } from 'rhea-promise'; -import { NamedKeyCredential } from '@azure/core-auth'; -import { Receiver } from 'rhea-promise'; -import { ReceiverOptions } from 'rhea-promise'; -import { ReqResLink } from 'rhea-promise'; -import { SASCredential } from '@azure/core-auth'; -import { Sender } from 'rhea-promise'; -import { SenderOptions } from 'rhea-promise'; -import { Session } from 'rhea-promise'; -import { WebSocketImpl } from 'rhea-promise'; +import type { Message } from 'rhea-promise'; +import type { MessageHeader } from 'rhea-promise'; +import type { MessageProperties } from 'rhea-promise'; +import type { NamedKeyCredential } from '@azure/core-auth'; +import type { Receiver } from 'rhea-promise'; +import type { ReceiverOptions } from 'rhea-promise'; +import type { ReqResLink } from 'rhea-promise'; +import type { SASCredential } from '@azure/core-auth'; +import type { Sender } from 'rhea-promise'; +import type { SenderOptions } from 'rhea-promise'; +import type { Session } from 'rhea-promise'; +import type { WebSocketImpl } from 'rhea-promise'; // @public export interface AcquireLockProperties { diff --git a/sdk/core/core-amqp/src/ConnectionContextBase.ts b/sdk/core/core-amqp/src/ConnectionContextBase.ts index a006d9eed8d4..64b1a22741ed 100644 --- a/sdk/core/core-amqp/src/ConnectionContextBase.ts +++ b/sdk/core/core-amqp/src/ConnectionContextBase.ts @@ -1,15 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { AwaitableSender, Receiver, Sender } from "rhea-promise"; import { - AwaitableSender, Connection, type ConnectionOptions, type CreateAwaitableSenderOptions, type CreateReceiverOptions, type CreateSenderOptions, - Receiver, - Sender, generate_uuid, } from "rhea-promise"; import { getFrameworkInfo, getPlatformInfo } from "./util/runtimeInfo.js"; diff --git a/sdk/core/core-amqp/src/amqpAnnotatedMessage.ts b/sdk/core/core-amqp/src/amqpAnnotatedMessage.ts index 62884da15f07..2297013e3ab3 100644 --- a/sdk/core/core-amqp/src/amqpAnnotatedMessage.ts +++ b/sdk/core/core-amqp/src/amqpAnnotatedMessage.ts @@ -3,7 +3,7 @@ /* eslint-disable eqeqeq */ import { AmqpMessageHeader } from "./messageHeader.js"; import { AmqpMessageProperties } from "./messageProperties.js"; -import { Message as RheaMessage } from "rhea-promise"; +import type { Message as RheaMessage } from "rhea-promise"; import { Constants } from "./util/constants.js"; /** diff --git a/sdk/core/core-amqp/src/auth/tokenProvider.ts b/sdk/core/core-amqp/src/auth/tokenProvider.ts index d9b6bd12f120..e9b324c38732 100644 --- a/sdk/core/core-amqp/src/auth/tokenProvider.ts +++ b/sdk/core/core-amqp/src/auth/tokenProvider.ts @@ -1,13 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - AccessToken, - NamedKeyCredential, - SASCredential, - isNamedKeyCredential, - isSASCredential, -} from "@azure/core-auth"; +import type { AccessToken, NamedKeyCredential, SASCredential } from "@azure/core-auth"; +import { isNamedKeyCredential, isSASCredential } from "@azure/core-auth"; import { signString } from "../util/hmacSha256.js"; /** diff --git a/sdk/core/core-amqp/src/cbs.ts b/sdk/core/core-amqp/src/cbs.ts index 1f60326291e9..ca58c6e9d141 100644 --- a/sdk/core/core-amqp/src/cbs.ts +++ b/sdk/core/core-amqp/src/cbs.ts @@ -1,22 +1,21 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; +import type { Connection, EventContext, - ReceiverEvents, ReceiverOptions, Message as RheaMessage, - SenderEvents, SenderOptions, - generate_uuid, } from "rhea-promise"; +import { ReceiverEvents, SenderEvents, generate_uuid } from "rhea-promise"; import { logErrorStackTrace, logger } from "./log.js"; import { Constants } from "./util/constants.js"; import { RequestResponseLink } from "./requestResponseLink.js"; import { StandardAbortMessage } from "./util/constants.js"; -import { TokenType } from "./auth/token.js"; +import type { TokenType } from "./auth/token.js"; import { defaultCancellableLock } from "./util/utils.js"; import { isError } from "@azure/core-util"; import { translate } from "./errors.js"; diff --git a/sdk/core/core-amqp/src/connectionConfig/connectionConfig.ts b/sdk/core/core-amqp/src/connectionConfig/connectionConfig.ts index c0d0baf29ddc..c375c76336ee 100644 --- a/sdk/core/core-amqp/src/connectionConfig/connectionConfig.ts +++ b/sdk/core/core-amqp/src/connectionConfig/connectionConfig.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { WebSocketImpl } from "rhea-promise"; +import type { WebSocketImpl } from "rhea-promise"; import { isDefined } from "@azure/core-util"; import { parseConnectionString } from "../util/utils.js"; diff --git a/sdk/core/core-amqp/src/errors.ts b/sdk/core/core-amqp/src/errors.ts index 3ea87bb889e2..1aae62f70805 100644 --- a/sdk/core/core-amqp/src/errors.ts +++ b/sdk/core/core-amqp/src/errors.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. /* eslint-disable eqeqeq */ -import { AmqpError, AmqpResponseStatusCode, isAmqpError as rheaIsAmqpError } from "rhea-promise"; +import type { AmqpError } from "rhea-promise"; +import { AmqpResponseStatusCode, isAmqpError as rheaIsAmqpError } from "rhea-promise"; import { isDefined, isError, isNodeLike, isObjectWithProperties } from "@azure/core-util"; import { isNumber, isString } from "./util/utils.js"; diff --git a/sdk/core/core-amqp/src/messageHeader.ts b/sdk/core/core-amqp/src/messageHeader.ts index 2a857169af89..084792dfc323 100644 --- a/sdk/core/core-amqp/src/messageHeader.ts +++ b/sdk/core/core-amqp/src/messageHeader.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. /* eslint-disable eqeqeq */ -import { MessageHeader as RheaMessageHeader } from "rhea-promise"; +import type { MessageHeader as RheaMessageHeader } from "rhea-promise"; import { logger } from "./log.js"; /** diff --git a/sdk/core/core-amqp/src/messageProperties.ts b/sdk/core/core-amqp/src/messageProperties.ts index 5bc5979d62d8..ce9f4749338d 100644 --- a/sdk/core/core-amqp/src/messageProperties.ts +++ b/sdk/core/core-amqp/src/messageProperties.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. /* eslint-disable eqeqeq */ -import { MessageProperties as RheaMessageProperties } from "rhea-promise"; +import type { MessageProperties as RheaMessageProperties } from "rhea-promise"; import { logger } from "./log.js"; /** diff --git a/sdk/core/core-amqp/src/requestResponseLink.ts b/sdk/core/core-amqp/src/requestResponseLink.ts index 78884c8b742b..58f9defaab88 100644 --- a/sdk/core/core-amqp/src/requestResponseLink.ts +++ b/sdk/core/core-amqp/src/requestResponseLink.ts @@ -1,22 +1,21 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; import { ConditionStatusMapper, translate } from "./errors.js"; -import { +import type { Connection, EventContext, Receiver, - ReceiverEvents, ReceiverOptions, ReqResLink, Message as RheaMessage, Sender, - SenderEvents, SenderOptions, Session, - generate_uuid, } from "rhea-promise"; +import { ReceiverEvents, SenderEvents, generate_uuid } from "rhea-promise"; import { Constants, StandardAbortMessage } from "./util/constants.js"; import { logErrorStackTrace, logger } from "./log.js"; import { isDefined } from "@azure/core-util"; diff --git a/sdk/core/core-amqp/src/retry.ts b/sdk/core/core-amqp/src/retry.ts index 430149f36471..a37b108b9138 100644 --- a/sdk/core/core-amqp/src/retry.ts +++ b/sdk/core/core-amqp/src/retry.ts @@ -2,8 +2,9 @@ // Licensed under the MIT License. /* eslint-disable eqeqeq */ -import { MessagingError, translate } from "./errors.js"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { MessagingError } from "./errors.js"; +import { translate } from "./errors.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { Constants } from "./util/constants.js"; import { checkNetworkConnection } from "./util/checkNetworkConnection.js"; import { delay } from "@azure/core-util"; diff --git a/sdk/core/core-amqp/src/util/lock.ts b/sdk/core/core-amqp/src/util/lock.ts index ab261ba1953c..dcefc634994e 100644 --- a/sdk/core/core-amqp/src/util/lock.ts +++ b/sdk/core/core-amqp/src/util/lock.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; import { OperationTimeoutError } from "rhea-promise"; import { StandardAbortMessage } from "./constants.js"; import { logger } from "../log.js"; diff --git a/sdk/core/core-amqp/src/util/typeGuards.ts b/sdk/core/core-amqp/src/util/typeGuards.ts index 484861b7545b..93da403ebd55 100644 --- a/sdk/core/core-amqp/src/util/typeGuards.ts +++ b/sdk/core/core-amqp/src/util/typeGuards.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { SasTokenProvider } from "../auth/tokenProvider.js"; +import type { SasTokenProvider } from "../auth/tokenProvider.js"; import { isObjectWithProperties } from "@azure/core-util"; /** diff --git a/sdk/core/core-amqp/src/util/utils.ts b/sdk/core/core-amqp/src/util/utils.ts index 602be2275d5b..aa79cf862179 100644 --- a/sdk/core/core-amqp/src/util/utils.ts +++ b/sdk/core/core-amqp/src/util/utils.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CancellableAsyncLock, CancellableAsyncLockImpl } from "./lock.js"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { WebSocketImpl } from "rhea-promise"; +import type { CancellableAsyncLock } from "./lock.js"; +import { CancellableAsyncLockImpl } from "./lock.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { WebSocketImpl } from "rhea-promise"; import { delay as wrapperDelay } from "@azure/core-util"; /** diff --git a/sdk/core/core-amqp/test/lock.spec.ts b/sdk/core/core-amqp/test/lock.spec.ts index ff0aa4b8db25..7266f7429391 100644 --- a/sdk/core/core-amqp/test/lock.spec.ts +++ b/sdk/core/core-amqp/test/lock.spec.ts @@ -3,7 +3,8 @@ import { describe, it, assert, beforeEach } from "vitest"; import { AbortError } from "@azure/abort-controller"; -import { CancellableAsyncLock, CancellableAsyncLockImpl } from "../src/util/lock.js"; +import type { CancellableAsyncLock } from "../src/util/lock.js"; +import { CancellableAsyncLockImpl } from "../src/util/lock.js"; import { OperationTimeoutError } from "rhea-promise"; import { delay } from "../src/index.js"; import { settleAllTasks } from "./utils/utils.js"; diff --git a/sdk/core/core-amqp/test/message.spec.ts b/sdk/core/core-amqp/test/message.spec.ts index 5a31c3789928..823fba93550d 100644 --- a/sdk/core/core-amqp/test/message.spec.ts +++ b/sdk/core/core-amqp/test/message.spec.ts @@ -8,7 +8,7 @@ import { AmqpMessageProperties, Constants, } from "../src/index.js"; -import { +import type { MessageHeader as RheaMessageHeader, MessageProperties as RheaMessageProperties, Message as RheaMessage, diff --git a/sdk/core/core-amqp/test/requestResponse.spec.ts b/sdk/core/core-amqp/test/requestResponse.spec.ts index 10e2885001b6..f7269406e3e3 100644 --- a/sdk/core/core-amqp/test/requestResponse.spec.ts +++ b/sdk/core/core-amqp/test/requestResponse.spec.ts @@ -2,22 +2,20 @@ // Licensed under the MIT License. import { describe, it, assert, expect, vi, beforeEach, afterEach } from "vitest"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { EventContext, Message as RheaMessage, generate_uuid } from "rhea-promise"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { EventContext, Message as RheaMessage } from "rhea-promise"; +import { generate_uuid } from "rhea-promise"; +import type { RetryConfig } from "../src/index.js"; import { Constants, ErrorNameConditionMapper, RequestResponseLink, - RetryConfig, RetryOperationType, StandardAbortMessage, retry, } from "../src/index.js"; -import { - DeferredPromiseWithCallback, - getCodeDescriptionAndError, - onMessageReceived, -} from "../src/requestResponseLink.js"; +import type { DeferredPromiseWithCallback } from "../src/requestResponseLink.js"; +import { getCodeDescriptionAndError, onMessageReceived } from "../src/requestResponseLink.js"; import EventEmitter from "events"; import { createConnectionStub } from "./utils/createConnectionStub.js"; import { isBrowser, isError } from "@azure/core-util"; diff --git a/sdk/core/core-amqp/test/retry.spec.ts b/sdk/core/core-amqp/test/retry.spec.ts index 585c40918980..7045fd30f061 100644 --- a/sdk/core/core-amqp/test/retry.spec.ts +++ b/sdk/core/core-amqp/test/retry.spec.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { describe, it, assert } from "vitest"; +import type { RetryConfig } from "../src/index.js"; import { Constants, MessagingError, - RetryConfig, RetryMode, RetryOperationType, delay, diff --git a/sdk/core/core-auth/review/core-auth.api.md b/sdk/core/core-auth/review/core-auth.api.md index a22c8dd529c4..3e75017a128b 100644 --- a/sdk/core/core-auth/review/core-auth.api.md +++ b/sdk/core/core-auth/review/core-auth.api.md @@ -4,7 +4,7 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; +import type { AbortSignalLike } from '@azure/abort-controller'; import { HttpMethods } from '@azure/core-util'; // @public diff --git a/sdk/core/core-auth/src/azureKeyCredential.ts b/sdk/core/core-auth/src/azureKeyCredential.ts index 6bdadc31fcfc..65676e7ed088 100644 --- a/sdk/core/core-auth/src/azureKeyCredential.ts +++ b/sdk/core/core-auth/src/azureKeyCredential.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyCredential } from "./keyCredential.js"; +import type { KeyCredential } from "./keyCredential.js"; /** * A static-key-based credential that supports updating diff --git a/sdk/core/core-auth/src/tokenCredential.ts b/sdk/core/core-auth/src/tokenCredential.ts index ff71b1454ed4..395b1126aba5 100644 --- a/sdk/core/core-auth/src/tokenCredential.ts +++ b/sdk/core/core-auth/src/tokenCredential.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { TracingContext } from "./tracing.js"; -import { HttpMethods } from "@azure/core-util"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { TracingContext } from "./tracing.js"; +import type { HttpMethods } from "@azure/core-util"; /** * Represents a credential capable of providing an authentication token. diff --git a/sdk/core/core-client-rest/review/core-client.api.md b/sdk/core/core-client-rest/review/core-client.api.md index ff4a18c9f71f..5ec71cafbd0e 100644 --- a/sdk/core/core-client-rest/review/core-client.api.md +++ b/sdk/core/core-client-rest/review/core-client.api.md @@ -4,22 +4,22 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; -import { HttpClient } from '@azure/core-rest-pipeline'; -import { KeyCredential } from '@azure/core-auth'; -import { LogPolicyOptions } from '@azure/core-rest-pipeline'; -import { OperationTracingOptions } from '@azure/core-tracing'; -import { Pipeline } from '@azure/core-rest-pipeline'; -import { PipelineOptions } from '@azure/core-rest-pipeline'; -import { PipelinePolicy } from '@azure/core-rest-pipeline'; -import { PipelineRequest } from '@azure/core-rest-pipeline'; -import { PipelineResponse } from '@azure/core-rest-pipeline'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; -import { RequestBodyType } from '@azure/core-rest-pipeline'; +import type { AbortSignalLike } from '@azure/abort-controller'; +import type { HttpClient } from '@azure/core-rest-pipeline'; +import type { KeyCredential } from '@azure/core-auth'; +import type { LogPolicyOptions } from '@azure/core-rest-pipeline'; +import type { OperationTracingOptions } from '@azure/core-tracing'; +import type { Pipeline } from '@azure/core-rest-pipeline'; +import type { PipelineOptions } from '@azure/core-rest-pipeline'; +import type { PipelinePolicy } from '@azure/core-rest-pipeline'; +import type { PipelineRequest } from '@azure/core-rest-pipeline'; +import type { PipelineResponse } from '@azure/core-rest-pipeline'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; +import type { RequestBodyType } from '@azure/core-rest-pipeline'; import { RestError } from '@azure/core-rest-pipeline'; -import { TokenCredential } from '@azure/core-auth'; -import { TransferProgressEvent } from '@azure/core-rest-pipeline'; +import type { TokenCredential } from '@azure/core-auth'; +import type { TransferProgressEvent } from '@azure/core-rest-pipeline'; // @public export function addCredentialPipelinePolicy(pipeline: Pipeline, endpoint: string, options?: AddCredentialPipelinePolicyOptions): void; diff --git a/sdk/core/core-client-rest/src/apiVersionPolicy.ts b/sdk/core/core-client-rest/src/apiVersionPolicy.ts index a4e1c2285bc3..56cb7b898cf8 100644 --- a/sdk/core/core-client-rest/src/apiVersionPolicy.ts +++ b/sdk/core/core-client-rest/src/apiVersionPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelinePolicy } from "@azure/core-rest-pipeline"; -import { ClientOptions } from "./common.js"; +import type { PipelinePolicy } from "@azure/core-rest-pipeline"; +import type { ClientOptions } from "./common.js"; export const apiVersionPolicyName = "ApiVersionPolicy"; diff --git a/sdk/core/core-client-rest/src/clientHelpers.ts b/sdk/core/core-client-rest/src/clientHelpers.ts index b7a7a6d6f026..30dac33d0c63 100644 --- a/sdk/core/core-client-rest/src/clientHelpers.ts +++ b/sdk/core/core-client-rest/src/clientHelpers.ts @@ -1,16 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { HttpClient, Pipeline } from "@azure/core-rest-pipeline"; import { - HttpClient, - Pipeline, bearerTokenAuthenticationPolicy, createDefaultHttpClient, createPipelineFromOptions, } from "@azure/core-rest-pipeline"; -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; -import { ClientOptions } from "./common.js"; +import type { ClientOptions } from "./common.js"; import { apiVersionPolicy } from "./apiVersionPolicy.js"; import { keyCredentialAuthenticationPolicy } from "./keyCredentialAuthenticationPolicy.js"; diff --git a/sdk/core/core-client-rest/src/common.ts b/sdk/core/core-client-rest/src/common.ts index 916c4d500fd9..4e49ddee180a 100644 --- a/sdk/core/core-client-rest/src/common.ts +++ b/sdk/core/core-client-rest/src/common.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { HttpClient, LogPolicyOptions, Pipeline, @@ -13,9 +13,9 @@ import { RequestBodyType, TransferProgressEvent, } from "@azure/core-rest-pipeline"; -import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { OperationTracingOptions } from "@azure/core-tracing"; +import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { OperationTracingOptions } from "@azure/core-tracing"; /** * Shape of the default request parameters, this may be overridden by the specific diff --git a/sdk/core/core-client-rest/src/getClient.ts b/sdk/core/core-client-rest/src/getClient.ts index 079c3acc2bfd..f6415d875f4e 100644 --- a/sdk/core/core-client-rest/src/getClient.ts +++ b/sdk/core/core-client-rest/src/getClient.ts @@ -1,15 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - KeyCredential, - TokenCredential, - isKeyCredential, - isTokenCredential, -} from "@azure/core-auth"; -import { HttpClient, HttpMethods, Pipeline, PipelineOptions } from "@azure/core-rest-pipeline"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isKeyCredential, isTokenCredential } from "@azure/core-auth"; +import type { HttpClient, HttpMethods, Pipeline, PipelineOptions } from "@azure/core-rest-pipeline"; import { createDefaultPipeline } from "./clientHelpers.js"; -import { +import type { Client, ClientOptions, HttpBrowserStreamResponse, diff --git a/sdk/core/core-client-rest/src/keyCredentialAuthenticationPolicy.ts b/sdk/core/core-client-rest/src/keyCredentialAuthenticationPolicy.ts index effa2d032ad5..06bc0916881e 100644 --- a/sdk/core/core-client-rest/src/keyCredentialAuthenticationPolicy.ts +++ b/sdk/core/core-client-rest/src/keyCredentialAuthenticationPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyCredential } from "@azure/core-auth"; -import { +import type { KeyCredential } from "@azure/core-auth"; +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/core/core-client-rest/src/multipart.ts b/sdk/core/core-client-rest/src/multipart.ts index b36fa7a9af05..e34a0656cefb 100644 --- a/sdk/core/core-client-rest/src/multipart.ts +++ b/sdk/core/core-client-rest/src/multipart.ts @@ -1,13 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { BodyPart, MultipartRequestBody, RawHttpHeadersInput, - RestError, - createHttpHeaders, } from "@azure/core-rest-pipeline"; +import { RestError, createHttpHeaders } from "@azure/core-rest-pipeline"; import { stringToUint8Array } from "@azure/core-util"; import { isBinaryBody } from "./helpers/isBinaryBody.js"; diff --git a/sdk/core/core-client-rest/src/operationOptionHelpers.ts b/sdk/core/core-client-rest/src/operationOptionHelpers.ts index 66d2024b8468..c7c1eb625ada 100644 --- a/sdk/core/core-client-rest/src/operationOptionHelpers.ts +++ b/sdk/core/core-client-rest/src/operationOptionHelpers.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions, RequestParameters } from "./common.js"; +import type { OperationOptions, RequestParameters } from "./common.js"; /** * Helper function to convert OperationOptions to RequestParameters diff --git a/sdk/core/core-client-rest/src/restError.ts b/sdk/core/core-client-rest/src/restError.ts index b85a5034059e..1ecc969be0cf 100644 --- a/sdk/core/core-client-rest/src/restError.ts +++ b/sdk/core/core-client-rest/src/restError.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelineResponse, RestError, createHttpHeaders } from "@azure/core-rest-pipeline"; -import { PathUncheckedResponse } from "./common.js"; +import type { PipelineResponse } from "@azure/core-rest-pipeline"; +import { RestError, createHttpHeaders } from "@azure/core-rest-pipeline"; +import type { PathUncheckedResponse } from "./common.js"; /** * Creates a rest error from a PathUnchecked response diff --git a/sdk/core/core-client-rest/src/sendRequest.ts b/sdk/core/core-client-rest/src/sendRequest.ts index 9a96a4ad98b1..9e947e685ba0 100644 --- a/sdk/core/core-client-rest/src/sendRequest.ts +++ b/sdk/core/core-client-rest/src/sendRequest.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { HttpClient, HttpMethods, MultipartRequestBody, @@ -9,6 +9,8 @@ import { PipelineRequest, PipelineResponse, RequestBodyType, +} from "@azure/core-rest-pipeline"; +import { RestError, createHttpHeaders, createPipelineRequest, @@ -16,8 +18,9 @@ import { } from "@azure/core-rest-pipeline"; import { getCachedDefaultHttpsClient } from "./clientHelpers.js"; import { isReadableStream } from "./helpers/isReadableStream.js"; -import { HttpResponse, RequestParameters } from "./common.js"; -import { PartDescriptor, buildMultipartBody } from "./multipart.js"; +import type { HttpResponse, RequestParameters } from "./common.js"; +import type { PartDescriptor } from "./multipart.js"; +import { buildMultipartBody } from "./multipart.js"; /** * Helper function to send request used by the client diff --git a/sdk/core/core-client-rest/src/urlHelpers.ts b/sdk/core/core-client-rest/src/urlHelpers.ts index e052e7eb02f3..69c6b4f744c9 100644 --- a/sdk/core/core-client-rest/src/urlHelpers.ts +++ b/sdk/core/core-client-rest/src/urlHelpers.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PathParameterWithOptions, RequestParameters } from "./common.js"; +import type { PathParameterWithOptions, RequestParameters } from "./common.js"; type QueryParameterStyle = "form" | "spaceDelimited" | "pipeDelimited"; diff --git a/sdk/core/core-client-rest/test/clientHelpers.spec.ts b/sdk/core/core-client-rest/test/clientHelpers.spec.ts index b3e6329676c6..0d09902777e8 100644 --- a/sdk/core/core-client-rest/test/clientHelpers.spec.ts +++ b/sdk/core/core-client-rest/test/clientHelpers.spec.ts @@ -5,7 +5,7 @@ import { describe, it, assert } from "vitest"; import { createDefaultPipeline } from "../src/clientHelpers.js"; import { bearerTokenAuthenticationPolicyName } from "@azure/core-rest-pipeline"; import { keyCredentialAuthenticationPolicyName } from "../src/keyCredentialAuthenticationPolicy.js"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { apiVersionPolicyName } from "../src/apiVersionPolicy.js"; describe("clientHelpers", () => { diff --git a/sdk/core/core-client-rest/test/createRestError.spec.ts b/sdk/core/core-client-rest/test/createRestError.spec.ts index 38dda57f934d..88f4b4a2e010 100644 --- a/sdk/core/core-client-rest/test/createRestError.spec.ts +++ b/sdk/core/core-client-rest/test/createRestError.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { createRestError } from "../src/restError.js"; -import { PipelineRequest } from "@azure/core-rest-pipeline"; +import type { PipelineRequest } from "@azure/core-rest-pipeline"; import { describe, it, assert } from "vitest"; describe("createRestError", () => { diff --git a/sdk/core/core-client-rest/test/getClient.spec.ts b/sdk/core/core-client-rest/test/getClient.spec.ts index 298cec9e20ac..4ae906064b1e 100644 --- a/sdk/core/core-client-rest/test/getClient.spec.ts +++ b/sdk/core/core-client-rest/test/getClient.spec.ts @@ -4,14 +4,14 @@ import { describe, it, assert, vi, afterEach } from "vitest"; import { getCachedDefaultHttpsClient } from "../src/clientHelpers.js"; import { getClient } from "../src/getClient.js"; -import { +import type { HttpClient, PipelinePolicy, PipelineRequest, PipelineResponse, SendRequest, - createHttpHeaders, } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; describe("getClient", () => { afterEach(() => { diff --git a/sdk/core/core-client-rest/test/multipart.spec.ts b/sdk/core/core-client-rest/test/multipart.spec.ts index 445d18dd647e..e7b45d0b2a68 100644 --- a/sdk/core/core-client-rest/test/multipart.spec.ts +++ b/sdk/core/core-client-rest/test/multipart.spec.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert } from "vitest"; -import { PartDescriptor, buildBodyPart } from "../src/multipart.js"; +import type { PartDescriptor } from "../src/multipart.js"; +import { buildBodyPart } from "../src/multipart.js"; import { stringToUint8Array } from "@azure/core-util"; describe("multipart buildBodyPart", () => { diff --git a/sdk/core/core-client-rest/test/node/streams.spec.ts b/sdk/core/core-client-rest/test/node/streams.spec.ts index 420b82287975..ab776ecd311a 100644 --- a/sdk/core/core-client-rest/test/node/streams.spec.ts +++ b/sdk/core/core-client-rest/test/node/streams.spec.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert, afterEach, vi } from "vitest"; -import { ClientRequest, type IncomingHttpHeaders, IncomingMessage } from "node:http"; +import type { ClientRequest, IncomingMessage } from "node:http"; +import { type IncomingHttpHeaders } from "node:http"; import { PassThrough } from "node:stream"; vi.mock("https", async () => { diff --git a/sdk/core/core-client-rest/test/sendRequest.spec.ts b/sdk/core/core-client-rest/test/sendRequest.spec.ts index af268ab7e9d8..e10be4bd7062 100644 --- a/sdk/core/core-client-rest/test/sendRequest.spec.ts +++ b/sdk/core/core-client-rest/test/sendRequest.spec.ts @@ -3,16 +3,10 @@ import { describe, it, assert } from "vitest"; import { sendRequest } from "../src/sendRequest.js"; -import { - MultipartRequestBody, - Pipeline, - PipelineResponse, - RestError, - createEmptyPipeline, - createHttpHeaders, -} from "@azure/core-rest-pipeline"; +import type { MultipartRequestBody, Pipeline, PipelineResponse } from "@azure/core-rest-pipeline"; +import { RestError, createEmptyPipeline, createHttpHeaders } from "@azure/core-rest-pipeline"; import { stringToUint8Array } from "@azure/core-util"; -import { PartDescriptor } from "../src/multipart.js"; +import type { PartDescriptor } from "../src/multipart.js"; describe("sendRequest", () => { const foo = new Uint8Array([0x66, 0x6f, 0x6f]); diff --git a/sdk/core/core-client/review/core-client.api.md b/sdk/core/core-client/review/core-client.api.md index c5ec9e5024c5..83030bf43688 100644 --- a/sdk/core/core-client/review/core-client.api.md +++ b/sdk/core/core-client/review/core-client.api.md @@ -4,19 +4,19 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; -import { AuthorizeRequestOnChallengeOptions } from '@azure/core-rest-pipeline'; -import { HttpClient } from '@azure/core-rest-pipeline'; -import { HttpMethods } from '@azure/core-rest-pipeline'; -import { InternalPipelineOptions } from '@azure/core-rest-pipeline'; -import { OperationTracingOptions } from '@azure/core-tracing'; -import { Pipeline } from '@azure/core-rest-pipeline'; -import { PipelineOptions } from '@azure/core-rest-pipeline'; -import { PipelinePolicy } from '@azure/core-rest-pipeline'; -import { PipelineRequest } from '@azure/core-rest-pipeline'; -import { PipelineResponse } from '@azure/core-rest-pipeline'; -import { TokenCredential } from '@azure/core-auth'; -import { TransferProgressEvent } from '@azure/core-rest-pipeline'; +import type { AbortSignalLike } from '@azure/abort-controller'; +import type { AuthorizeRequestOnChallengeOptions } from '@azure/core-rest-pipeline'; +import type { HttpClient } from '@azure/core-rest-pipeline'; +import type { HttpMethods } from '@azure/core-rest-pipeline'; +import type { InternalPipelineOptions } from '@azure/core-rest-pipeline'; +import type { OperationTracingOptions } from '@azure/core-tracing'; +import type { Pipeline } from '@azure/core-rest-pipeline'; +import type { PipelineOptions } from '@azure/core-rest-pipeline'; +import type { PipelinePolicy } from '@azure/core-rest-pipeline'; +import type { PipelineRequest } from '@azure/core-rest-pipeline'; +import type { PipelineResponse } from '@azure/core-rest-pipeline'; +import type { TokenCredential } from '@azure/core-auth'; +import type { TransferProgressEvent } from '@azure/core-rest-pipeline'; // @public export interface AdditionalPolicyConfig { diff --git a/sdk/core/core-client/src/authorizeRequestOnClaimChallenge.ts b/sdk/core/core-client/src/authorizeRequestOnClaimChallenge.ts index b9bccf581f5d..87d98482ebf1 100644 --- a/sdk/core/core-client/src/authorizeRequestOnClaimChallenge.ts +++ b/sdk/core/core-client/src/authorizeRequestOnClaimChallenge.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthorizeRequestOnChallengeOptions } from "@azure/core-rest-pipeline"; +import type { AuthorizeRequestOnChallengeOptions } from "@azure/core-rest-pipeline"; import { logger as coreClientLogger } from "./log.js"; import { decodeStringToString } from "./base64.js"; diff --git a/sdk/core/core-client/src/authorizeRequestOnTenantChallenge.ts b/sdk/core/core-client/src/authorizeRequestOnTenantChallenge.ts index c83cd0b0eb49..651bcf251fe1 100644 --- a/sdk/core/core-client/src/authorizeRequestOnTenantChallenge.ts +++ b/sdk/core/core-client/src/authorizeRequestOnTenantChallenge.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AuthorizeRequestOnChallengeOptions, PipelineRequest, PipelineResponse, } from "@azure/core-rest-pipeline"; -import { GetTokenOptions } from "@azure/core-auth"; +import type { GetTokenOptions } from "@azure/core-auth"; /** * A set of constants used internally when processing requests. diff --git a/sdk/core/core-client/src/deserializationPolicy.ts b/sdk/core/core-client/src/deserializationPolicy.ts index 28515d316ce4..d94fa6755559 100644 --- a/sdk/core/core-client/src/deserializationPolicy.ts +++ b/sdk/core/core-client/src/deserializationPolicy.ts @@ -1,23 +1,23 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { FullOperationResponse, OperationRequest, OperationResponseMap, OperationSpec, RequiredSerializerOptions, SerializerOptions, - XML_CHARKEY, XmlOptions, } from "./interfaces.js"; -import { +import { XML_CHARKEY } from "./interfaces.js"; +import type { PipelinePolicy, PipelineRequest, PipelineResponse, - RestError, SendRequest, } from "@azure/core-rest-pipeline"; +import { RestError } from "@azure/core-rest-pipeline"; import { MapperTypeNames } from "./serializer.js"; import { getOperationRequestInfo } from "./operationHelpers.js"; diff --git a/sdk/core/core-client/src/httpClientCache.ts b/sdk/core/core-client/src/httpClientCache.ts index ae05399ed2f2..377050d45682 100644 --- a/sdk/core/core-client/src/httpClientCache.ts +++ b/sdk/core/core-client/src/httpClientCache.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpClient, createDefaultHttpClient } from "@azure/core-rest-pipeline"; +import type { HttpClient } from "@azure/core-rest-pipeline"; +import { createDefaultHttpClient } from "@azure/core-rest-pipeline"; let cachedHttpClient: HttpClient | undefined; diff --git a/sdk/core/core-client/src/interfaceHelpers.ts b/sdk/core/core-client/src/interfaceHelpers.ts index 40dbe332ee48..bb4324129f8c 100644 --- a/sdk/core/core-client/src/interfaceHelpers.ts +++ b/sdk/core/core-client/src/interfaceHelpers.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationParameter, OperationSpec } from "./interfaces.js"; +import type { OperationParameter, OperationSpec } from "./interfaces.js"; import { MapperTypeNames } from "./serializer.js"; /** diff --git a/sdk/core/core-client/src/interfaces.ts b/sdk/core/core-client/src/interfaces.ts index eb6080ceef97..baa5a7659584 100644 --- a/sdk/core/core-client/src/interfaces.ts +++ b/sdk/core/core-client/src/interfaces.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { HttpClient, HttpMethods, PipelineOptions, @@ -10,8 +10,8 @@ import { PipelineResponse, TransferProgressEvent, } from "@azure/core-rest-pipeline"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { OperationTracingOptions } from "@azure/core-tracing"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { OperationTracingOptions } from "@azure/core-tracing"; /** * Default key used to access the XML attributes. diff --git a/sdk/core/core-client/src/operationHelpers.ts b/sdk/core/core-client/src/operationHelpers.ts index 01350f65e86f..96841be239d9 100644 --- a/sdk/core/core-client/src/operationHelpers.ts +++ b/sdk/core/core-client/src/operationHelpers.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CompositeMapper, Mapper, OperationArguments, diff --git a/sdk/core/core-client/src/pipeline.ts b/sdk/core/core-client/src/pipeline.ts index 9e0c2f2bd7f7..fd6cc603969e 100644 --- a/sdk/core/core-client/src/pipeline.ts +++ b/sdk/core/core-client/src/pipeline.ts @@ -1,15 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DeserializationPolicyOptions, deserializationPolicy } from "./deserializationPolicy.js"; +import type { DeserializationPolicyOptions } from "./deserializationPolicy.js"; +import { deserializationPolicy } from "./deserializationPolicy.js"; +import type { InternalPipelineOptions, Pipeline } from "@azure/core-rest-pipeline"; import { - InternalPipelineOptions, - Pipeline, bearerTokenAuthenticationPolicy, createPipelineFromOptions, } from "@azure/core-rest-pipeline"; -import { SerializationPolicyOptions, serializationPolicy } from "./serializationPolicy.js"; -import { TokenCredential } from "@azure/core-auth"; +import type { SerializationPolicyOptions } from "./serializationPolicy.js"; +import { serializationPolicy } from "./serializationPolicy.js"; +import type { TokenCredential } from "@azure/core-auth"; /** * Options for creating a Pipeline to use with ServiceClient. diff --git a/sdk/core/core-client/src/serializationPolicy.ts b/sdk/core/core-client/src/serializationPolicy.ts index 1ad6a3ae2f8b..ff1cd846b770 100644 --- a/sdk/core/core-client/src/serializationPolicy.ts +++ b/sdk/core/core-client/src/serializationPolicy.ts @@ -1,18 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { DictionaryMapper, OperationArguments, OperationRequest, OperationSpec, RequiredSerializerOptions, SerializerOptions, - XML_ATTRKEY, - XML_CHARKEY, XmlOptions, } from "./interfaces.js"; -import { PipelinePolicy, PipelineResponse, SendRequest } from "@azure/core-rest-pipeline"; +import { XML_ATTRKEY, XML_CHARKEY } from "./interfaces.js"; +import type { PipelinePolicy, PipelineResponse, SendRequest } from "@azure/core-rest-pipeline"; import { getOperationArgumentValueFromParameter, getOperationRequestInfo, diff --git a/sdk/core/core-client/src/serializer.ts b/sdk/core/core-client/src/serializer.ts index 9432ec380fd4..a6f49a4b1816 100644 --- a/sdk/core/core-client/src/serializer.ts +++ b/sdk/core/core-client/src/serializer.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import * as base64 from "./base64.js"; -import { +import type { BaseMapper, CompositeMapper, DictionaryMapper, @@ -14,9 +14,8 @@ import { SequenceMapper, Serializer, SerializerOptions, - XML_ATTRKEY, - XML_CHARKEY, } from "./interfaces.js"; +import { XML_ATTRKEY, XML_CHARKEY } from "./interfaces.js"; import { isDuration, isValidUuid } from "./utils.js"; class SerializerImpl implements Serializer { diff --git a/sdk/core/core-client/src/serviceClient.ts b/sdk/core/core-client/src/serviceClient.ts index c0bbf6bf989f..1182dc6f28c7 100644 --- a/sdk/core/core-client/src/serviceClient.ts +++ b/sdk/core/core-client/src/serviceClient.ts @@ -1,20 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CommonClientOptions, OperationArguments, OperationRequest, OperationSpec, } from "./interfaces.js"; -import { +import type { HttpClient, Pipeline, PipelineRequest, PipelineResponse, - createPipelineRequest, } from "@azure/core-rest-pipeline"; -import { TokenCredential } from "@azure/core-auth"; +import { createPipelineRequest } from "@azure/core-rest-pipeline"; +import type { TokenCredential } from "@azure/core-auth"; import { createClientPipeline } from "./pipeline.js"; import { flattenResponse } from "./utils.js"; import { getCachedDefaultHttpClient } from "./httpClientCache.js"; diff --git a/sdk/core/core-client/src/state-browser.mts b/sdk/core/core-client/src/state-browser.mts index edb8806c6658..a1473dd2959d 100644 --- a/sdk/core/core-client/src/state-browser.mts +++ b/sdk/core/core-client/src/state-browser.mts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationRequest, OperationRequestInfo } from "./interfaces.js"; +import type { OperationRequest, OperationRequestInfo } from "./interfaces.js"; /** * Browser-only implementation of the module's state. The browser esm variant will not load the commonjs state, so we do not need to share state between the two. diff --git a/sdk/core/core-client/src/state.ts b/sdk/core/core-client/src/state.ts index 53d6815a145e..7598664ffc2b 100644 --- a/sdk/core/core-client/src/state.ts +++ b/sdk/core/core-client/src/state.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationRequest, OperationRequestInfo } from "./interfaces.js"; +import type { OperationRequest, OperationRequestInfo } from "./interfaces.js"; // @ts-expect-error The recommended approach to sharing module state between ESM and CJS. // See https://github.com/isaacs/tshy/blob/main/README.md#module-local-state for additional information. diff --git a/sdk/core/core-client/src/urlHelpers.ts b/sdk/core/core-client/src/urlHelpers.ts index 3b40156244d3..e18dd699143f 100644 --- a/sdk/core/core-client/src/urlHelpers.ts +++ b/sdk/core/core-client/src/urlHelpers.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationArguments, OperationSpec, QueryCollectionFormat } from "./interfaces.js"; +import type { OperationArguments, OperationSpec, QueryCollectionFormat } from "./interfaces.js"; import { getOperationArgumentValueFromParameter } from "./operationHelpers.js"; import { getPathStringFromParameter } from "./interfaceHelpers.js"; diff --git a/sdk/core/core-client/src/utils.ts b/sdk/core/core-client/src/utils.ts index dcbb46e956a1..c87f48fe856e 100644 --- a/sdk/core/core-client/src/utils.ts +++ b/sdk/core/core-client/src/utils.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CompositeMapper, FullOperationResponse, OperationResponseMap } from "./interfaces.js"; +import type { CompositeMapper, FullOperationResponse, OperationResponseMap } from "./interfaces.js"; /** * The union of all possible types for a primitive response body. diff --git a/sdk/core/core-client/test/authorizeRequestOnClaimChallenge.spec.ts b/sdk/core/core-client/test/authorizeRequestOnClaimChallenge.spec.ts index 75e8d3f3bd61..65043da7d069 100644 --- a/sdk/core/core-client/test/authorizeRequestOnClaimChallenge.spec.ts +++ b/sdk/core/core-client/test/authorizeRequestOnClaimChallenge.spec.ts @@ -2,10 +2,9 @@ // Licensed under the MIT License. import { describe, it, assert } from "vitest"; -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { HttpClient, PipelineResponse } from "@azure/core-rest-pipeline"; import { - HttpClient, - PipelineResponse, bearerTokenAuthenticationPolicy, createEmptyPipeline, createHttpHeaders, diff --git a/sdk/core/core-client/test/authorizeRequestOnTenantChallenge.spec.ts b/sdk/core/core-client/test/authorizeRequestOnTenantChallenge.spec.ts index 12f6bea6c7e1..faa4e20bce5f 100644 --- a/sdk/core/core-client/test/authorizeRequestOnTenantChallenge.spec.ts +++ b/sdk/core/core-client/test/authorizeRequestOnTenantChallenge.spec.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { describe, it, assert, expect, vi, beforeEach, type Mock } from "vitest"; -import { AccessToken, GetTokenOptions } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions } from "@azure/core-auth"; +import type { PipelineResponse } from "@azure/core-rest-pipeline"; import { - PipelineResponse, bearerTokenAuthenticationPolicy, createHttpHeaders, createPipelineRequest, diff --git a/sdk/core/core-client/test/browser/serializer.spec.ts b/sdk/core/core-client/test/browser/serializer.spec.ts index 1e33791b5df1..73d47ed405a1 100644 --- a/sdk/core/core-client/test/browser/serializer.spec.ts +++ b/sdk/core/core-client/test/browser/serializer.spec.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert } from "vitest"; -import { Mapper, createSerializer } from "../../src/index.js"; +import type { Mapper } from "../../src/index.js"; +import { createSerializer } from "../../src/index.js"; describe("Serializer (browser specific)", function () { describe("serialize", function () { diff --git a/sdk/core/core-client/test/deserializationPolicy.spec.ts b/sdk/core/core-client/test/deserializationPolicy.spec.ts index 56a43c46a1f4..c27881f34f15 100644 --- a/sdk/core/core-client/test/deserializationPolicy.spec.ts +++ b/sdk/core/core-client/test/deserializationPolicy.spec.ts @@ -2,22 +2,16 @@ // Licensed under the MIT License. import { describe, it, assert, vi } from "vitest"; -import { +import type { CompositeMapper, FullOperationResponse, OperationRequest, OperationSpec, SerializerOptions, - createSerializer, - deserializationPolicy, } from "../src/index.js"; -import { - PipelineResponse, - RawHttpHeaders, - SendRequest, - createHttpHeaders, - createPipelineRequest, -} from "@azure/core-rest-pipeline"; +import { createSerializer, deserializationPolicy } from "../src/index.js"; +import type { PipelineResponse, RawHttpHeaders, SendRequest } from "@azure/core-rest-pipeline"; +import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; import { getOperationRequestInfo } from "../src/operationHelpers.js"; import { parseXML } from "@azure/core-xml"; diff --git a/sdk/core/core-client/test/serializer.spec.ts b/sdk/core/core-client/test/serializer.spec.ts index 5fbd97ccddf5..534cf0092b75 100644 --- a/sdk/core/core-client/test/serializer.spec.ts +++ b/sdk/core/core-client/test/serializer.spec.ts @@ -3,14 +3,14 @@ import { describe, it, assert } from "vitest"; import * as MediaMappers from "./testMappers2.js"; -import { +import type { CompositeMapper, DictionaryMapper, EnumMapper, Mapper, SequenceMapper, - createSerializer, } from "../src/index.js"; +import { createSerializer } from "../src/index.js"; import { Mappers } from "./testMappers1.js"; const Serializer = createSerializer(Mappers); diff --git a/sdk/core/core-client/test/serviceClient.spec.ts b/sdk/core/core-client/test/serviceClient.spec.ts index 4de131b4cee4..60269bfc36f1 100644 --- a/sdk/core/core-client/test/serviceClient.spec.ts +++ b/sdk/core/core-client/test/serviceClient.spec.ts @@ -2,29 +2,33 @@ // Licensed under the MIT License. import { describe, it, assert } from "vitest"; -import { +import type { CompositeMapper, DictionaryMapper, FullOperationResponse, Mapper, - MapperTypeNames, OperationArguments, OperationQueryParameter, OperationRequest, OperationSpec, ParameterPath, QueryCollectionFormat, +} from "../src/index.js"; +import { + MapperTypeNames, ServiceClient, createSerializer, serializationPolicy, } from "../src/index.js"; -import { +import type { HttpClient, PipelinePolicy, PipelineRequest, PipelineResponse, RestError, SendRequest, +} from "@azure/core-rest-pipeline"; +import { createEmptyPipeline, createHttpHeaders, createPipelineRequest, @@ -33,7 +37,7 @@ import { getOperationArgumentValueFromParameter, getOperationRequestInfo, } from "../src/operationHelpers.js"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { assertServiceClientResponse } from "./utils/serviceClient.js"; import { deserializationPolicy } from "../src/deserializationPolicy.js"; import { getCachedDefaultHttpClient } from "../src/httpClientCache.js"; diff --git a/sdk/core/core-client/test/testMappers1.ts b/sdk/core/core-client/test/testMappers1.ts index 493d39b5b583..1ae779b8fe24 100644 --- a/sdk/core/core-client/test/testMappers1.ts +++ b/sdk/core/core-client/test/testMappers1.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CompositeMapper } from "../src/interfaces.js"; +import type { CompositeMapper } from "../src/interfaces.js"; const QueueDescription: CompositeMapper = { serializedName: "QueueDescription", diff --git a/sdk/core/core-client/test/testMappers2.ts b/sdk/core/core-client/test/testMappers2.ts index ec1f56e497b3..e6778cd0328d 100644 --- a/sdk/core/core-client/test/testMappers2.ts +++ b/sdk/core/core-client/test/testMappers2.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CompositeMapper } from "../src/interfaces.js"; +import type { CompositeMapper } from "../src/interfaces.js"; export const JobOutput: CompositeMapper = { type: { diff --git a/sdk/core/core-client/test/urlHelpers.spec.ts b/sdk/core/core-client/test/urlHelpers.spec.ts index 19dd55796a86..71fd03e12cc2 100644 --- a/sdk/core/core-client/test/urlHelpers.spec.ts +++ b/sdk/core/core-client/test/urlHelpers.spec.ts @@ -2,12 +2,12 @@ // Licensed under the MIT License. import { describe, it, assert } from "vitest"; -import { +import type { OperationQueryParameter, OperationSpec, OperationURLParameter, - createSerializer, } from "../src/index.js"; +import { createSerializer } from "../src/index.js"; import { appendQueryParams, getRequestUrl } from "../src/urlHelpers.js"; describe("getRequestUrl", function () { diff --git a/sdk/core/core-client/test/utils/serviceClient.ts b/sdk/core/core-client/test/utils/serviceClient.ts index 76bdc720f2b2..d1b77c7ae817 100644 --- a/sdk/core/core-client/test/utils/serviceClient.ts +++ b/sdk/core/core-client/test/utils/serviceClient.ts @@ -2,22 +2,15 @@ // Licensed under the MIT License. import { assert } from "vitest"; -import { +import type { FullOperationResponse, OperationRequest, OperationResponseMap, Serializer, - ServiceClient, - createSerializer, - deserializationPolicy, } from "../../src/index.js"; -import { - HttpClient, - HttpHeaders, - HttpMethods, - createEmptyPipeline, - createHttpHeaders, -} from "@azure/core-rest-pipeline"; +import { ServiceClient, createSerializer, deserializationPolicy } from "../../src/index.js"; +import type { HttpClient, HttpHeaders, HttpMethods } from "@azure/core-rest-pipeline"; +import { createEmptyPipeline, createHttpHeaders } from "@azure/core-rest-pipeline"; /** * Representation of a Service Client test case where the response status is 200. diff --git a/sdk/core/core-http-compat/review/core-http-compat.api.md b/sdk/core/core-http-compat/review/core-http-compat.api.md index bfa92dbe9af5..d7e2511dad3e 100644 --- a/sdk/core/core-http-compat/review/core-http-compat.api.md +++ b/sdk/core/core-http-compat/review/core-http-compat.api.md @@ -4,18 +4,18 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; -import { CommonClientOptions } from '@azure/core-client'; -import { FullOperationResponse } from '@azure/core-client'; -import { HttpClient } from '@azure/core-rest-pipeline'; -import { HttpHeaders } from '@azure/core-rest-pipeline'; -import { HttpMethods } from '@azure/core-rest-pipeline'; -import { OperationArguments } from '@azure/core-client'; -import { OperationSpec } from '@azure/core-client'; -import { PipelinePolicy } from '@azure/core-rest-pipeline'; -import { ProxySettings } from '@azure/core-rest-pipeline'; +import type { AbortSignalLike } from '@azure/abort-controller'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { FullOperationResponse } from '@azure/core-client'; +import type { HttpClient } from '@azure/core-rest-pipeline'; +import type { HttpHeaders } from '@azure/core-rest-pipeline'; +import type { HttpMethods } from '@azure/core-rest-pipeline'; +import type { OperationArguments } from '@azure/core-client'; +import type { OperationSpec } from '@azure/core-client'; +import type { PipelinePolicy } from '@azure/core-rest-pipeline'; +import type { ProxySettings } from '@azure/core-rest-pipeline'; import { ServiceClient } from '@azure/core-client'; -import { ServiceClientOptions } from '@azure/core-client'; +import type { ServiceClientOptions } from '@azure/core-client'; // @public export interface CompatResponse extends Omit { diff --git a/sdk/core/core-http-compat/src/extendedClient.ts b/sdk/core/core-http-compat/src/extendedClient.ts index 36155dfbe37e..eacb37831911 100644 --- a/sdk/core/core-http-compat/src/extendedClient.ts +++ b/sdk/core/core-http-compat/src/extendedClient.ts @@ -1,22 +1,22 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeepAliveOptions } from "./policies/keepAliveOptions.js"; +import type { KeepAliveOptions } from "./policies/keepAliveOptions.js"; import { createDisableKeepAlivePolicy, pipelineContainsDisableKeepAlivePolicy, } from "./policies/disableKeepAlivePolicy.js"; -import { RedirectOptions } from "./policies/redirectOptions.js"; +import type { RedirectOptions } from "./policies/redirectOptions.js"; import { redirectPolicyName } from "@azure/core-rest-pipeline"; -import { +import type { CommonClientOptions, FullOperationResponse, OperationArguments, OperationSpec, RawResponseCallback, - ServiceClient, ServiceClientOptions, } from "@azure/core-client"; +import { ServiceClient } from "@azure/core-client"; import { toCompatResponse } from "./response.js"; /** diff --git a/sdk/core/core-http-compat/src/httpClientAdapter.ts b/sdk/core/core-http-compat/src/httpClientAdapter.ts index 539731298916..9e82ab5da2d8 100644 --- a/sdk/core/core-http-compat/src/httpClientAdapter.ts +++ b/sdk/core/core-http-compat/src/httpClientAdapter.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; -import { RequestPolicy } from "./policies/requestPolicyFactoryPolicy.js"; +import type { HttpClient, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import type { RequestPolicy } from "./policies/requestPolicyFactoryPolicy.js"; import { toPipelineResponse } from "./response.js"; import { toWebResourceLike } from "./util.js"; diff --git a/sdk/core/core-http-compat/src/policies/disableKeepAlivePolicy.ts b/sdk/core/core-http-compat/src/policies/disableKeepAlivePolicy.ts index fe5a98317dfb..1b8ed23181b9 100644 --- a/sdk/core/core-http-compat/src/policies/disableKeepAlivePolicy.ts +++ b/sdk/core/core-http-compat/src/policies/disableKeepAlivePolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { Pipeline, PipelinePolicy, PipelineRequest, diff --git a/sdk/core/core-http-compat/src/policies/requestPolicyFactoryPolicy.ts b/sdk/core/core-http-compat/src/policies/requestPolicyFactoryPolicy.ts index 67975fa6c754..890b8f7527a2 100644 --- a/sdk/core/core-http-compat/src/policies/requestPolicyFactoryPolicy.ts +++ b/sdk/core/core-http-compat/src/policies/requestPolicyFactoryPolicy.ts @@ -1,14 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, SendRequest, } from "@azure/core-rest-pipeline"; -import { WebResourceLike, toPipelineRequest, toWebResourceLike } from "../util.js"; -import { CompatResponse, toCompatResponse, toPipelineResponse } from "../response.js"; +import type { WebResourceLike } from "../util.js"; +import { toPipelineRequest, toWebResourceLike } from "../util.js"; +import type { CompatResponse } from "../response.js"; +import { toCompatResponse, toPipelineResponse } from "../response.js"; /** * A compatible interface for core-http request policies diff --git a/sdk/core/core-http-compat/src/response.ts b/sdk/core/core-http-compat/src/response.ts index 92b31792b891..8521f07c39d8 100644 --- a/sdk/core/core-http-compat/src/response.ts +++ b/sdk/core/core-http-compat/src/response.ts @@ -1,15 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { FullOperationResponse } from "@azure/core-client"; -import { PipelineResponse, createHttpHeaders } from "@azure/core-rest-pipeline"; -import { - HttpHeadersLike, - WebResourceLike, - toHttpHeadersLike, - toPipelineRequest, - toWebResourceLike, -} from "./util.js"; +import type { FullOperationResponse } from "@azure/core-client"; +import type { PipelineResponse } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpHeadersLike, WebResourceLike } from "./util.js"; +import { toHttpHeadersLike, toPipelineRequest, toWebResourceLike } from "./util.js"; /** * Http Response that is compatible with the core-v1(core-http). */ diff --git a/sdk/core/core-http-compat/src/util.ts b/sdk/core/core-http-compat/src/util.ts index 044507dc97bf..23bbbea80286 100644 --- a/sdk/core/core-http-compat/src/util.ts +++ b/sdk/core/core-http-compat/src/util.ts @@ -1,14 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - HttpMethods, - ProxySettings, - createHttpHeaders, - createPipelineRequest, -} from "@azure/core-rest-pipeline"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { HttpHeaders as HttpHeadersV2, PipelineRequest } from "@azure/core-rest-pipeline"; +import type { HttpMethods, ProxySettings } from "@azure/core-rest-pipeline"; +import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { HttpHeaders as HttpHeadersV2, PipelineRequest } from "@azure/core-rest-pipeline"; // We use a custom symbol to cache a reference to the original request without // exposing it on the public interface. diff --git a/sdk/core/core-http-compat/test/cloneRequestPolicy.ts b/sdk/core/core-http-compat/test/cloneRequestPolicy.ts index 92cf6ebec86a..8cb570a16cc6 100644 --- a/sdk/core/core-http-compat/test/cloneRequestPolicy.ts +++ b/sdk/core/core-http-compat/test/cloneRequestPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CompatResponse, RequestPolicy, RequestPolicyFactory, diff --git a/sdk/core/core-http-compat/test/extendedClient.spec.ts b/sdk/core/core-http-compat/test/extendedClient.spec.ts index 977c3367bb99..15099c3e615e 100644 --- a/sdk/core/core-http-compat/test/extendedClient.spec.ts +++ b/sdk/core/core-http-compat/test/extendedClient.spec.ts @@ -2,15 +2,15 @@ // Licensed under the MIT License. import { describe, it, assert } from "vitest"; -import { PipelinePolicy, createEmptyPipeline, createHttpHeaders } from "@azure/core-rest-pipeline"; -import { +import type { PipelinePolicy } from "@azure/core-rest-pipeline"; +import { createEmptyPipeline, createHttpHeaders } from "@azure/core-rest-pipeline"; +import type { DictionaryMapper, OperationArguments, OperationRequest, OperationSpec, - createSerializer, - serializationPolicy, } from "@azure/core-client"; +import { createSerializer, serializationPolicy } from "@azure/core-client"; import { ExtendedServiceClient, disableKeepAlivePolicyName } from "../src/index.js"; import { pipelineContainsDisableKeepAlivePolicy, diff --git a/sdk/core/core-http-compat/test/mutatePolicies.ts b/sdk/core/core-http-compat/test/mutatePolicies.ts index fbe920c76313..127320cac003 100644 --- a/sdk/core/core-http-compat/test/mutatePolicies.ts +++ b/sdk/core/core-http-compat/test/mutatePolicies.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CompatResponse, RequestPolicy, RequestPolicyFactory, diff --git a/sdk/core/core-http-compat/test/requestPolicyFactoryPolicy.spec.ts b/sdk/core/core-http-compat/test/requestPolicyFactoryPolicy.spec.ts index 3e8a1cd8cfcc..00863736645d 100644 --- a/sdk/core/core-http-compat/test/requestPolicyFactoryPolicy.spec.ts +++ b/sdk/core/core-http-compat/test/requestPolicyFactoryPolicy.spec.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert } from "vitest"; +import type { HttpClient } from "@azure/core-rest-pipeline"; import { - HttpClient, createEmptyPipeline, createHttpHeaders, createPipelineRequest, diff --git a/sdk/core/core-lro/review/core-lro.api.md b/sdk/core/core-lro/review/core-lro.api.md index cc818122d438..389deac09548 100644 --- a/sdk/core/core-lro/review/core-lro.api.md +++ b/sdk/core/core-lro/review/core-lro.api.md @@ -4,7 +4,7 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; +import type { AbortSignalLike } from '@azure/abort-controller'; // @public export type CancelOnProgress = () => void; diff --git a/sdk/core/core-lro/src/http/models.ts b/sdk/core/core-lro/src/http/models.ts index 840b944c9dbe..f8b32552ce6d 100644 --- a/sdk/core/core-lro/src/http/models.ts +++ b/sdk/core/core-lro/src/http/models.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { LroError } from "../poller/models.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { LroError } from "../poller/models.js"; /** * The potential location of the result of the LRO if specified by the LRO extension in the swagger. diff --git a/sdk/core/core-lro/src/http/operation.ts b/sdk/core/core-lro/src/http/operation.ts index f9e3e5366b15..b3ce3cca999a 100644 --- a/sdk/core/core-lro/src/http/operation.ts +++ b/sdk/core/core-lro/src/http/operation.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { HttpOperationMode, RunningOperation, ResourceLocationConfig, @@ -9,7 +9,7 @@ import { RawResponse, ResponseBody, } from "./models.js"; -import { +import type { LroError, OperationConfig, OperationState, @@ -17,7 +17,7 @@ import { RestorableOperationState, } from "../poller/models.js"; import { pollOperation } from "../poller/operation.js"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { logger } from "../logger.js"; function getOperationLocationPollingUrl(inputs: { diff --git a/sdk/core/core-lro/src/http/poller.ts b/sdk/core/core-lro/src/http/poller.ts index 77c114f8f721..60ffe04ed374 100644 --- a/sdk/core/core-lro/src/http/poller.ts +++ b/sdk/core/core-lro/src/http/poller.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RunningOperation, OperationResponse } from "./models.js"; -import { OperationState, PollerLike } from "../poller/models.js"; +import type { RunningOperation, OperationResponse } from "./models.js"; +import type { OperationState, PollerLike } from "../poller/models.js"; import { getErrorFromResponse, getOperationLocation, @@ -13,7 +13,7 @@ import { isOperationError, parseRetryAfter, } from "./operation.js"; -import { CreateHttpPollerOptions } from "./models.js"; +import type { CreateHttpPollerOptions } from "./models.js"; import { buildCreatePoller } from "../poller/poller.js"; /** diff --git a/sdk/core/core-lro/src/poller/models.ts b/sdk/core/core-lro/src/poller/models.ts index 10cb7fc165ea..13c2d2084482 100644 --- a/sdk/core/core-lro/src/poller/models.ts +++ b/sdk/core/core-lro/src/poller/models.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; /** * Configurations for how to poll the operation and to check whether it has diff --git a/sdk/core/core-lro/src/poller/operation.ts b/sdk/core/core-lro/src/poller/operation.ts index 2840a42b7899..a54bf6cdbd19 100644 --- a/sdk/core/core-lro/src/poller/operation.ts +++ b/sdk/core/core-lro/src/poller/operation.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { LroError, InnerError, Operation, diff --git a/sdk/core/core-lro/src/poller/poller.ts b/sdk/core/core-lro/src/poller/poller.ts index cb3346cfefbf..58e5c64c6d23 100644 --- a/sdk/core/core-lro/src/poller/poller.ts +++ b/sdk/core/core-lro/src/poller/poller.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { BuildCreatePollerOptions, CreatePollerOptions, Operation, diff --git a/sdk/core/core-lro/test/lro.spec.ts b/sdk/core/core-lro/test/lro.spec.ts index 6ce22f126c4f..c638c31da8eb 100644 --- a/sdk/core/core-lro/test/lro.spec.ts +++ b/sdk/core/core-lro/test/lro.spec.ts @@ -1,13 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - ImplementationName, - assertDivergentBehavior, - assertError, - createDoubleHeaders, - Result, -} from "./utils/utils.js"; +import type { ImplementationName, Result } from "./utils/utils.js"; +import { assertDivergentBehavior, assertError, createDoubleHeaders } from "./utils/utils.js"; import { describe, it, assert, expect } from "vitest"; import { createRunLroWith, createTestPoller } from "./utils/router.js"; import { delay } from "@azure/core-util"; diff --git a/sdk/core/core-lro/test/utils/coreRestPipelineLro.ts b/sdk/core/core-lro/test/utils/coreRestPipelineLro.ts index 02925bc99f6f..3172cfb01377 100644 --- a/sdk/core/core-lro/test/utils/coreRestPipelineLro.ts +++ b/sdk/core/core-lro/test/utils/coreRestPipelineLro.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RunningOperation, OperationResponse } from "../../src/index.js"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { PipelineRequest } from "@azure/core-rest-pipeline"; +import type { RunningOperation, OperationResponse } from "../../src/index.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { PipelineRequest } from "@azure/core-rest-pipeline"; type SendOperationFn = (request: PipelineRequest) => Promise>; diff --git a/sdk/core/core-lro/test/utils/router.ts b/sdk/core/core-lro/test/utils/router.ts index 4eaef9cf38cf..b3e7cf970822 100644 --- a/sdk/core/core-lro/test/utils/router.ts +++ b/sdk/core/core-lro/test/utils/router.ts @@ -1,25 +1,24 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { HttpClient, HttpMethods, PipelineRequest, PipelineResponse, - RestError, - createHttpHeaders, } from "@azure/core-rest-pipeline"; -import { +import { RestError, createHttpHeaders } from "@azure/core-rest-pipeline"; +import type { ImplementationName, LroResponseSpec, Result, RouteProcessor, State, - createProcessor, - generate, } from "./utils.js"; -import { PollerLike, createHttpPoller } from "../../src/index.js"; -import { +import { createProcessor, generate } from "./utils.js"; +import type { PollerLike } from "../../src/index.js"; +import { createHttpPoller } from "../../src/index.js"; +import type { OperationResponse, RawResponse, ResourceLocationConfig, diff --git a/sdk/core/core-lro/test/utils/utils.ts b/sdk/core/core-lro/test/utils/utils.ts index 66c75db9d2a7..a9e7175ae9e5 100644 --- a/sdk/core/core-lro/test/utils/utils.ts +++ b/sdk/core/core-lro/test/utils/utils.ts @@ -1,14 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - HttpMethods, - PipelineRequest, - PipelineResponse, - createHttpHeaders, - isRestError, -} from "@azure/core-rest-pipeline"; -import { ResponseBody } from "../../src/http/models.js"; +import type { HttpMethods, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import { createHttpHeaders, isRestError } from "@azure/core-rest-pipeline"; +import type { ResponseBody } from "../../src/http/models.js"; import { assert } from "vitest"; export interface RouteProcessor { diff --git a/sdk/core/core-paging/src/getPagedAsyncIterator.ts b/sdk/core/core-paging/src/getPagedAsyncIterator.ts index dae8f22ffc92..c7877a5fb26f 100644 --- a/sdk/core/core-paging/src/getPagedAsyncIterator.ts +++ b/sdk/core/core-paging/src/getPagedAsyncIterator.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PageSettings, PagedAsyncIterableIterator, PagedResult } from "./models.js"; +import type { PageSettings, PagedAsyncIterableIterator, PagedResult } from "./models.js"; /** * returns an async iterator that iterates over results. It also has a `byPage` diff --git a/sdk/core/core-sse/src/sse.ts b/sdk/core/core-sse/src/sse.ts index 853864886f79..1fd8047823fa 100644 --- a/sdk/core/core-sse/src/sse.ts +++ b/sdk/core/core-sse/src/sse.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import type { IncomingMessage } from "node:http"; -import { EventMessage, EventMessageStream, PartialSome } from "./models.js"; +import type { EventMessage, EventMessageStream, PartialSome } from "./models.js"; import { createStream, ensureAsyncIterable } from "./utils.js"; enum ControlChars { diff --git a/sdk/core/core-tracing/src/instrumenter.ts b/sdk/core/core-tracing/src/instrumenter.ts index e3b792143529..28f5729dc540 100644 --- a/sdk/core/core-tracing/src/instrumenter.ts +++ b/sdk/core/core-tracing/src/instrumenter.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { Instrumenter, InstrumenterSpanOptions, TracingContext, diff --git a/sdk/core/core-tracing/src/state-browser.mts b/sdk/core/core-tracing/src/state-browser.mts index c67a2bc80451..6e5627125e50 100644 --- a/sdk/core/core-tracing/src/state-browser.mts +++ b/sdk/core/core-tracing/src/state-browser.mts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Instrumenter } from "./interfaces.js"; +import type { Instrumenter } from "./interfaces.js"; /** * Browser-only implementation of the module's state. The browser esm variant will not load the commonjs state, so we do not need to share state between the two. diff --git a/sdk/core/core-tracing/src/state.ts b/sdk/core/core-tracing/src/state.ts index ae1efaf60154..c7e7a4a64209 100644 --- a/sdk/core/core-tracing/src/state.ts +++ b/sdk/core/core-tracing/src/state.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Instrumenter } from "./interfaces.js"; +import type { Instrumenter } from "./interfaces.js"; // @ts-expect-error The recommended approach to sharing module state between ESM and CJS. // See https://github.com/isaacs/tshy/blob/main/README.md#module-local-state for additional information. import { state as cjsState } from "../commonjs/state.js"; diff --git a/sdk/core/core-tracing/src/tracingClient.ts b/sdk/core/core-tracing/src/tracingClient.ts index a961e7e0ce1f..3e9603dbd6f7 100644 --- a/sdk/core/core-tracing/src/tracingClient.ts +++ b/sdk/core/core-tracing/src/tracingClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { OperationTracingOptions, OptionsWithTracingContext, Resolved, diff --git a/sdk/core/core-tracing/src/tracingContext.ts b/sdk/core/core-tracing/src/tracingContext.ts index 1688905b00ce..84999abbac24 100644 --- a/sdk/core/core-tracing/src/tracingContext.ts +++ b/sdk/core/core-tracing/src/tracingContext.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TracingContext, TracingSpan } from "./interfaces.js"; +import type { TracingContext, TracingSpan } from "./interfaces.js"; /** @internal */ export const knownContextKeys = { diff --git a/sdk/core/core-tracing/test/instrumenter.spec.ts b/sdk/core/core-tracing/test/instrumenter.spec.ts index a5ec58392f30..09f8f99e26fd 100644 --- a/sdk/core/core-tracing/test/instrumenter.spec.ts +++ b/sdk/core/core-tracing/test/instrumenter.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Instrumenter, TracingSpan } from "../src/interfaces.js"; +import type { Instrumenter, TracingSpan } from "../src/interfaces.js"; import { createDefaultInstrumenter, createDefaultTracingSpan, diff --git a/sdk/core/core-tracing/test/interfaces.spec.ts b/sdk/core/core-tracing/test/interfaces.spec.ts index 65bab61de1de..acc57ebe8137 100644 --- a/sdk/core/core-tracing/test/interfaces.spec.ts +++ b/sdk/core/core-tracing/test/interfaces.spec.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as coreAuth from "@azure/core-auth"; -import * as coreTracing from "../src/index.js"; +import type * as coreAuth from "@azure/core-auth"; +import type * as coreTracing from "../src/index.js"; import { describe, it, assert } from "vitest"; import { createTracingContext } from "../src/tracingContext.js"; diff --git a/sdk/core/core-tracing/test/tracingClient.spec.ts b/sdk/core/core-tracing/test/tracingClient.spec.ts index af27293178da..9d52d3b28a72 100644 --- a/sdk/core/core-tracing/test/tracingClient.spec.ts +++ b/sdk/core/core-tracing/test/tracingClient.spec.ts @@ -1,7 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Instrumenter, TracingClient, TracingContext, TracingSpan } from "../src/interfaces.js"; +import type { + Instrumenter, + TracingClient, + TracingContext, + TracingSpan, +} from "../src/interfaces.js"; import { createDefaultInstrumenter, createDefaultTracingSpan, diff --git a/sdk/core/core-xml/src/xml-browser.mts b/sdk/core/core-xml/src/xml-browser.mts index 8a95958e51e1..090a1ba382b4 100644 --- a/sdk/core/core-xml/src/xml-browser.mts +++ b/sdk/core/core-xml/src/xml-browser.mts @@ -2,7 +2,8 @@ // Licensed under the MIT License. /// -import { XML_ATTRKEY, XML_CHARKEY, XmlOptions } from "./xml.common.js"; +import type { XmlOptions } from "./xml.common.js"; +import { XML_ATTRKEY, XML_CHARKEY } from "./xml.common.js"; if (!document || !DOMParser || !Node || !XMLSerializer) { throw new Error( diff --git a/sdk/core/logger/test/debug.spec.ts b/sdk/core/logger/test/debug.spec.ts index def63777e43f..926618ef1bd9 100644 --- a/sdk/core/logger/test/debug.spec.ts +++ b/sdk/core/logger/test/debug.spec.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import debug, { Debugger } from "../src/debug.js"; -import { describe, it, assert, expect, beforeEach, afterEach, vi, MockInstance } from "vitest"; +import type { Debugger } from "../src/debug.js"; +import debug from "../src/debug.js"; +import type { MockInstance } from "vitest"; +import { describe, it, assert, expect, beforeEach, afterEach, vi } from "vitest"; describe("debug", function () { let logger: Debugger; diff --git a/sdk/core/ts-http-runtime/review/azure-core-comparison.diff b/sdk/core/ts-http-runtime/review/azure-core-comparison.diff index 4d2758a9d4a3..23331a211cd6 100644 --- a/sdk/core/ts-http-runtime/review/azure-core-comparison.diff +++ b/sdk/core/ts-http-runtime/review/azure-core-comparison.diff @@ -27,7 +27,7 @@ index 7f2adc4..0000000 -export { AbortError } from "./AbortError.js"; -export { AbortSignalLike } from "./AbortSignalLike.js"; diff --git a/src/accessTokenCache.ts b/src/accessTokenCache.ts -index f8d603b..cca6d34 100644 +index f8d603b..22e61bb 100644 --- a/src/accessTokenCache.ts +++ b/src/accessTokenCache.ts @@ -1,7 +1,7 @@ @@ -35,20 +35,20 @@ index f8d603b..cca6d34 100644 // Licensed under the MIT License. -import type { AccessToken } from "@azure/core-auth"; -+import { AccessToken } from "./auth/tokenCredential.js"; ++import type { AccessToken } from "./auth/tokenCredential.js"; /** * Defines the default token refresh buffer duration. diff --git a/src/auth/azureKeyCredential.ts b/src/auth/azureKeyCredential.ts deleted file mode 100644 -index 6bdadc3..0000000 +index 65676e7..0000000 --- a/src/auth/azureKeyCredential.ts +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - --import { KeyCredential } from "./keyCredential.js"; +-import type { KeyCredential } from "./keyCredential.js"; - -/** - * A static-key-based credential that supports updating @@ -300,18 +300,18 @@ index 9db25cf..df8291c 100644 /** * Represents a credential defined by a static API key. diff --git a/src/auth/tokenCredential.ts b/src/auth/tokenCredential.ts -index ff71b14..a8903bb 100644 +index 395b112..6a42777 100644 --- a/src/auth/tokenCredential.ts +++ b/src/auth/tokenCredential.ts @@ -1,9 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. --import { AbortSignalLike } from "@azure/abort-controller"; --import { TracingContext } from "./tracing.js"; --import { HttpMethods } from "@azure/core-util"; -+import { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; -+import { TracingContext } from "../tracing/interfaces.js"; +-import type { AbortSignalLike } from "@azure/abort-controller"; +-import type { TracingContext } from "./tracing.js"; +-import type { HttpMethods } from "@azure/core-util"; ++import type { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; ++import type { TracingContext } from "../tracing/interfaces.js"; /** * Represents a credential capable of providing an authentication token. @@ -411,46 +411,48 @@ index 8e846bb..0000000 - deleteValue(key: symbol): TracingContext; -} diff --git a/src/client/apiVersionPolicy.ts b/src/client/apiVersionPolicy.ts -index a4e1c22..aedf8e2 100644 +index 56cb7b8..da27584 100644 --- a/src/client/apiVersionPolicy.ts +++ b/src/client/apiVersionPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. --import { PipelinePolicy } from "@azure/core-rest-pipeline"; -+import { PipelinePolicy } from "../pipeline.js"; - import { ClientOptions } from "./common.js"; +-import type { PipelinePolicy } from "@azure/core-rest-pipeline"; ++import type { PipelinePolicy } from "../pipeline.js"; + import type { ClientOptions } from "./common.js"; export const apiVersionPolicyName = "ApiVersionPolicy"; diff --git a/src/client/clientHelpers.ts b/src/client/clientHelpers.ts -index b7a7a6d..56553a5 100644 +index 30dac33..66ea99c 100644 --- a/src/client/clientHelpers.ts +++ b/src/client/clientHelpers.ts -@@ -1,15 +1,13 @@ +@@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +-import type { HttpClient, Pipeline } from "@azure/core-rest-pipeline"; -import { -- HttpClient, -- Pipeline, - bearerTokenAuthenticationPolicy, - createDefaultHttpClient, - createPipelineFromOptions, -} from "@azure/core-rest-pipeline"; --import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; +-import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +-import { isTokenCredential } from "@azure/core-auth"; - -+import { HttpClient } from "../interfaces.js"; -+import { Pipeline } from "../pipeline.js"; ++import type { HttpClient } from "../interfaces.js"; ++import type { Pipeline } from "../pipeline.js"; +import { bearerTokenAuthenticationPolicy } from "../policies/bearerTokenAuthenticationPolicy.js"; +import { createDefaultHttpClient } from "../defaultHttpClient.js"; +import { createPipelineFromOptions } from "../createPipelineFromOptions.js"; -+import { TokenCredential, isTokenCredential } from "../auth/tokenCredential.js"; -+import { KeyCredential, isKeyCredential } from "../auth/keyCredential.js"; - import { ClientOptions } from "./common.js"; ++import type { TokenCredential } from "../auth/tokenCredential.js"; ++import { isTokenCredential } from "../auth/tokenCredential.js"; ++import type { KeyCredential } from "../auth/keyCredential.js"; ++import { isKeyCredential } from "../auth/keyCredential.js"; + import type { ClientOptions } from "./common.js"; import { apiVersionPolicy } from "./apiVersionPolicy.js"; import { keyCredentialAuthenticationPolicy } from "./keyCredentialAuthenticationPolicy.js"; -@@ -77,10 +75,6 @@ export function createDefaultPipeline( +@@ -77,10 +77,6 @@ export function createDefaultPipeline( return pipeline; } @@ -462,12 +464,12 @@ index b7a7a6d..56553a5 100644 if (!cachedHttpClient) { cachedHttpClient = createDefaultHttpClient(); diff --git a/src/client/common.ts b/src/client/common.ts -index 916c4d5..a5f6d91 100644 +index 4e49dde..f43f7c1 100644 --- a/src/client/common.ts +++ b/src/client/common.ts @@ -3,19 +3,18 @@ - import { + import type { HttpClient, - LogPolicyOptions, - Pipeline, @@ -479,16 +481,16 @@ index 916c4d5..a5f6d91 100644 RequestBodyType, TransferProgressEvent, -} from "@azure/core-rest-pipeline"; --import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; --import { AbortSignalLike } from "@azure/abort-controller"; --import { OperationTracingOptions } from "@azure/core-tracing"; +-import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +-import type { AbortSignalLike } from "@azure/abort-controller"; +-import type { OperationTracingOptions } from "@azure/core-tracing"; + RawHttpHeadersInput, +} from "../interfaces.js"; -+import { Pipeline, PipelinePolicy } from "../pipeline.js"; -+import { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; -+import { OperationTracingOptions } from "../tracing/interfaces.js"; -+import { PipelineOptions } from "../createPipelineFromOptions.js"; -+import { LogPolicyOptions } from "../policies/logPolicy.js"; ++import type { Pipeline, PipelinePolicy } from "../pipeline.js"; ++import type { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; ++import type { OperationTracingOptions } from "../tracing/interfaces.js"; ++import type { PipelineOptions } from "../createPipelineFromOptions.js"; ++import type { LogPolicyOptions } from "../policies/logPolicy.js"; /** * Shape of the default request parameters, this may be overridden by the specific @@ -546,28 +548,26 @@ index eabe718..0000000 - -/// diff --git a/src/client/getClient.ts b/src/client/getClient.ts -index 079c3ac..4029937 100644 +index f6415d8..2e4f603 100644 --- a/src/client/getClient.ts +++ b/src/client/getClient.ts -@@ -1,13 +1,10 @@ +@@ -1,9 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. --import { -- KeyCredential, -- TokenCredential, -- isKeyCredential, -- isTokenCredential, --} from "@azure/core-auth"; --import { HttpClient, HttpMethods, Pipeline, PipelineOptions } from "@azure/core-rest-pipeline"; -+import { TokenCredential, isTokenCredential } from "../auth/tokenCredential.js"; -+import { KeyCredential, isKeyCredential } from "../auth/keyCredential.js"; -+import { HttpClient, HttpMethods } from "../interfaces.js"; -+import { Pipeline } from "../pipeline.js"; +-import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +-import { isKeyCredential, isTokenCredential } from "@azure/core-auth"; +-import type { HttpClient, HttpMethods, Pipeline, PipelineOptions } from "@azure/core-rest-pipeline"; ++import type { TokenCredential } from "../auth/tokenCredential.js"; ++import { isTokenCredential } from "../auth/tokenCredential.js"; ++import type { KeyCredential } from "../auth/keyCredential.js"; ++import { isKeyCredential } from "../auth/keyCredential.js"; ++import type { HttpClient, HttpMethods } from "../interfaces.js"; ++import type { Pipeline } from "../pipeline.js"; import { createDefaultPipeline } from "./clientHelpers.js"; - import { + import type { Client, -@@ -15,10 +12,12 @@ import { +@@ -11,10 +14,12 @@ import type { HttpBrowserStreamResponse, HttpNodeStreamResponse, RequestParameters, @@ -576,11 +576,11 @@ index 079c3ac..4029937 100644 } from "./common.js"; import { sendRequest } from "./sendRequest.js"; import { buildRequestUrl } from "./urlHelpers.js"; -+import { PipelineOptions } from "../createPipelineFromOptions.js"; ++import type { PipelineOptions } from "../createPipelineFromOptions.js"; /** * Creates a client with a default pipeline -@@ -65,8 +64,8 @@ export function getClient( +@@ -61,8 +66,8 @@ export function getClient( const { allowInsecureConnection, httpClient } = clientOptions; const endpointUrl = clientOptions.endpoint ?? endpoint; @@ -678,44 +678,43 @@ index 1cd7d94..0000000 -export * from "./getClient.js"; -export * from "./common.js"; diff --git a/src/client/keyCredentialAuthenticationPolicy.ts b/src/client/keyCredentialAuthenticationPolicy.ts -index effa2d0..ea5783e 100644 +index 06bc091..90e6659 100644 --- a/src/client/keyCredentialAuthenticationPolicy.ts +++ b/src/client/keyCredentialAuthenticationPolicy.ts @@ -1,13 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. --import { KeyCredential } from "@azure/core-auth"; --import { +-import type { KeyCredential } from "@azure/core-auth"; +-import type { - PipelinePolicy, - PipelineRequest, - PipelineResponse, - SendRequest, -} from "@azure/core-rest-pipeline"; -+import { KeyCredential } from "../auth/keyCredential.js"; -+import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -+import { PipelinePolicy } from "../pipeline.js"; ++import type { KeyCredential } from "../auth/keyCredential.js"; ++import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; ++import type { PipelinePolicy } from "../pipeline.js"; /** * The programmatic identifier of the bearerTokenAuthenticationPolicy. diff --git a/src/client/multipart.ts b/src/client/multipart.ts -index b36fa7a..1d66e36 100644 +index e34a065..2bc3df1 100644 --- a/src/client/multipart.ts +++ b/src/client/multipart.ts -@@ -1,15 +1,11 @@ +@@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. --import { +-import type { - BodyPart, - MultipartRequestBody, - RawHttpHeadersInput, -- RestError, -- createHttpHeaders, -} from "@azure/core-rest-pipeline"; +-import { RestError, createHttpHeaders } from "@azure/core-rest-pipeline"; -import { stringToUint8Array } from "@azure/core-util"; -import { isBinaryBody } from "./helpers/isBinaryBody.js"; -+import { BodyPart, MultipartRequestBody, RawHttpHeadersInput } from "../interfaces.js"; ++import type { BodyPart, MultipartRequestBody, RawHttpHeadersInput } from "../interfaces.js"; +import { RestError } from "../restError.js"; +import { createHttpHeaders } from "../httpHeaders.js"; +import { stringToUint8Array } from "../util/bytesEncoding.js"; @@ -724,25 +723,26 @@ index b36fa7a..1d66e36 100644 /** * Describes a single part in a multipart body. diff --git a/src/client/restError.ts b/src/client/restError.ts -index b85a503..9d98299 100644 +index 1ecc969..9b98b21 100644 --- a/src/client/restError.ts +++ b/src/client/restError.ts -@@ -1,7 +1,9 @@ +@@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. --import { PipelineResponse, RestError, createHttpHeaders } from "@azure/core-rest-pipeline"; -+import { PipelineResponse } from "../interfaces.js"; +-import type { PipelineResponse } from "@azure/core-rest-pipeline"; +-import { RestError, createHttpHeaders } from "@azure/core-rest-pipeline"; ++import type { PipelineResponse } from "../interfaces.js"; +import { RestError } from "../restError.js"; +import { createHttpHeaders } from "../httpHeaders.js"; - import { PathUncheckedResponse } from "./common.js"; + import type { PathUncheckedResponse } from "./common.js"; /** diff --git a/src/client/sendRequest.ts b/src/client/sendRequest.ts -index 9a96a4a..de08109 100644 +index 9e947e6..2f30ba0 100644 --- a/src/client/sendRequest.ts +++ b/src/client/sendRequest.ts -@@ -5,17 +5,16 @@ import { +@@ -5,19 +5,16 @@ import type { HttpClient, HttpMethods, MultipartRequestBody, @@ -750,6 +750,8 @@ index 9a96a4a..de08109 100644 PipelineRequest, PipelineResponse, RequestBodyType, +-} from "@azure/core-rest-pipeline"; +-import { - RestError, - createHttpHeaders, - createPipelineRequest, @@ -757,16 +759,16 @@ index 9a96a4a..de08109 100644 -} from "@azure/core-rest-pipeline"; +} from "../interfaces.js"; +import { isRestError, RestError } from "../restError.js"; -+import { Pipeline } from "../pipeline.js"; ++import type { Pipeline } from "../pipeline.js"; +import { createHttpHeaders } from "../httpHeaders.js"; +import { createPipelineRequest } from "../pipelineRequest.js"; import { getCachedDefaultHttpsClient } from "./clientHelpers.js"; -import { isReadableStream } from "./helpers/isReadableStream.js"; +import { isReadableStream } from "../util/typeGuards.js"; - import { HttpResponse, RequestParameters } from "./common.js"; - import { PartDescriptor, buildMultipartBody } from "./multipart.js"; - -@@ -60,7 +59,8 @@ export async function sendRequest( + import type { HttpResponse, RequestParameters } from "./common.js"; + import type { PartDescriptor } from "./multipart.js"; + import { buildMultipartBody } from "./multipart.js"; +@@ -63,7 +60,8 @@ export async function sendRequest( if (isRestError(e) && e.response && options.onResponse) { const { response } = e; const rawHeaders = response.headers.toJSON(); @@ -823,47 +825,19 @@ index 2a2bd41..ede8855 100644 // The multipart policy is added after policies with no phase, so that // policies can be added between it and formDataPolicy to modify // properties (e.g., making the boundary constant in recorded tests). -diff --git a/src/defaultHttpClient.ts b/src/defaultHttpClient.ts -index 7da85d9..5baca04 100644 ---- a/src/defaultHttpClient.ts -+++ b/src/defaultHttpClient.ts -@@ -1,7 +1,7 @@ - // Copyright (c) Microsoft Corporation. - // Licensed under the MIT License. - --import type { HttpClient } from "./interfaces.js"; -+import { HttpClient } from "./interfaces.js"; - import { createNodeHttpClient } from "./nodeHttpClient.js"; - - /** diff --git a/src/fetchHttpClient.ts b/src/fetchHttpClient.ts -index e9751e2..794a398 100644 +index e9751e2..e4f8769 100644 --- a/src/fetchHttpClient.ts +++ b/src/fetchHttpClient.ts -@@ -1,8 +1,8 @@ +@@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError } from "@azure/abort-controller"; --import type { +import { AbortError } from "./abort-controller/AbortError.js"; -+import { + import type { HttpClient, HttpHeaders as PipelineHeaders, - PipelineRequest, -diff --git a/src/httpHeaders.ts b/src/httpHeaders.ts -index 9e2914b..0bdb7be 100644 ---- a/src/httpHeaders.ts -+++ b/src/httpHeaders.ts -@@ -1,7 +1,7 @@ - // Copyright (c) Microsoft Corporation. - // Licensed under the MIT License. - --import type { HttpHeaders, RawHttpHeaders, RawHttpHeadersInput } from "./interfaces.js"; -+import { HttpHeaders, RawHttpHeaders, RawHttpHeadersInput } from "./interfaces.js"; - - interface HeaderEntry { - name: string; diff --git a/src/index.ts b/src/index.ts index 688a7ea..76ca028 100644 --- a/src/index.ts @@ -1068,7 +1042,7 @@ index 688a7ea..76ca028 100644 +export * from "./client/getClient.js"; +export * from "./client/common.js"; diff --git a/src/interfaces.ts b/src/interfaces.ts -index 26b806d..6ef7c4b 100644 +index 26b806d..3e3ca58 100644 --- a/src/interfaces.ts +++ b/src/interfaces.ts @@ -1,9 +1,8 @@ @@ -1078,8 +1052,8 @@ index 26b806d..6ef7c4b 100644 -import type { AbortSignalLike } from "@azure/abort-controller"; -import type { OperationTracingOptions } from "@azure/core-tracing"; -import type { HttpMethods } from "@azure/core-util"; -+import { AbortSignalLike } from "./abort-controller/AbortSignalLike.js"; -+import { OperationTracingOptions } from "./tracing/interfaces.js"; ++import type { AbortSignalLike } from "./abort-controller/AbortSignalLike.js"; ++import type { OperationTracingOptions } from "./tracing/interfaces.js"; /** * A HttpHeaders collection represented as a simple JSON object. @@ -1138,16 +1112,17 @@ diff --git a/src/logger/index.ts b/src/logger/logger.ts similarity index 52% rename from src/logger/index.ts rename to src/logger/logger.ts -index 3e33a3b..dd3965c 100644 +index 3e33a3b..3654566 100644 --- a/src/logger/index.ts +++ b/src/logger/logger.ts -@@ -1,22 +1,23 @@ +@@ -1,22 +1,24 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import debug, { type Debugger } from "./debug.js"; -export type { Debugger } from "./debug.js"; -+import debug, { Debugger } from "./debug.js"; ++import type { Debugger } from "./debug.js"; ++import debug from "./debug.js"; +export { Debugger } from "./debug.js"; -const registeredLoggers = new Set(); @@ -1173,7 +1148,7 @@ index 3e33a3b..dd3965c 100644 debug.log(...args); }; -@@ -28,23 +29,23 @@ AzureLogger.log = (...args) => { +@@ -28,23 +30,23 @@ AzureLogger.log = (...args) => { * - warning * - error */ @@ -1204,7 +1179,7 @@ index 3e33a3b..dd3965c 100644 ", ", )}.`, ); -@@ -60,13 +61,13 @@ if (logLevelFromEnv) { +@@ -60,13 +62,13 @@ if (logLevelFromEnv) { * - warning * - error */ @@ -1222,7 +1197,7 @@ index 3e33a3b..dd3965c 100644 const enabledNamespaces = []; for (const logger of registeredLoggers) { -@@ -81,8 +82,8 @@ export function setLogLevel(level?: AzureLogLevel): void { +@@ -81,8 +83,8 @@ export function setLogLevel(level?: AzureLogLevel): void { /** * Retrieves the currently specified log level. */ @@ -1233,7 +1208,7 @@ index 3e33a3b..dd3965c 100644 } const levelMap = { -@@ -96,7 +97,7 @@ const levelMap = { +@@ -96,7 +98,7 @@ const levelMap = { * Defines the methods available on the SDK-facing logger. */ // eslint-disable-next-line @typescript-eslint/no-redeclare @@ -1242,7 +1217,7 @@ index 3e33a3b..dd3965c 100644 /** * Used for failures the program is unlikely to recover from, * such as Out of Memory. -@@ -121,13 +122,13 @@ export interface AzureLogger { +@@ -121,13 +123,13 @@ export interface AzureLogger { } /** @@ -1260,7 +1235,7 @@ index 3e33a3b..dd3965c 100644 return { error: createLogger(clientRootLogger, "error"), warning: createLogger(clientRootLogger, "warning"), -@@ -136,14 +137,20 @@ export function createClientLogger(namespace: string): AzureLogger { +@@ -136,14 +138,20 @@ export function createClientLogger(namespace: string): AzureLogger { }; } @@ -1284,7 +1259,7 @@ index 3e33a3b..dd3965c 100644 level, }); -@@ -159,10 +166,12 @@ function createLogger(parent: AzureClientLogger, level: AzureLogLevel): AzureDeb +@@ -159,10 +167,12 @@ function createLogger(parent: AzureClientLogger, level: AzureLogLevel): AzureDeb return logger; } @@ -1302,52 +1277,24 @@ index 3e33a3b..dd3965c 100644 + return TYPESPEC_RUNTIME_LOG_LEVELS.includes(logLevel as any); } diff --git a/src/nodeHttpClient.ts b/src/nodeHttpClient.ts -index 1ac007a..76796b2 100644 +index 1ac007a..66abe50 100644 --- a/src/nodeHttpClient.ts +++ b/src/nodeHttpClient.ts -@@ -5,8 +5,8 @@ import * as http from "node:http"; +@@ -5,7 +5,7 @@ import * as http from "node:http"; import * as https from "node:https"; import * as zlib from "node:zlib"; import { Transform } from "node:stream"; -import { AbortError } from "@azure/abort-controller"; --import type { +import { AbortError } from "./abort-controller/AbortError.js"; -+import { + import type { HttpClient, HttpHeaders, - PipelineRequest, -@@ -17,7 +17,7 @@ import type { - } from "./interfaces.js"; - import { createHttpHeaders } from "./httpHeaders.js"; - import { RestError } from "./restError.js"; --import type { IncomingMessage } from "node:http"; -+import { IncomingMessage } from "node:http"; - import { logger } from "./log.js"; - - const DEFAULT_TLS_SETTINGS = {}; -diff --git a/src/pipeline.ts b/src/pipeline.ts -index f5612f8..13fc101 100644 ---- a/src/pipeline.ts -+++ b/src/pipeline.ts -@@ -1,7 +1,7 @@ - // Copyright (c) Microsoft Corporation. - // Licensed under the MIT License. - --import type { HttpClient, PipelineRequest, PipelineResponse, SendRequest } from "./interfaces.js"; -+import { HttpClient, PipelineRequest, PipelineResponse, SendRequest } from "./interfaces.js"; - - /** - * Policies are executed in phases. diff --git a/src/pipelineRequest.ts b/src/pipelineRequest.ts -index 8d1648d..b28ae0c 100644 +index 8d1648d..50d7f83 100644 --- a/src/pipelineRequest.ts +++ b/src/pipelineRequest.ts -@@ -1,9 +1,10 @@ - // Copyright (c) Microsoft Corporation. - // Licensed under the MIT License. - --import type { -+import { +@@ -4,6 +4,7 @@ + import type { FormDataMap, HttpHeaders, + HttpMethods, @@ -1362,9 +1309,9 @@ index 8d1648d..b28ae0c 100644 -import { randomUUID } from "@azure/core-util"; -import type { OperationTracingOptions } from "@azure/core-tracing"; -import type { HttpMethods } from "@azure/core-util"; -+import { AbortSignalLike } from "./abort-controller/AbortSignalLike.js"; ++import type { AbortSignalLike } from "./abort-controller/AbortSignalLike.js"; +import { randomUUID } from "./util/uuidUtils.js"; -+import { OperationTracingOptions } from "./tracing/interfaces.js"; ++import type { OperationTracingOptions } from "./tracing/interfaces.js"; /** * Settings to initialize a request. @@ -1481,24 +1428,20 @@ index 55110a0..0000000 - }; -} diff --git a/src/policies/bearerTokenAuthenticationPolicy.ts b/src/policies/bearerTokenAuthenticationPolicy.ts -index 8398172..d4b2706 100644 +index 8398172..87e8f5e 100644 --- a/src/policies/bearerTokenAuthenticationPolicy.ts +++ b/src/policies/bearerTokenAuthenticationPolicy.ts -@@ -1,10 +1,10 @@ +@@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import type { AzureLogger } from "@azure/logger"; --import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; --import type { PipelinePolicy } from "../pipeline.js"; -+import { AccessToken, GetTokenOptions, TokenCredential } from "../auth/tokenCredential.js"; -+import { TypeSpecRuntimeLogger } from "../logger/logger.js"; -+import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -+import { PipelinePolicy } from "../pipeline.js"; ++import type { AccessToken, GetTokenOptions, TokenCredential } from "../auth/tokenCredential.js"; ++import type { TypeSpecRuntimeLogger } from "../logger/logger.js"; + import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; + import type { PipelinePolicy } from "../pipeline.js"; import { createTokenCycler } from "../util/tokenCycler.js"; - import { logger as coreLogger } from "../log.js"; - @@ -32,7 +32,7 @@ export interface AuthorizeRequestOptions { /** * A logger, if one was sent through the HTTP pipeline. @@ -1526,54 +1469,11 @@ index 8398172..d4b2706 100644 } /** -diff --git a/src/policies/decompressResponsePolicy.ts b/src/policies/decompressResponsePolicy.ts -index 252e2ad..e365833 100644 ---- a/src/policies/decompressResponsePolicy.ts -+++ b/src/policies/decompressResponsePolicy.ts -@@ -1,8 +1,8 @@ - // Copyright (c) Microsoft Corporation. - // Licensed under the MIT License. - --import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; --import type { PipelinePolicy } from "../pipeline.js"; -+import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -+import { PipelinePolicy } from "../pipeline.js"; - - /** - * The programmatic identifier of the decompressResponsePolicy. -diff --git a/src/policies/defaultRetryPolicy.ts b/src/policies/defaultRetryPolicy.ts -index 169a7ca..d4ca014 100644 ---- a/src/policies/defaultRetryPolicy.ts -+++ b/src/policies/defaultRetryPolicy.ts -@@ -1,8 +1,8 @@ - // Copyright (c) Microsoft Corporation. - // Licensed under the MIT License. - --import type { PipelineRetryOptions } from "../interfaces.js"; --import type { PipelinePolicy } from "../pipeline.js"; -+import { PipelineRetryOptions } from "../interfaces.js"; -+import { PipelinePolicy } from "../pipeline.js"; - import { exponentialRetryStrategy } from "../retryStrategies/exponentialRetryStrategy.js"; - import { throttlingRetryStrategy } from "../retryStrategies/throttlingRetryStrategy.js"; - import { retryPolicy } from "./retryPolicy.js"; -diff --git a/src/policies/exponentialRetryPolicy.ts b/src/policies/exponentialRetryPolicy.ts -index 24f6e16..914f506 100644 ---- a/src/policies/exponentialRetryPolicy.ts -+++ b/src/policies/exponentialRetryPolicy.ts -@@ -1,7 +1,7 @@ - // Copyright (c) Microsoft Corporation. - // Licensed under the MIT License. - --import type { PipelinePolicy } from "../pipeline.js"; -+import { PipelinePolicy } from "../pipeline.js"; - import { exponentialRetryStrategy } from "../retryStrategies/exponentialRetryStrategy.js"; - import { retryPolicy } from "./retryPolicy.js"; - import { DEFAULT_RETRY_POLICY_COUNT } from "../constants.js"; diff --git a/src/policies/formDataPolicy.ts b/src/policies/formDataPolicy.ts -index 86d7e12..31fc06e 100644 +index 86d7e12..4265f06 100644 --- a/src/policies/formDataPolicy.ts +++ b/src/policies/formDataPolicy.ts -@@ -1,9 +1,10 @@ +@@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. @@ -1581,39 +1481,23 @@ index 86d7e12..31fc06e 100644 +import { stringToUint8Array } from "../util/bytesEncoding.js"; +import { isNodeLike } from "../util/checkEnvironment.js"; import { createHttpHeaders } from "../httpHeaders.js"; --import type { -+import { + import type { BodyPart, - FormDataMap, - FormDataValue, -@@ -11,7 +12,7 @@ import type { - PipelineResponse, - SendRequest, - } from "../interfaces.js"; --import type { PipelinePolicy } from "../pipeline.js"; -+import { PipelinePolicy } from "../pipeline.js"; - - /** - * The programmatic identifier of the formDataPolicy. diff --git a/src/policies/logPolicy.ts b/src/policies/logPolicy.ts -index a8383c6..e8b9724 100644 +index a8383c6..6b7d1ab 100644 --- a/src/policies/logPolicy.ts +++ b/src/policies/logPolicy.ts -@@ -1,9 +1,9 @@ +@@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import type { Debugger } from "@azure/logger"; --import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; --import type { PipelinePolicy } from "../pipeline.js"; -+import { Debugger } from "../logger/logger.js"; -+import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -+import { PipelinePolicy } from "../pipeline.js"; ++import type { Debugger } from "../logger/logger.js"; + import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; + import type { PipelinePolicy } from "../pipeline.js"; import { logger as coreLogger } from "../log.js"; - import { Sanitizer } from "../util/sanitizer.js"; - diff --git a/src/policies/multipartPolicy.ts b/src/policies/multipartPolicy.ts -index 2b70494..2353450 100644 +index 2b70494..268c132 100644 --- a/src/policies/multipartPolicy.ts +++ b/src/policies/multipartPolicy.ts @@ -1,11 +1,12 @@ @@ -1622,9 +1506,8 @@ index 2b70494..2353450 100644 -import { randomUUID, stringToUint8Array } from "@azure/core-util"; import type { BodyPart, HttpHeaders, PipelineRequest, PipelineResponse } from "../interfaces.js"; --import type { PipelinePolicy } from "../pipeline.js"; + import type { PipelinePolicy } from "../pipeline.js"; -import { concat } from "../util/concat.js"; -+import { PipelinePolicy } from "../pipeline.js"; +import { stringToUint8Array } from "../util/bytesEncoding.js"; import { isBlob } from "../util/typeGuards.js"; +import { randomUUID } from "../util/uuidUtils.js"; @@ -1667,46 +1550,25 @@ index deeee45..0000000 - }, - }; -} -diff --git a/src/policies/redirectPolicy.ts b/src/policies/redirectPolicy.ts -index 1b8bf2c..3bbeb17 100644 ---- a/src/policies/redirectPolicy.ts -+++ b/src/policies/redirectPolicy.ts -@@ -1,8 +1,8 @@ - // Copyright (c) Microsoft Corporation. - // Licensed under the MIT License. - --import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; --import type { PipelinePolicy } from "../pipeline.js"; -+import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -+import { PipelinePolicy } from "../pipeline.js"; - - /** - * The programmatic identifier of the redirectPolicy. diff --git a/src/policies/retryPolicy.ts b/src/policies/retryPolicy.ts -index f937b36..1071226 100644 +index f937b36..63f4f2a 100644 --- a/src/policies/retryPolicy.ts +++ b/src/policies/retryPolicy.ts -@@ -1,13 +1,13 @@ - // Copyright (c) Microsoft Corporation. - // Licensed under the MIT License. - --import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; --import type { PipelinePolicy } from "../pipeline.js"; -+import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -+import { PipelinePolicy } from "../pipeline.js"; +@@ -4,10 +4,11 @@ + import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; + import type { PipelinePolicy } from "../pipeline.js"; import { delay } from "../util/helpers.js"; -import { type AzureLogger, createClientLogger } from "@azure/logger"; --import type { RetryStrategy } from "../retryStrategies/retryStrategy.js"; --import type { RestError } from "../restError.js"; + import type { RetryStrategy } from "../retryStrategies/retryStrategy.js"; + import type { RestError } from "../restError.js"; -import { AbortError } from "@azure/abort-controller"; -+import { RetryStrategy } from "../retryStrategies/retryStrategy.js"; -+import { RestError } from "../restError.js"; +import { AbortError } from "../abort-controller/AbortError.js"; -+import { TypeSpecRuntimeLogger, createClientLogger } from "../logger/logger.js"; ++import type { TypeSpecRuntimeLogger } from "../logger/logger.js"; ++import { createClientLogger } from "../logger/logger.js"; import { DEFAULT_RETRY_POLICY_COUNT } from "../constants.js"; const retryPolicyLogger = createClientLogger("core-rest-pipeline retryPolicy"); -@@ -28,7 +28,7 @@ export interface RetryPolicyOptions { +@@ -28,7 +29,7 @@ export interface RetryPolicyOptions { /** * Logger. If it's not provided, a default logger is used. */ @@ -1751,49 +1613,8 @@ index a40d4ab..0000000 - }, - }; -} -diff --git a/src/policies/systemErrorRetryPolicy.ts b/src/policies/systemErrorRetryPolicy.ts -index 4c8bf62..8622650 100644 ---- a/src/policies/systemErrorRetryPolicy.ts -+++ b/src/policies/systemErrorRetryPolicy.ts -@@ -1,7 +1,7 @@ - // Copyright (c) Microsoft Corporation. - // Licensed under the MIT License. - --import type { PipelinePolicy } from "../pipeline.js"; -+import { PipelinePolicy } from "../pipeline.js"; - import { exponentialRetryStrategy } from "../retryStrategies/exponentialRetryStrategy.js"; - import { retryPolicy } from "./retryPolicy.js"; - import { DEFAULT_RETRY_POLICY_COUNT } from "../constants.js"; -diff --git a/src/policies/throttlingRetryPolicy.ts b/src/policies/throttlingRetryPolicy.ts -index 07cd51c..168851d 100644 ---- a/src/policies/throttlingRetryPolicy.ts -+++ b/src/policies/throttlingRetryPolicy.ts -@@ -1,7 +1,7 @@ - // Copyright (c) Microsoft Corporation. - // Licensed under the MIT License. - --import type { PipelinePolicy } from "../pipeline.js"; -+import { PipelinePolicy } from "../pipeline.js"; - import { throttlingRetryStrategy } from "../retryStrategies/throttlingRetryStrategy.js"; - import { retryPolicy } from "./retryPolicy.js"; - import { DEFAULT_RETRY_POLICY_COUNT } from "../constants.js"; -diff --git a/src/policies/tlsPolicy.ts b/src/policies/tlsPolicy.ts -index 0e78872..79f19f1 100644 ---- a/src/policies/tlsPolicy.ts -+++ b/src/policies/tlsPolicy.ts -@@ -1,8 +1,8 @@ - // Copyright (c) Microsoft Corporation. - // Licensed under the MIT License. - --import type { PipelinePolicy } from "../pipeline.js"; --import type { TlsSettings } from "../interfaces.js"; -+import { PipelinePolicy } from "../pipeline.js"; -+import { TlsSettings } from "../interfaces.js"; - - /** - * Name of the TLS Policy diff --git a/src/policies/tracingPolicy.ts b/src/policies/tracingPolicy.ts -index 5e69548..1d824c0 100644 +index 5e69548..34fad89 100644 --- a/src/policies/tracingPolicy.ts +++ b/src/policies/tracingPolicy.ts @@ -1,18 +1,14 @@ @@ -1806,13 +1627,11 @@ index 5e69548..1d824c0 100644 - type TracingSpan, - createTracingClient, -} from "@azure/core-tracing"; -+import { TracingClient, TracingContext, TracingSpan } from "../tracing/interfaces.js"; ++import type { TracingClient, TracingContext, TracingSpan } from "../tracing/interfaces.js"; +import { createTracingClient } from "../tracing/tracingClient.js"; import { SDK_VERSION } from "../constants.js"; --import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; --import type { PipelinePolicy } from "../pipeline.js"; -+import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -+import { PipelinePolicy } from "../pipeline.js"; + import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; + import type { PipelinePolicy } from "../pipeline.js"; import { getUserAgentValue } from "../util/userAgent.js"; import { logger } from "../log.js"; -import { getErrorMessage, isError } from "@azure/core-util"; @@ -1829,72 +1648,45 @@ index 5e69548..1d824c0 100644 packageVersion: SDK_VERSION, }); } catch (e: unknown) { -diff --git a/src/policies/userAgentPolicy.ts b/src/policies/userAgentPolicy.ts -index bd5de30..e8a144a 100644 ---- a/src/policies/userAgentPolicy.ts -+++ b/src/policies/userAgentPolicy.ts -@@ -1,8 +1,8 @@ - // Copyright (c) Microsoft Corporation. - // Licensed under the MIT License. - --import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; --import type { PipelinePolicy } from "../pipeline.js"; -+import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -+import { PipelinePolicy } from "../pipeline.js"; - import { getUserAgentHeaderName, getUserAgentValue } from "../util/userAgent.js"; - - const UserAgentHeaderName = getUserAgentHeaderName(); diff --git a/src/restError.ts b/src/restError.ts -index 0b2e69f..71472b4 100644 +index 0b2e69f..bc09e78 100644 --- a/src/restError.ts +++ b/src/restError.ts -@@ -1,8 +1,8 @@ +@@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { isError } from "@azure/core-util"; --import type { PipelineRequest, PipelineResponse } from "./interfaces.js"; +import { isError } from "./util/error.js"; -+import { PipelineRequest, PipelineResponse } from "./interfaces.js"; + import type { PipelineRequest, PipelineResponse } from "./interfaces.js"; import { custom } from "./util/inspect.js"; import { Sanitizer } from "./util/sanitizer.js"; - diff --git a/src/retryStrategies/exponentialRetryStrategy.ts b/src/retryStrategies/exponentialRetryStrategy.ts -index c6943b8..d33e7fe 100644 +index c6943b8..568e864 100644 --- a/src/retryStrategies/exponentialRetryStrategy.ts +++ b/src/retryStrategies/exponentialRetryStrategy.ts -@@ -1,10 +1,10 @@ - // Copyright (c) Microsoft Corporation. - // Licensed under the MIT License. +@@ -3,7 +3,7 @@ --import type { PipelineResponse } from "../interfaces.js"; --import type { RestError } from "../restError.js"; + import type { PipelineResponse } from "../interfaces.js"; + import type { RestError } from "../restError.js"; -import { calculateRetryDelay } from "@azure/core-util"; --import type { RetryStrategy } from "./retryStrategy.js"; -+import { PipelineResponse } from "../interfaces.js"; -+import { RestError } from "../restError.js"; +import { calculateRetryDelay } from "../util/delay.js"; -+import { RetryStrategy } from "./retryStrategy.js"; + import type { RetryStrategy } from "./retryStrategy.js"; import { isThrottlingRetryResponse } from "./throttlingRetryStrategy.js"; - // intervals are in milliseconds diff --git a/src/retryStrategies/retryStrategy.ts b/src/retryStrategies/retryStrategy.ts -index a8b94fc..332b8b8 100644 +index a8b94fc..bc11b52 100644 --- a/src/retryStrategies/retryStrategy.ts +++ b/src/retryStrategies/retryStrategy.ts -@@ -1,9 +1,9 @@ +@@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import type { AzureLogger } from "@azure/logger"; --import type { PipelineResponse } from "../interfaces.js"; --import type { RestError } from "../restError.js"; -+import { TypeSpecRuntimeLogger } from "../logger/logger.js"; -+import { PipelineResponse } from "../interfaces.js"; -+import { RestError } from "../restError.js"; ++import type { TypeSpecRuntimeLogger } from "../logger/logger.js"; + import type { PipelineResponse } from "../interfaces.js"; + import type { RestError } from "../restError.js"; - /** - * Information provided to the retry strategy about the current progress of the retry policy. @@ -57,7 +57,7 @@ export interface RetryStrategy { /** * Logger. If it's not provided, a default logger for all retry strategies is used. @@ -1905,18 +1697,11 @@ index a8b94fc..332b8b8 100644 * Function that determines how to proceed with the subsequent requests. * @param state - Retry state diff --git a/src/retryStrategies/throttlingRetryStrategy.ts b/src/retryStrategies/throttlingRetryStrategy.ts -index 2d4f87f..b729714 100644 +index 2d4f87f..5c8d4ed 100644 --- a/src/retryStrategies/throttlingRetryStrategy.ts +++ b/src/retryStrategies/throttlingRetryStrategy.ts -@@ -1,17 +1,17 @@ - // Copyright (c) Microsoft Corporation. - // Licensed under the MIT License. - --import type { PipelineResponse } from "../index.js"; -+import { PipelineResponse } from "../index.js"; - import { parseHeaderValueAsNumber } from "../util/helpers.js"; --import type { RetryStrategy } from "./retryStrategy.js"; -+import { RetryStrategy } from "./retryStrategy.js"; +@@ -6,12 +6,12 @@ import { parseHeaderValueAsNumber } from "../util/helpers.js"; + import type { RetryStrategy } from "./retryStrategy.js"; /** - * The header that comes back from Azure services representing @@ -1973,11 +1758,11 @@ index 04d0785..fe8f87b 100644 * const tracingClient = createTracingClient({ * namespace: "test.namespace", diff --git a/src/tracing/state.ts b/src/tracing/state.ts -index ae1efaf..852ef3b 100644 +index c7e7a4a..ccb13f4 100644 --- a/src/tracing/state.ts +++ b/src/tracing/state.ts @@ -4,7 +4,7 @@ - import { Instrumenter } from "./interfaces.js"; + import type { Instrumenter } from "./interfaces.js"; // @ts-expect-error The recommended approach to sharing module state between ESM and CJS. // See https://github.com/isaacs/tshy/blob/main/README.md#module-local-state for additional information. -import { state as cjsState } from "../commonjs/state.js"; @@ -1986,10 +1771,10 @@ index ae1efaf..852ef3b 100644 /** * Defines the shared state between CJS and ESM by re-exporting the CJS state. diff --git a/src/tracing/tracingContext.ts b/src/tracing/tracingContext.ts -index 1688905..0d6dc15 100644 +index 84999ab..5528c7a 100644 --- a/src/tracing/tracingContext.ts +++ b/src/tracing/tracingContext.ts -@@ -5,8 +5,8 @@ import { TracingContext, TracingSpan } from "./interfaces.js"; +@@ -5,8 +5,8 @@ import type { TracingContext, TracingSpan } from "./interfaces.js"; /** @internal */ export const knownContextKeys = { @@ -2001,7 +1786,7 @@ index 1688905..0d6dc15 100644 /** diff --git a/src/util/aborterUtils.ts b/src/util/aborterUtils.ts -index ce29be9..82e102a 100644 +index ce29be9..cde2d52 100644 --- a/src/util/aborterUtils.ts +++ b/src/util/aborterUtils.ts @@ -1,7 +1,7 @@ @@ -2009,7 +1794,7 @@ index ce29be9..82e102a 100644 // Licensed under the MIT License. -import type { AbortSignalLike } from "@azure/abort-controller"; -+import { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; ++import type { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; /** * Options related to abort controller. @@ -2029,20 +1814,18 @@ index 457bc22..cbadccf 100644 import { getRawContent } from "./file.js"; diff --git a/src/util/createAbortablePromise.ts b/src/util/createAbortablePromise.ts -index 25cf55a..5eba77e 100644 +index 25cf55a..685eaed 100644 --- a/src/util/createAbortablePromise.ts +++ b/src/util/createAbortablePromise.ts -@@ -1,8 +1,8 @@ +@@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError } from "@azure/abort-controller"; --import type { AbortOptions } from "./aborterUtils.js"; +import { AbortError } from "../abort-controller/AbortError.js"; -+import { AbortOptions } from "./aborterUtils.js"; + import type { AbortOptions } from "./aborterUtils.js"; /** - * Options for the createAbortablePromise function. diff --git a/src/util/file.ts b/src/util/file.ts index 5b65155..73d19de 100644 --- a/src/util/file.ts @@ -2057,21 +1840,19 @@ index 5b65155..73d19de 100644 /** diff --git a/src/util/helpers.ts b/src/util/helpers.ts -index f6819e8..421e298 100644 +index f6819e8..7272d5d 100644 --- a/src/util/helpers.ts +++ b/src/util/helpers.ts -@@ -1,8 +1,9 @@ +@@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError, type AbortSignalLike } from "@azure/abort-controller"; --import type { PipelineResponse } from "../interfaces.js"; +import { AbortError } from "../abort-controller/AbortError.js"; -+import { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; -+import { PipelineResponse } from "../interfaces.js"; ++import type { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; + import type { PipelineResponse } from "../interfaces.js"; const StandardAbortMessage = "The operation was aborted."; - diff --git a/src/util/httpMethods.ts b/src/util/httpMethods.ts deleted file mode 100644 index 2748031..0000000 @@ -2158,7 +1939,7 @@ index 80a1a23..794d26a 100644 /** * Generates a SHA-256 HMAC signature. diff --git a/src/util/tokenCycler.ts b/src/util/tokenCycler.ts -index 32e2343..034c7b0 100644 +index 32e2343..723a36d 100644 --- a/src/util/tokenCycler.ts +++ b/src/util/tokenCycler.ts @@ -1,7 +1,7 @@ @@ -2166,7 +1947,7 @@ index 32e2343..034c7b0 100644 // Licensed under the MIT License. -import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -+import { AccessToken, GetTokenOptions, TokenCredential } from "../auth/tokenCredential.js"; ++import type { AccessToken, GetTokenOptions, TokenCredential } from "../auth/tokenCredential.js"; import { delay } from "./helpers.js"; /** @@ -2243,17 +2024,15 @@ index bd11d61..3f6a12b 100644 interface Crypto { randomUUID(): string; diff --git a/src/xhrHttpClient.ts b/src/xhrHttpClient.ts -index 71bc439..20040f8 100644 +index 71bc439..c82fcb7 100644 --- a/src/xhrHttpClient.ts +++ b/src/xhrHttpClient.ts -@@ -1,8 +1,8 @@ +@@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError } from "@azure/abort-controller"; --import type { +import { AbortError } from "./abort-controller/AbortError.js"; -+import { + import type { HttpClient, HttpHeaders, - PipelineRequest, diff --git a/sdk/core/ts-http-runtime/src/accessTokenCache.ts b/sdk/core/ts-http-runtime/src/accessTokenCache.ts index cca6d3430b35..22e61bbba34e 100644 --- a/sdk/core/ts-http-runtime/src/accessTokenCache.ts +++ b/sdk/core/ts-http-runtime/src/accessTokenCache.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken } from "./auth/tokenCredential.js"; +import type { AccessToken } from "./auth/tokenCredential.js"; /** * Defines the default token refresh buffer duration. diff --git a/sdk/core/ts-http-runtime/src/auth/tokenCredential.ts b/sdk/core/ts-http-runtime/src/auth/tokenCredential.ts index a8903bb8d173..6a42777aeb4a 100644 --- a/sdk/core/ts-http-runtime/src/auth/tokenCredential.ts +++ b/sdk/core/ts-http-runtime/src/auth/tokenCredential.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; -import { TracingContext } from "../tracing/interfaces.js"; +import type { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; +import type { TracingContext } from "../tracing/interfaces.js"; /** * Represents a credential capable of providing an authentication token. diff --git a/sdk/core/ts-http-runtime/src/client/apiVersionPolicy.ts b/sdk/core/ts-http-runtime/src/client/apiVersionPolicy.ts index aedf8e2e4582..da2758469a1e 100644 --- a/sdk/core/ts-http-runtime/src/client/apiVersionPolicy.ts +++ b/sdk/core/ts-http-runtime/src/client/apiVersionPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelinePolicy } from "../pipeline.js"; -import { ClientOptions } from "./common.js"; +import type { PipelinePolicy } from "../pipeline.js"; +import type { ClientOptions } from "./common.js"; export const apiVersionPolicyName = "ApiVersionPolicy"; diff --git a/sdk/core/ts-http-runtime/src/client/clientHelpers.ts b/sdk/core/ts-http-runtime/src/client/clientHelpers.ts index 56553a505f55..66ea99c4be58 100644 --- a/sdk/core/ts-http-runtime/src/client/clientHelpers.ts +++ b/sdk/core/ts-http-runtime/src/client/clientHelpers.ts @@ -1,14 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpClient } from "../interfaces.js"; -import { Pipeline } from "../pipeline.js"; +import type { HttpClient } from "../interfaces.js"; +import type { Pipeline } from "../pipeline.js"; import { bearerTokenAuthenticationPolicy } from "../policies/bearerTokenAuthenticationPolicy.js"; import { createDefaultHttpClient } from "../defaultHttpClient.js"; import { createPipelineFromOptions } from "../createPipelineFromOptions.js"; -import { TokenCredential, isTokenCredential } from "../auth/tokenCredential.js"; -import { KeyCredential, isKeyCredential } from "../auth/keyCredential.js"; -import { ClientOptions } from "./common.js"; +import type { TokenCredential } from "../auth/tokenCredential.js"; +import { isTokenCredential } from "../auth/tokenCredential.js"; +import type { KeyCredential } from "../auth/keyCredential.js"; +import { isKeyCredential } from "../auth/keyCredential.js"; +import type { ClientOptions } from "./common.js"; import { apiVersionPolicy } from "./apiVersionPolicy.js"; import { keyCredentialAuthenticationPolicy } from "./keyCredentialAuthenticationPolicy.js"; diff --git a/sdk/core/ts-http-runtime/src/client/common.ts b/sdk/core/ts-http-runtime/src/client/common.ts index a5f6d91f763e..f43f7c109466 100644 --- a/sdk/core/ts-http-runtime/src/client/common.ts +++ b/sdk/core/ts-http-runtime/src/client/common.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { HttpClient, PipelineRequest, PipelineResponse, @@ -10,11 +10,11 @@ import { TransferProgressEvent, RawHttpHeadersInput, } from "../interfaces.js"; -import { Pipeline, PipelinePolicy } from "../pipeline.js"; -import { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; -import { OperationTracingOptions } from "../tracing/interfaces.js"; -import { PipelineOptions } from "../createPipelineFromOptions.js"; -import { LogPolicyOptions } from "../policies/logPolicy.js"; +import type { Pipeline, PipelinePolicy } from "../pipeline.js"; +import type { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; +import type { OperationTracingOptions } from "../tracing/interfaces.js"; +import type { PipelineOptions } from "../createPipelineFromOptions.js"; +import type { LogPolicyOptions } from "../policies/logPolicy.js"; /** * Shape of the default request parameters, this may be overridden by the specific diff --git a/sdk/core/ts-http-runtime/src/client/getClient.ts b/sdk/core/ts-http-runtime/src/client/getClient.ts index 40299372a399..2e4f603a6a7d 100644 --- a/sdk/core/ts-http-runtime/src/client/getClient.ts +++ b/sdk/core/ts-http-runtime/src/client/getClient.ts @@ -1,12 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential, isTokenCredential } from "../auth/tokenCredential.js"; -import { KeyCredential, isKeyCredential } from "../auth/keyCredential.js"; -import { HttpClient, HttpMethods } from "../interfaces.js"; -import { Pipeline } from "../pipeline.js"; +import type { TokenCredential } from "../auth/tokenCredential.js"; +import { isTokenCredential } from "../auth/tokenCredential.js"; +import type { KeyCredential } from "../auth/keyCredential.js"; +import { isKeyCredential } from "../auth/keyCredential.js"; +import type { HttpClient, HttpMethods } from "../interfaces.js"; +import type { Pipeline } from "../pipeline.js"; import { createDefaultPipeline } from "./clientHelpers.js"; -import { +import type { Client, ClientOptions, HttpBrowserStreamResponse, @@ -17,7 +19,7 @@ import { } from "./common.js"; import { sendRequest } from "./sendRequest.js"; import { buildRequestUrl } from "./urlHelpers.js"; -import { PipelineOptions } from "../createPipelineFromOptions.js"; +import type { PipelineOptions } from "../createPipelineFromOptions.js"; /** * Creates a client with a default pipeline diff --git a/sdk/core/ts-http-runtime/src/client/keyCredentialAuthenticationPolicy.ts b/sdk/core/ts-http-runtime/src/client/keyCredentialAuthenticationPolicy.ts index ea5783e797fe..90e6659fb091 100644 --- a/sdk/core/ts-http-runtime/src/client/keyCredentialAuthenticationPolicy.ts +++ b/sdk/core/ts-http-runtime/src/client/keyCredentialAuthenticationPolicy.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyCredential } from "../auth/keyCredential.js"; -import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -import { PipelinePolicy } from "../pipeline.js"; +import type { KeyCredential } from "../auth/keyCredential.js"; +import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; +import type { PipelinePolicy } from "../pipeline.js"; /** * The programmatic identifier of the bearerTokenAuthenticationPolicy. diff --git a/sdk/core/ts-http-runtime/src/client/multipart.ts b/sdk/core/ts-http-runtime/src/client/multipart.ts index 1d66e36d60e5..2bc3df199918 100644 --- a/sdk/core/ts-http-runtime/src/client/multipart.ts +++ b/sdk/core/ts-http-runtime/src/client/multipart.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { BodyPart, MultipartRequestBody, RawHttpHeadersInput } from "../interfaces.js"; +import type { BodyPart, MultipartRequestBody, RawHttpHeadersInput } from "../interfaces.js"; import { RestError } from "../restError.js"; import { createHttpHeaders } from "../httpHeaders.js"; import { stringToUint8Array } from "../util/bytesEncoding.js"; diff --git a/sdk/core/ts-http-runtime/src/client/operationOptionHelpers.ts b/sdk/core/ts-http-runtime/src/client/operationOptionHelpers.ts index 66d2024b8468..c7c1eb625ada 100644 --- a/sdk/core/ts-http-runtime/src/client/operationOptionHelpers.ts +++ b/sdk/core/ts-http-runtime/src/client/operationOptionHelpers.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions, RequestParameters } from "./common.js"; +import type { OperationOptions, RequestParameters } from "./common.js"; /** * Helper function to convert OperationOptions to RequestParameters diff --git a/sdk/core/ts-http-runtime/src/client/restError.ts b/sdk/core/ts-http-runtime/src/client/restError.ts index 9d982990212d..9b98b21053f1 100644 --- a/sdk/core/ts-http-runtime/src/client/restError.ts +++ b/sdk/core/ts-http-runtime/src/client/restError.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelineResponse } from "../interfaces.js"; +import type { PipelineResponse } from "../interfaces.js"; import { RestError } from "../restError.js"; import { createHttpHeaders } from "../httpHeaders.js"; -import { PathUncheckedResponse } from "./common.js"; +import type { PathUncheckedResponse } from "./common.js"; /** * Creates a rest error from a PathUnchecked response diff --git a/sdk/core/ts-http-runtime/src/client/sendRequest.ts b/sdk/core/ts-http-runtime/src/client/sendRequest.ts index de08109c3396..2f30ba080626 100644 --- a/sdk/core/ts-http-runtime/src/client/sendRequest.ts +++ b/sdk/core/ts-http-runtime/src/client/sendRequest.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { HttpClient, HttpMethods, MultipartRequestBody, @@ -10,13 +10,14 @@ import { RequestBodyType, } from "../interfaces.js"; import { isRestError, RestError } from "../restError.js"; -import { Pipeline } from "../pipeline.js"; +import type { Pipeline } from "../pipeline.js"; import { createHttpHeaders } from "../httpHeaders.js"; import { createPipelineRequest } from "../pipelineRequest.js"; import { getCachedDefaultHttpsClient } from "./clientHelpers.js"; import { isReadableStream } from "../util/typeGuards.js"; -import { HttpResponse, RequestParameters } from "./common.js"; -import { PartDescriptor, buildMultipartBody } from "./multipart.js"; +import type { HttpResponse, RequestParameters } from "./common.js"; +import type { PartDescriptor } from "./multipart.js"; +import { buildMultipartBody } from "./multipart.js"; /** * Helper function to send request used by the client diff --git a/sdk/core/ts-http-runtime/src/client/urlHelpers.ts b/sdk/core/ts-http-runtime/src/client/urlHelpers.ts index e052e7eb02f3..69c6b4f744c9 100644 --- a/sdk/core/ts-http-runtime/src/client/urlHelpers.ts +++ b/sdk/core/ts-http-runtime/src/client/urlHelpers.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PathParameterWithOptions, RequestParameters } from "./common.js"; +import type { PathParameterWithOptions, RequestParameters } from "./common.js"; type QueryParameterStyle = "form" | "spaceDelimited" | "pipeDelimited"; diff --git a/sdk/core/ts-http-runtime/src/defaultHttpClient.ts b/sdk/core/ts-http-runtime/src/defaultHttpClient.ts index 5baca045363a..7da85d9b3172 100644 --- a/sdk/core/ts-http-runtime/src/defaultHttpClient.ts +++ b/sdk/core/ts-http-runtime/src/defaultHttpClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpClient } from "./interfaces.js"; +import type { HttpClient } from "./interfaces.js"; import { createNodeHttpClient } from "./nodeHttpClient.js"; /** diff --git a/sdk/core/ts-http-runtime/src/fetchHttpClient.ts b/sdk/core/ts-http-runtime/src/fetchHttpClient.ts index 794a398ba168..e4f8769b5127 100644 --- a/sdk/core/ts-http-runtime/src/fetchHttpClient.ts +++ b/sdk/core/ts-http-runtime/src/fetchHttpClient.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { AbortError } from "./abort-controller/AbortError.js"; -import { +import type { HttpClient, HttpHeaders as PipelineHeaders, PipelineRequest, diff --git a/sdk/core/ts-http-runtime/src/httpHeaders.ts b/sdk/core/ts-http-runtime/src/httpHeaders.ts index 0bdb7be22b31..9e2914b83e84 100644 --- a/sdk/core/ts-http-runtime/src/httpHeaders.ts +++ b/sdk/core/ts-http-runtime/src/httpHeaders.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpHeaders, RawHttpHeaders, RawHttpHeadersInput } from "./interfaces.js"; +import type { HttpHeaders, RawHttpHeaders, RawHttpHeadersInput } from "./interfaces.js"; interface HeaderEntry { name: string; diff --git a/sdk/core/ts-http-runtime/src/interfaces.ts b/sdk/core/ts-http-runtime/src/interfaces.ts index 6ef7c4bbd0f0..3e3ca58e9d6a 100644 --- a/sdk/core/ts-http-runtime/src/interfaces.ts +++ b/sdk/core/ts-http-runtime/src/interfaces.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "./abort-controller/AbortSignalLike.js"; -import { OperationTracingOptions } from "./tracing/interfaces.js"; +import type { AbortSignalLike } from "./abort-controller/AbortSignalLike.js"; +import type { OperationTracingOptions } from "./tracing/interfaces.js"; /** * A HttpHeaders collection represented as a simple JSON object. diff --git a/sdk/core/ts-http-runtime/src/logger/logger.ts b/sdk/core/ts-http-runtime/src/logger/logger.ts index dd3965c71e8f..36545667fbf5 100644 --- a/sdk/core/ts-http-runtime/src/logger/logger.ts +++ b/sdk/core/ts-http-runtime/src/logger/logger.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import debug, { Debugger } from "./debug.js"; +import type { Debugger } from "./debug.js"; +import debug from "./debug.js"; export { Debugger } from "./debug.js"; const registeredLoggers = new Set(); diff --git a/sdk/core/ts-http-runtime/src/nodeHttpClient.ts b/sdk/core/ts-http-runtime/src/nodeHttpClient.ts index 76796b2619f3..66abe50752c3 100644 --- a/sdk/core/ts-http-runtime/src/nodeHttpClient.ts +++ b/sdk/core/ts-http-runtime/src/nodeHttpClient.ts @@ -6,7 +6,7 @@ import * as https from "node:https"; import * as zlib from "node:zlib"; import { Transform } from "node:stream"; import { AbortError } from "./abort-controller/AbortError.js"; -import { +import type { HttpClient, HttpHeaders, PipelineRequest, @@ -17,7 +17,7 @@ import { } from "./interfaces.js"; import { createHttpHeaders } from "./httpHeaders.js"; import { RestError } from "./restError.js"; -import { IncomingMessage } from "node:http"; +import type { IncomingMessage } from "node:http"; import { logger } from "./log.js"; const DEFAULT_TLS_SETTINGS = {}; diff --git a/sdk/core/ts-http-runtime/src/pipeline.ts b/sdk/core/ts-http-runtime/src/pipeline.ts index 13fc101a7a2d..f5612f8cbf35 100644 --- a/sdk/core/ts-http-runtime/src/pipeline.ts +++ b/sdk/core/ts-http-runtime/src/pipeline.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpClient, PipelineRequest, PipelineResponse, SendRequest } from "./interfaces.js"; +import type { HttpClient, PipelineRequest, PipelineResponse, SendRequest } from "./interfaces.js"; /** * Policies are executed in phases. diff --git a/sdk/core/ts-http-runtime/src/pipelineRequest.ts b/sdk/core/ts-http-runtime/src/pipelineRequest.ts index b28ae0cdf0c1..50d7f83dc2bd 100644 --- a/sdk/core/ts-http-runtime/src/pipelineRequest.ts +++ b/sdk/core/ts-http-runtime/src/pipelineRequest.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { FormDataMap, HttpHeaders, HttpMethods, @@ -12,9 +12,9 @@ import { TransferProgressEvent, } from "./interfaces.js"; import { createHttpHeaders } from "./httpHeaders.js"; -import { AbortSignalLike } from "./abort-controller/AbortSignalLike.js"; +import type { AbortSignalLike } from "./abort-controller/AbortSignalLike.js"; import { randomUUID } from "./util/uuidUtils.js"; -import { OperationTracingOptions } from "./tracing/interfaces.js"; +import type { OperationTracingOptions } from "./tracing/interfaces.js"; /** * Settings to initialize a request. diff --git a/sdk/core/ts-http-runtime/src/policies/bearerTokenAuthenticationPolicy.ts b/sdk/core/ts-http-runtime/src/policies/bearerTokenAuthenticationPolicy.ts index d4b270642762..87e8f5e705d3 100644 --- a/sdk/core/ts-http-runtime/src/policies/bearerTokenAuthenticationPolicy.ts +++ b/sdk/core/ts-http-runtime/src/policies/bearerTokenAuthenticationPolicy.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "../auth/tokenCredential.js"; -import { TypeSpecRuntimeLogger } from "../logger/logger.js"; -import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -import { PipelinePolicy } from "../pipeline.js"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "../auth/tokenCredential.js"; +import type { TypeSpecRuntimeLogger } from "../logger/logger.js"; +import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; +import type { PipelinePolicy } from "../pipeline.js"; import { createTokenCycler } from "../util/tokenCycler.js"; import { logger as coreLogger } from "../log.js"; diff --git a/sdk/core/ts-http-runtime/src/policies/decompressResponsePolicy.ts b/sdk/core/ts-http-runtime/src/policies/decompressResponsePolicy.ts index e365833cbb1f..252e2ad92b42 100644 --- a/sdk/core/ts-http-runtime/src/policies/decompressResponsePolicy.ts +++ b/sdk/core/ts-http-runtime/src/policies/decompressResponsePolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -import { PipelinePolicy } from "../pipeline.js"; +import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; +import type { PipelinePolicy } from "../pipeline.js"; /** * The programmatic identifier of the decompressResponsePolicy. diff --git a/sdk/core/ts-http-runtime/src/policies/defaultRetryPolicy.ts b/sdk/core/ts-http-runtime/src/policies/defaultRetryPolicy.ts index d4ca0149dca3..169a7ca75d11 100644 --- a/sdk/core/ts-http-runtime/src/policies/defaultRetryPolicy.ts +++ b/sdk/core/ts-http-runtime/src/policies/defaultRetryPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelineRetryOptions } from "../interfaces.js"; -import { PipelinePolicy } from "../pipeline.js"; +import type { PipelineRetryOptions } from "../interfaces.js"; +import type { PipelinePolicy } from "../pipeline.js"; import { exponentialRetryStrategy } from "../retryStrategies/exponentialRetryStrategy.js"; import { throttlingRetryStrategy } from "../retryStrategies/throttlingRetryStrategy.js"; import { retryPolicy } from "./retryPolicy.js"; diff --git a/sdk/core/ts-http-runtime/src/policies/exponentialRetryPolicy.ts b/sdk/core/ts-http-runtime/src/policies/exponentialRetryPolicy.ts index 914f506c0729..24f6e16c7ca5 100644 --- a/sdk/core/ts-http-runtime/src/policies/exponentialRetryPolicy.ts +++ b/sdk/core/ts-http-runtime/src/policies/exponentialRetryPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelinePolicy } from "../pipeline.js"; +import type { PipelinePolicy } from "../pipeline.js"; import { exponentialRetryStrategy } from "../retryStrategies/exponentialRetryStrategy.js"; import { retryPolicy } from "./retryPolicy.js"; import { DEFAULT_RETRY_POLICY_COUNT } from "../constants.js"; diff --git a/sdk/core/ts-http-runtime/src/policies/formDataPolicy.ts b/sdk/core/ts-http-runtime/src/policies/formDataPolicy.ts index 31fc06e9eb7a..4265f06a3035 100644 --- a/sdk/core/ts-http-runtime/src/policies/formDataPolicy.ts +++ b/sdk/core/ts-http-runtime/src/policies/formDataPolicy.ts @@ -4,7 +4,7 @@ import { stringToUint8Array } from "../util/bytesEncoding.js"; import { isNodeLike } from "../util/checkEnvironment.js"; import { createHttpHeaders } from "../httpHeaders.js"; -import { +import type { BodyPart, FormDataMap, FormDataValue, @@ -12,7 +12,7 @@ import { PipelineResponse, SendRequest, } from "../interfaces.js"; -import { PipelinePolicy } from "../pipeline.js"; +import type { PipelinePolicy } from "../pipeline.js"; /** * The programmatic identifier of the formDataPolicy. diff --git a/sdk/core/ts-http-runtime/src/policies/logPolicy.ts b/sdk/core/ts-http-runtime/src/policies/logPolicy.ts index e8b97246a2e3..6b7d1ab42d0d 100644 --- a/sdk/core/ts-http-runtime/src/policies/logPolicy.ts +++ b/sdk/core/ts-http-runtime/src/policies/logPolicy.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Debugger } from "../logger/logger.js"; -import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -import { PipelinePolicy } from "../pipeline.js"; +import type { Debugger } from "../logger/logger.js"; +import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; +import type { PipelinePolicy } from "../pipeline.js"; import { logger as coreLogger } from "../log.js"; import { Sanitizer } from "../util/sanitizer.js"; diff --git a/sdk/core/ts-http-runtime/src/policies/multipartPolicy.ts b/sdk/core/ts-http-runtime/src/policies/multipartPolicy.ts index 2353450717c6..268c132ad0de 100644 --- a/sdk/core/ts-http-runtime/src/policies/multipartPolicy.ts +++ b/sdk/core/ts-http-runtime/src/policies/multipartPolicy.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import type { BodyPart, HttpHeaders, PipelineRequest, PipelineResponse } from "../interfaces.js"; -import { PipelinePolicy } from "../pipeline.js"; +import type { PipelinePolicy } from "../pipeline.js"; import { stringToUint8Array } from "../util/bytesEncoding.js"; import { isBlob } from "../util/typeGuards.js"; import { randomUUID } from "../util/uuidUtils.js"; diff --git a/sdk/core/ts-http-runtime/src/policies/redirectPolicy.ts b/sdk/core/ts-http-runtime/src/policies/redirectPolicy.ts index 3bbeb172f3ed..1b8bf2ca9a8e 100644 --- a/sdk/core/ts-http-runtime/src/policies/redirectPolicy.ts +++ b/sdk/core/ts-http-runtime/src/policies/redirectPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -import { PipelinePolicy } from "../pipeline.js"; +import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; +import type { PipelinePolicy } from "../pipeline.js"; /** * The programmatic identifier of the redirectPolicy. diff --git a/sdk/core/ts-http-runtime/src/policies/retryPolicy.ts b/sdk/core/ts-http-runtime/src/policies/retryPolicy.ts index 1071226d856a..63f4f2a7c5af 100644 --- a/sdk/core/ts-http-runtime/src/policies/retryPolicy.ts +++ b/sdk/core/ts-http-runtime/src/policies/retryPolicy.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -import { PipelinePolicy } from "../pipeline.js"; +import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; +import type { PipelinePolicy } from "../pipeline.js"; import { delay } from "../util/helpers.js"; -import { RetryStrategy } from "../retryStrategies/retryStrategy.js"; -import { RestError } from "../restError.js"; +import type { RetryStrategy } from "../retryStrategies/retryStrategy.js"; +import type { RestError } from "../restError.js"; import { AbortError } from "../abort-controller/AbortError.js"; -import { TypeSpecRuntimeLogger, createClientLogger } from "../logger/logger.js"; +import type { TypeSpecRuntimeLogger } from "../logger/logger.js"; +import { createClientLogger } from "../logger/logger.js"; import { DEFAULT_RETRY_POLICY_COUNT } from "../constants.js"; const retryPolicyLogger = createClientLogger("core-rest-pipeline retryPolicy"); diff --git a/sdk/core/ts-http-runtime/src/policies/systemErrorRetryPolicy.ts b/sdk/core/ts-http-runtime/src/policies/systemErrorRetryPolicy.ts index 86226504b643..4c8bf6245534 100644 --- a/sdk/core/ts-http-runtime/src/policies/systemErrorRetryPolicy.ts +++ b/sdk/core/ts-http-runtime/src/policies/systemErrorRetryPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelinePolicy } from "../pipeline.js"; +import type { PipelinePolicy } from "../pipeline.js"; import { exponentialRetryStrategy } from "../retryStrategies/exponentialRetryStrategy.js"; import { retryPolicy } from "./retryPolicy.js"; import { DEFAULT_RETRY_POLICY_COUNT } from "../constants.js"; diff --git a/sdk/core/ts-http-runtime/src/policies/throttlingRetryPolicy.ts b/sdk/core/ts-http-runtime/src/policies/throttlingRetryPolicy.ts index 168851de5e39..07cd51c26fb7 100644 --- a/sdk/core/ts-http-runtime/src/policies/throttlingRetryPolicy.ts +++ b/sdk/core/ts-http-runtime/src/policies/throttlingRetryPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelinePolicy } from "../pipeline.js"; +import type { PipelinePolicy } from "../pipeline.js"; import { throttlingRetryStrategy } from "../retryStrategies/throttlingRetryStrategy.js"; import { retryPolicy } from "./retryPolicy.js"; import { DEFAULT_RETRY_POLICY_COUNT } from "../constants.js"; diff --git a/sdk/core/ts-http-runtime/src/policies/tlsPolicy.ts b/sdk/core/ts-http-runtime/src/policies/tlsPolicy.ts index 79f19f192d75..0e788725280e 100644 --- a/sdk/core/ts-http-runtime/src/policies/tlsPolicy.ts +++ b/sdk/core/ts-http-runtime/src/policies/tlsPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelinePolicy } from "../pipeline.js"; -import { TlsSettings } from "../interfaces.js"; +import type { PipelinePolicy } from "../pipeline.js"; +import type { TlsSettings } from "../interfaces.js"; /** * Name of the TLS Policy diff --git a/sdk/core/ts-http-runtime/src/policies/tracingPolicy.ts b/sdk/core/ts-http-runtime/src/policies/tracingPolicy.ts index 1d824c0fa022..34fad8948451 100644 --- a/sdk/core/ts-http-runtime/src/policies/tracingPolicy.ts +++ b/sdk/core/ts-http-runtime/src/policies/tracingPolicy.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TracingClient, TracingContext, TracingSpan } from "../tracing/interfaces.js"; +import type { TracingClient, TracingContext, TracingSpan } from "../tracing/interfaces.js"; import { createTracingClient } from "../tracing/tracingClient.js"; import { SDK_VERSION } from "../constants.js"; -import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -import { PipelinePolicy } from "../pipeline.js"; +import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; +import type { PipelinePolicy } from "../pipeline.js"; import { getUserAgentValue } from "../util/userAgent.js"; import { logger } from "../log.js"; import { getErrorMessage, isError } from "../util/error.js"; diff --git a/sdk/core/ts-http-runtime/src/policies/userAgentPolicy.ts b/sdk/core/ts-http-runtime/src/policies/userAgentPolicy.ts index e8a144aeeb74..bd5de30a2fa2 100644 --- a/sdk/core/ts-http-runtime/src/policies/userAgentPolicy.ts +++ b/sdk/core/ts-http-runtime/src/policies/userAgentPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; -import { PipelinePolicy } from "../pipeline.js"; +import type { PipelineRequest, PipelineResponse, SendRequest } from "../interfaces.js"; +import type { PipelinePolicy } from "../pipeline.js"; import { getUserAgentHeaderName, getUserAgentValue } from "../util/userAgent.js"; const UserAgentHeaderName = getUserAgentHeaderName(); diff --git a/sdk/core/ts-http-runtime/src/restError.ts b/sdk/core/ts-http-runtime/src/restError.ts index 71472b4bb73a..bc09e78fe870 100644 --- a/sdk/core/ts-http-runtime/src/restError.ts +++ b/sdk/core/ts-http-runtime/src/restError.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { isError } from "./util/error.js"; -import { PipelineRequest, PipelineResponse } from "./interfaces.js"; +import type { PipelineRequest, PipelineResponse } from "./interfaces.js"; import { custom } from "./util/inspect.js"; import { Sanitizer } from "./util/sanitizer.js"; diff --git a/sdk/core/ts-http-runtime/src/retryStrategies/exponentialRetryStrategy.ts b/sdk/core/ts-http-runtime/src/retryStrategies/exponentialRetryStrategy.ts index d33e7fee27fe..568e864149a4 100644 --- a/sdk/core/ts-http-runtime/src/retryStrategies/exponentialRetryStrategy.ts +++ b/sdk/core/ts-http-runtime/src/retryStrategies/exponentialRetryStrategy.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelineResponse } from "../interfaces.js"; -import { RestError } from "../restError.js"; +import type { PipelineResponse } from "../interfaces.js"; +import type { RestError } from "../restError.js"; import { calculateRetryDelay } from "../util/delay.js"; -import { RetryStrategy } from "./retryStrategy.js"; +import type { RetryStrategy } from "./retryStrategy.js"; import { isThrottlingRetryResponse } from "./throttlingRetryStrategy.js"; // intervals are in milliseconds diff --git a/sdk/core/ts-http-runtime/src/retryStrategies/retryStrategy.ts b/sdk/core/ts-http-runtime/src/retryStrategies/retryStrategy.ts index 332b8b878d6b..bc11b52285f0 100644 --- a/sdk/core/ts-http-runtime/src/retryStrategies/retryStrategy.ts +++ b/sdk/core/ts-http-runtime/src/retryStrategies/retryStrategy.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TypeSpecRuntimeLogger } from "../logger/logger.js"; -import { PipelineResponse } from "../interfaces.js"; -import { RestError } from "../restError.js"; +import type { TypeSpecRuntimeLogger } from "../logger/logger.js"; +import type { PipelineResponse } from "../interfaces.js"; +import type { RestError } from "../restError.js"; /** * Information provided to the retry strategy about the current progress of the retry policy. diff --git a/sdk/core/ts-http-runtime/src/retryStrategies/throttlingRetryStrategy.ts b/sdk/core/ts-http-runtime/src/retryStrategies/throttlingRetryStrategy.ts index b72971468cbb..5c8d4ed7232b 100644 --- a/sdk/core/ts-http-runtime/src/retryStrategies/throttlingRetryStrategy.ts +++ b/sdk/core/ts-http-runtime/src/retryStrategies/throttlingRetryStrategy.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelineResponse } from "../index.js"; +import type { PipelineResponse } from "../index.js"; import { parseHeaderValueAsNumber } from "../util/helpers.js"; -import { RetryStrategy } from "./retryStrategy.js"; +import type { RetryStrategy } from "./retryStrategy.js"; /** * The header that comes back from services representing diff --git a/sdk/core/ts-http-runtime/src/tracing/instrumenter.ts b/sdk/core/ts-http-runtime/src/tracing/instrumenter.ts index e3b792143529..28f5729dc540 100644 --- a/sdk/core/ts-http-runtime/src/tracing/instrumenter.ts +++ b/sdk/core/ts-http-runtime/src/tracing/instrumenter.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { Instrumenter, InstrumenterSpanOptions, TracingContext, diff --git a/sdk/core/ts-http-runtime/src/tracing/state-browser.mts b/sdk/core/ts-http-runtime/src/tracing/state-browser.mts index c67a2bc80451..6e5627125e50 100644 --- a/sdk/core/ts-http-runtime/src/tracing/state-browser.mts +++ b/sdk/core/ts-http-runtime/src/tracing/state-browser.mts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Instrumenter } from "./interfaces.js"; +import type { Instrumenter } from "./interfaces.js"; /** * Browser-only implementation of the module's state. The browser esm variant will not load the commonjs state, so we do not need to share state between the two. diff --git a/sdk/core/ts-http-runtime/src/tracing/state.ts b/sdk/core/ts-http-runtime/src/tracing/state.ts index 852ef3b9316c..ccb13f4c8d79 100644 --- a/sdk/core/ts-http-runtime/src/tracing/state.ts +++ b/sdk/core/ts-http-runtime/src/tracing/state.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Instrumenter } from "./interfaces.js"; +import type { Instrumenter } from "./interfaces.js"; // @ts-expect-error The recommended approach to sharing module state between ESM and CJS. // See https://github.com/isaacs/tshy/blob/main/README.md#module-local-state for additional information. import { state as cjsState } from "../commonjs/tracing/state.js"; diff --git a/sdk/core/ts-http-runtime/src/tracing/tracingClient.ts b/sdk/core/ts-http-runtime/src/tracing/tracingClient.ts index a961e7e0ce1f..3e9603dbd6f7 100644 --- a/sdk/core/ts-http-runtime/src/tracing/tracingClient.ts +++ b/sdk/core/ts-http-runtime/src/tracing/tracingClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { OperationTracingOptions, OptionsWithTracingContext, Resolved, diff --git a/sdk/core/ts-http-runtime/src/tracing/tracingContext.ts b/sdk/core/ts-http-runtime/src/tracing/tracingContext.ts index 0d6dc15867bb..5528c7a8f466 100644 --- a/sdk/core/ts-http-runtime/src/tracing/tracingContext.ts +++ b/sdk/core/ts-http-runtime/src/tracing/tracingContext.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TracingContext, TracingSpan } from "./interfaces.js"; +import type { TracingContext, TracingSpan } from "./interfaces.js"; /** @internal */ export const knownContextKeys = { diff --git a/sdk/core/ts-http-runtime/src/util/aborterUtils.ts b/sdk/core/ts-http-runtime/src/util/aborterUtils.ts index 82e102a3e5d7..cde2d52cd084 100644 --- a/sdk/core/ts-http-runtime/src/util/aborterUtils.ts +++ b/sdk/core/ts-http-runtime/src/util/aborterUtils.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; +import type { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; /** * Options related to abort controller. diff --git a/sdk/core/ts-http-runtime/src/util/createAbortablePromise.ts b/sdk/core/ts-http-runtime/src/util/createAbortablePromise.ts index 5eba77e53304..685eaedb40ed 100644 --- a/sdk/core/ts-http-runtime/src/util/createAbortablePromise.ts +++ b/sdk/core/ts-http-runtime/src/util/createAbortablePromise.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { AbortError } from "../abort-controller/AbortError.js"; -import { AbortOptions } from "./aborterUtils.js"; +import type { AbortOptions } from "./aborterUtils.js"; /** * Options for the createAbortablePromise function. diff --git a/sdk/core/ts-http-runtime/src/util/helpers.ts b/sdk/core/ts-http-runtime/src/util/helpers.ts index 421e29868540..7272d5d0ea62 100644 --- a/sdk/core/ts-http-runtime/src/util/helpers.ts +++ b/sdk/core/ts-http-runtime/src/util/helpers.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { AbortError } from "../abort-controller/AbortError.js"; -import { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; -import { PipelineResponse } from "../interfaces.js"; +import type { AbortSignalLike } from "../abort-controller/AbortSignalLike.js"; +import type { PipelineResponse } from "../interfaces.js"; const StandardAbortMessage = "The operation was aborted."; diff --git a/sdk/core/ts-http-runtime/src/util/tokenCycler.ts b/sdk/core/ts-http-runtime/src/util/tokenCycler.ts index 034c7b0134c0..723a36d32947 100644 --- a/sdk/core/ts-http-runtime/src/util/tokenCycler.ts +++ b/sdk/core/ts-http-runtime/src/util/tokenCycler.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "../auth/tokenCredential.js"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "../auth/tokenCredential.js"; import { delay } from "./helpers.js"; /** diff --git a/sdk/core/ts-http-runtime/src/xhrHttpClient.ts b/sdk/core/ts-http-runtime/src/xhrHttpClient.ts index 20040f8b3671..c82fcb751b82 100644 --- a/sdk/core/ts-http-runtime/src/xhrHttpClient.ts +++ b/sdk/core/ts-http-runtime/src/xhrHttpClient.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { AbortError } from "./abort-controller/AbortError.js"; -import { +import type { HttpClient, HttpHeaders, PipelineRequest, diff --git a/sdk/core/ts-http-runtime/test/bearerTokenAuthenticationPolicy.spec.ts b/sdk/core/ts-http-runtime/test/bearerTokenAuthenticationPolicy.spec.ts index aeac24825c71..46722fcde5fb 100644 --- a/sdk/core/ts-http-runtime/test/bearerTokenAuthenticationPolicy.spec.ts +++ b/sdk/core/ts-http-runtime/test/bearerTokenAuthenticationPolicy.spec.ts @@ -2,12 +2,14 @@ // Licensed under the MIT License. import { describe, it, assert, expect, vi, beforeEach, afterEach } from "vitest"; -import { AccessToken, TokenCredential } from "../src/auth/tokenCredential.js"; -import { +import type { AccessToken, TokenCredential } from "../src/auth/tokenCredential.js"; +import type { AuthorizeRequestOnChallengeOptions, PipelinePolicy, PipelineResponse, SendRequest, +} from "../src/index.js"; +import { bearerTokenAuthenticationPolicy, createHttpHeaders, createPipelineRequest, diff --git a/sdk/core/ts-http-runtime/test/browser/fetchHttpClient.spec.ts b/sdk/core/ts-http-runtime/test/browser/fetchHttpClient.spec.ts index 1ec8c8145e87..abc775ad3cd0 100644 --- a/sdk/core/ts-http-runtime/test/browser/fetchHttpClient.spec.ts +++ b/sdk/core/ts-http-runtime/test/browser/fetchHttpClient.spec.ts @@ -7,7 +7,7 @@ import { createPipelineRequest } from "../../src/pipelineRequest.js"; import { png } from "./mocks/encodedPng.js"; import { createHttpHeaders } from "../../src/httpHeaders.js"; import { AbortError } from "../../src/abort-controller/AbortError.js"; -import { AbortSignalLike } from "../../src/abort-controller/AbortSignalLike.js"; +import type { AbortSignalLike } from "../../src/abort-controller/AbortSignalLike.js"; import { delay } from "../../src/util/helpers.js"; const streamBody = new ReadableStream({ diff --git a/sdk/core/ts-http-runtime/test/client/clientHelpers.spec.ts b/sdk/core/ts-http-runtime/test/client/clientHelpers.spec.ts index ea0dbd92dc3d..444496faa7aa 100644 --- a/sdk/core/ts-http-runtime/test/client/clientHelpers.spec.ts +++ b/sdk/core/ts-http-runtime/test/client/clientHelpers.spec.ts @@ -5,7 +5,7 @@ import { describe, it, assert } from "vitest"; import { createDefaultPipeline } from "../../src/client/clientHelpers.js"; import { bearerTokenAuthenticationPolicyName } from "../../src/policies/bearerTokenAuthenticationPolicy.js"; import { keyCredentialAuthenticationPolicyName } from "../../src/client/keyCredentialAuthenticationPolicy.js"; -import { TokenCredential } from "../../src/auth/tokenCredential.js"; +import type { TokenCredential } from "../../src/auth/tokenCredential.js"; import { apiVersionPolicyName } from "../../src/client/apiVersionPolicy.js"; describe("clientHelpers", () => { diff --git a/sdk/core/ts-http-runtime/test/client/createRestError.spec.ts b/sdk/core/ts-http-runtime/test/client/createRestError.spec.ts index a41550b0d6e9..8e339753e46e 100644 --- a/sdk/core/ts-http-runtime/test/client/createRestError.spec.ts +++ b/sdk/core/ts-http-runtime/test/client/createRestError.spec.ts @@ -3,7 +3,7 @@ import { describe, it, assert } from "vitest"; import { createRestError } from "../../src/client/restError.js"; -import { PipelineRequest } from "../../src/interfaces.js"; +import type { PipelineRequest } from "../../src/interfaces.js"; describe("createRestError", () => { it("should create a rest error from a PathUnchecked response with standard error", () => { diff --git a/sdk/core/ts-http-runtime/test/client/getClient.spec.ts b/sdk/core/ts-http-runtime/test/client/getClient.spec.ts index 02d27bf78fcf..772de7d93a20 100644 --- a/sdk/core/ts-http-runtime/test/client/getClient.spec.ts +++ b/sdk/core/ts-http-runtime/test/client/getClient.spec.ts @@ -4,13 +4,13 @@ import { describe, it, assert, vi, afterEach } from "vitest"; import { getCachedDefaultHttpsClient } from "../../src/client/clientHelpers.js"; import { getClient } from "../../src/client/getClient.js"; -import { +import type { HttpClient, PipelineRequest, PipelineResponse, SendRequest, } from "../../src/interfaces.js"; -import { PipelinePolicy } from "../../src/pipeline.js"; +import type { PipelinePolicy } from "../../src/pipeline.js"; import { createHttpHeaders } from "../../src/httpHeaders.js"; describe("getClient", () => { diff --git a/sdk/core/ts-http-runtime/test/client/multipart.spec.ts b/sdk/core/ts-http-runtime/test/client/multipart.spec.ts index 267ea690e97c..e4e78f6db4ea 100644 --- a/sdk/core/ts-http-runtime/test/client/multipart.spec.ts +++ b/sdk/core/ts-http-runtime/test/client/multipart.spec.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert } from "vitest"; -import { PartDescriptor, buildBodyPart } from "../../src/client/multipart.js"; +import type { PartDescriptor } from "../../src/client/multipart.js"; +import { buildBodyPart } from "../../src/client/multipart.js"; import { stringToUint8Array } from "../../src/util/bytesEncoding.js"; describe("multipart buildBodyPart", () => { diff --git a/sdk/core/ts-http-runtime/test/client/sendRequest.spec.ts b/sdk/core/ts-http-runtime/test/client/sendRequest.spec.ts index a621b383f658..9721334c108f 100644 --- a/sdk/core/ts-http-runtime/test/client/sendRequest.spec.ts +++ b/sdk/core/ts-http-runtime/test/client/sendRequest.spec.ts @@ -4,11 +4,12 @@ import { describe, it, assert } from "vitest"; import { sendRequest } from "../../src/client/sendRequest.js"; import { RestError } from "../../src/restError.js"; -import { MultipartRequestBody, PipelineResponse } from "../../src/interfaces.js"; -import { Pipeline, createEmptyPipeline } from "../../src/pipeline.js"; +import type { MultipartRequestBody, PipelineResponse } from "../../src/interfaces.js"; +import type { Pipeline } from "../../src/pipeline.js"; +import { createEmptyPipeline } from "../../src/pipeline.js"; import { createHttpHeaders } from "../../src/httpHeaders.js"; import { stringToUint8Array } from "../../src/util/bytesEncoding.js"; -import { PartDescriptor } from "../../src/client/multipart.js"; +import type { PartDescriptor } from "../../src/client/multipart.js"; describe("sendRequest", () => { const foo = new Uint8Array([0x66, 0x6f, 0x6f]); diff --git a/sdk/core/ts-http-runtime/test/defaultLogPolicy.spec.ts b/sdk/core/ts-http-runtime/test/defaultLogPolicy.spec.ts index c2512654abc2..8e9590456755 100644 --- a/sdk/core/ts-http-runtime/test/defaultLogPolicy.spec.ts +++ b/sdk/core/ts-http-runtime/test/defaultLogPolicy.spec.ts @@ -3,7 +3,7 @@ import { describe, it, assert, vi } from "vitest"; import { DEFAULT_RETRY_POLICY_COUNT } from "../src/constants.js"; -import { PipelinePolicy } from "../src/pipeline.js"; +import type { PipelinePolicy } from "../src/pipeline.js"; import { createHttpHeaders } from "../src/httpHeaders.js"; import { createPipelineFromOptions } from "../src/createPipelineFromOptions.js"; import { createPipelineRequest } from "../src/pipelineRequest.js"; diff --git a/sdk/core/ts-http-runtime/test/defaultRetryPolicy.spec.ts b/sdk/core/ts-http-runtime/test/defaultRetryPolicy.spec.ts index ebffc09094c7..bfe72d3e72d9 100644 --- a/sdk/core/ts-http-runtime/test/defaultRetryPolicy.spec.ts +++ b/sdk/core/ts-http-runtime/test/defaultRetryPolicy.spec.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert, expect, vi, afterEach } from "vitest"; -import { RestError, SendRequest, createPipelineRequest, defaultRetryPolicy } from "../src/index.js"; +import type { SendRequest } from "../src/index.js"; +import { RestError, createPipelineRequest, defaultRetryPolicy } from "../src/index.js"; import { DEFAULT_RETRY_POLICY_COUNT } from "../src/constants.js"; describe("defaultRetryPolicy", function () { diff --git a/sdk/core/ts-http-runtime/test/exponentialRetryPolicy.spec.ts b/sdk/core/ts-http-runtime/test/exponentialRetryPolicy.spec.ts index 91e0efefbb6f..9b84f8dbfa63 100644 --- a/sdk/core/ts-http-runtime/test/exponentialRetryPolicy.spec.ts +++ b/sdk/core/ts-http-runtime/test/exponentialRetryPolicy.spec.ts @@ -2,13 +2,8 @@ // Licensed under the MIT License. import { describe, it, expect, vi, afterEach } from "vitest"; -import { - PipelineResponse, - RestError, - SendRequest, - createHttpHeaders, - createPipelineRequest, -} from "../src/index.js"; +import type { PipelineResponse, SendRequest } from "../src/index.js"; +import { RestError, createHttpHeaders, createPipelineRequest } from "../src/index.js"; import { exponentialRetryPolicy } from "../src/policies/exponentialRetryPolicy.js"; import { DEFAULT_RETRY_POLICY_COUNT } from "../src/constants.js"; diff --git a/sdk/core/ts-http-runtime/test/formDataPolicy.spec.ts b/sdk/core/ts-http-runtime/test/formDataPolicy.spec.ts index cfa44421c0f4..216e22198cbd 100644 --- a/sdk/core/ts-http-runtime/test/formDataPolicy.spec.ts +++ b/sdk/core/ts-http-runtime/test/formDataPolicy.spec.ts @@ -2,9 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert, vi } from "vitest"; +import type { PipelineResponse, SendRequest } from "../src/index.js"; import { - PipelineResponse, - SendRequest, createFile, createFileFromStream, createHttpHeaders, @@ -14,7 +13,7 @@ import { isNodeLike, stringToUint8Array, } from "../src/index.js"; -import { BodyPart, FormDataMap, MultipartRequestBody } from "../src/interfaces.js"; +import type { BodyPart, FormDataMap, MultipartRequestBody } from "../src/interfaces.js"; export async function performRequest(formData: FormDataMap): Promise { const request = createPipelineRequest({ diff --git a/sdk/core/ts-http-runtime/test/logger/debug.spec.ts b/sdk/core/ts-http-runtime/test/logger/debug.spec.ts index 6f664e71d33b..68187ec8bc51 100644 --- a/sdk/core/ts-http-runtime/test/logger/debug.spec.ts +++ b/sdk/core/ts-http-runtime/test/logger/debug.spec.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert, expect, vi, beforeEach, afterEach, type MockInstance } from "vitest"; -import debug, { Debugger } from "../../src/logger/debug.js"; +import type { Debugger } from "../../src/logger/debug.js"; +import debug from "../../src/logger/debug.js"; describe("debug", function () { let logger: Debugger; diff --git a/sdk/core/ts-http-runtime/test/multipartPolicy.spec.ts b/sdk/core/ts-http-runtime/test/multipartPolicy.spec.ts index a80c63bbfa6b..0d56ecea0d69 100644 --- a/sdk/core/ts-http-runtime/test/multipartPolicy.spec.ts +++ b/sdk/core/ts-http-runtime/test/multipartPolicy.spec.ts @@ -3,10 +3,10 @@ import { describe, it, assert, vi, expect } from "vitest"; import { createHttpHeaders } from "../src/httpHeaders.js"; -import { PipelineRequest, PipelineResponse, SendRequest } from "../src/interfaces.js"; +import type { PipelineRequest, PipelineResponse, SendRequest } from "../src/interfaces.js"; import { createPipelineRequest } from "../src/pipelineRequest.js"; import { multipartPolicy } from "../src/policies/multipartPolicy.js"; -import { PipelineRequestOptions } from "../src/pipelineRequest.js"; +import type { PipelineRequestOptions } from "../src/pipelineRequest.js"; import { stringToUint8Array } from "../src/util/bytesEncoding.js"; import { assertBodyMatches } from "./util.js"; diff --git a/sdk/core/ts-http-runtime/test/node/bearerTokenAuthenticationPolicyChallenge.spec.ts b/sdk/core/ts-http-runtime/test/node/bearerTokenAuthenticationPolicyChallenge.spec.ts index fc72e989dff3..8394c29f0be4 100644 --- a/sdk/core/ts-http-runtime/test/node/bearerTokenAuthenticationPolicyChallenge.spec.ts +++ b/sdk/core/ts-http-runtime/test/node/bearerTokenAuthenticationPolicyChallenge.spec.ts @@ -2,11 +2,17 @@ // Licensed under the MIT License. import { describe, it, assert, vi, beforeEach, afterEach } from "vitest"; -import { AccessToken, GetTokenOptions, TokenCredential } from "../../src/auth/tokenCredential.js"; -import { +import type { + AccessToken, + GetTokenOptions, + TokenCredential, +} from "../../src/auth/tokenCredential.js"; +import type { AuthorizeRequestOnChallengeOptions, HttpClient, PipelineResponse, +} from "../../src/index.js"; +import { bearerTokenAuthenticationPolicy, createEmptyPipeline, createHttpHeaders, diff --git a/sdk/core/ts-http-runtime/test/node/decompressResponsePolicy.ts b/sdk/core/ts-http-runtime/test/node/decompressResponsePolicy.ts index 3b1b82b5e6cf..bf4451dc408d 100644 --- a/sdk/core/ts-http-runtime/test/node/decompressResponsePolicy.ts +++ b/sdk/core/ts-http-runtime/test/node/decompressResponsePolicy.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert, expect, vi } from "vitest"; -import { SendRequest, createPipelineRequest, decompressResponsePolicy } from "../../src/index.js"; +import type { SendRequest } from "../../src/index.js"; +import { createPipelineRequest, decompressResponsePolicy } from "../../src/index.js"; describe("decompressResponsePolicy (node)", function () { it("Sets the expected flag on the request", function () { diff --git a/sdk/core/ts-http-runtime/test/node/formDataPolicy.spec.ts b/sdk/core/ts-http-runtime/test/node/formDataPolicy.spec.ts index add15e331107..b65242148022 100644 --- a/sdk/core/ts-http-runtime/test/node/formDataPolicy.spec.ts +++ b/sdk/core/ts-http-runtime/test/node/formDataPolicy.spec.ts @@ -3,7 +3,7 @@ import { describe, it, assert } from "vitest"; import { createHttpHeaders } from "../../src/httpHeaders.js"; -import { MultipartRequestBody } from "../../src/interfaces.js"; +import type { MultipartRequestBody } from "../../src/interfaces.js"; import { isBlob } from "../../src/util/typeGuards.js"; import { Readable } from "node:stream"; import { performRequest } from "../formDataPolicy.spec.js"; diff --git a/sdk/core/ts-http-runtime/test/node/nodeHttpClient.spec.ts b/sdk/core/ts-http-runtime/test/node/nodeHttpClient.spec.ts index 6ab1ae6c4f15..aae1e1662c35 100644 --- a/sdk/core/ts-http-runtime/test/node/nodeHttpClient.spec.ts +++ b/sdk/core/ts-http-runtime/test/node/nodeHttpClient.spec.ts @@ -3,8 +3,8 @@ import { describe, it, assert, vi, beforeEach, afterEach } from "vitest"; import { PassThrough, Writable } from "node:stream"; -import { ClientRequest, IncomingHttpHeaders, IncomingMessage } from "http"; -import { AbortSignalLike } from "../../src/abort-controller/AbortSignalLike.js"; +import type { ClientRequest, IncomingHttpHeaders, IncomingMessage } from "http"; +import type { AbortSignalLike } from "../../src/abort-controller/AbortSignalLike.js"; import { createDefaultHttpClient, createPipelineRequest, delay } from "../../src/index.js"; vi.mock("https", async () => { diff --git a/sdk/core/ts-http-runtime/test/node/pipeline.spec.ts b/sdk/core/ts-http-runtime/test/node/pipeline.spec.ts index 3c63bf4fcecc..edf11c4c9adb 100644 --- a/sdk/core/ts-http-runtime/test/node/pipeline.spec.ts +++ b/sdk/core/ts-http-runtime/test/node/pipeline.spec.ts @@ -4,7 +4,7 @@ import { describe, it, assert, vi, afterEach } from "vitest"; import { proxyPolicy, proxyPolicyName } from "../../src/policies/proxyPolicy.js"; import { tlsPolicy, tlsPolicyName } from "../../src/policies/tlsPolicy.js"; -import { HttpClient } from "../../src/interfaces.js"; +import type { HttpClient } from "../../src/interfaces.js"; import { HttpsProxyAgent } from "https-proxy-agent"; import { createEmptyPipeline } from "../../src/pipeline.js"; import { createHttpHeaders } from "../../src/httpHeaders.js"; diff --git a/sdk/core/ts-http-runtime/test/node/proxyPolicy.spec.ts b/sdk/core/ts-http-runtime/test/node/proxyPolicy.spec.ts index 87d396d71f5a..31cad1bcb75c 100644 --- a/sdk/core/ts-http-runtime/test/node/proxyPolicy.spec.ts +++ b/sdk/core/ts-http-runtime/test/node/proxyPolicy.spec.ts @@ -3,14 +3,13 @@ import * as process from "node:process"; import { describe, it, assert, vi, afterEach } from "vitest"; +import type { Agent, PipelineRequest } from "../../src/index.js"; import { type ProxySettings, type SendRequest, createPipelineRequest, getDefaultProxySettings, proxyPolicy, - Agent, - PipelineRequest, } from "../../src/index.js"; import { globalNoProxyList, loadNoProxy } from "../../src/policies/proxyPolicy.js"; diff --git a/sdk/core/ts-http-runtime/test/node/restError.spec.ts b/sdk/core/ts-http-runtime/test/node/restError.spec.ts index f31607e8c098..c81c70dedebb 100644 --- a/sdk/core/ts-http-runtime/test/node/restError.spec.ts +++ b/sdk/core/ts-http-runtime/test/node/restError.spec.ts @@ -2,12 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert } from "vitest"; -import { - PipelineResponse, - RestError, - createHttpHeaders, - createPipelineRequest, -} from "../../src/index.js"; +import type { PipelineResponse } from "../../src/index.js"; +import { RestError, createHttpHeaders, createPipelineRequest } from "../../src/index.js"; import { inspect } from "node:util"; describe("RestError", function () { diff --git a/sdk/core/ts-http-runtime/test/pipeline.spec.ts b/sdk/core/ts-http-runtime/test/pipeline.spec.ts index ce4b77189367..d2e1e97080df 100644 --- a/sdk/core/ts-http-runtime/test/pipeline.spec.ts +++ b/sdk/core/ts-http-runtime/test/pipeline.spec.ts @@ -2,9 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert } from "vitest"; +import type { HttpClient, PipelinePolicy } from "../src/index.js"; import { - HttpClient, - PipelinePolicy, createEmptyPipeline, createHttpHeaders, createPipelineFromOptions, diff --git a/sdk/core/ts-http-runtime/test/redirectPolicy.spec.ts b/sdk/core/ts-http-runtime/test/redirectPolicy.spec.ts index 48bd60dcf8b7..17a242da1dbe 100644 --- a/sdk/core/ts-http-runtime/test/redirectPolicy.spec.ts +++ b/sdk/core/ts-http-runtime/test/redirectPolicy.spec.ts @@ -3,12 +3,8 @@ import { describe, it, assert, expect, vi } from "vitest"; import { redirectPolicy } from "../src/policies/redirectPolicy.js"; -import { - PipelineResponse, - SendRequest, - createHttpHeaders, - createPipelineRequest, -} from "../src/index.js"; +import type { PipelineResponse, SendRequest } from "../src/index.js"; +import { createHttpHeaders, createPipelineRequest } from "../src/index.js"; describe("RedirectPolicy", () => { it("should not follow redirect if no location header", async () => { diff --git a/sdk/core/ts-http-runtime/test/restError.spec.ts b/sdk/core/ts-http-runtime/test/restError.spec.ts index 76b140057af8..156c38390dd8 100644 --- a/sdk/core/ts-http-runtime/test/restError.spec.ts +++ b/sdk/core/ts-http-runtime/test/restError.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { describe, it, assert } from "vitest"; -import { PipelineRequest, PipelineResponse } from "../src/interfaces.js"; +import type { PipelineRequest, PipelineResponse } from "../src/interfaces.js"; import { createHttpHeaders } from "../src/httpHeaders.js"; import { RestError } from "../src/restError.js"; diff --git a/sdk/core/ts-http-runtime/test/retryPolicy.spec.ts b/sdk/core/ts-http-runtime/test/retryPolicy.spec.ts index c413cd184466..f4ab2330b30d 100644 --- a/sdk/core/ts-http-runtime/test/retryPolicy.spec.ts +++ b/sdk/core/ts-http-runtime/test/retryPolicy.spec.ts @@ -2,13 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert, expect, vi, afterEach } from "vitest"; -import { - PipelineResponse, - RestError, - SendRequest, - createHttpHeaders, - createPipelineRequest, -} from "../src/index.js"; +import type { PipelineResponse, SendRequest } from "../src/index.js"; +import { RestError, createHttpHeaders, createPipelineRequest } from "../src/index.js"; import { retryPolicy } from "../src/policies/retryPolicy.js"; import { DEFAULT_RETRY_POLICY_COUNT } from "../src/constants.js"; import { makeTestLogger } from "./util.js"; diff --git a/sdk/core/ts-http-runtime/test/systemErrorRetryPolicy.spec.ts b/sdk/core/ts-http-runtime/test/systemErrorRetryPolicy.spec.ts index f361a7c436f7..752e01a4843f 100644 --- a/sdk/core/ts-http-runtime/test/systemErrorRetryPolicy.spec.ts +++ b/sdk/core/ts-http-runtime/test/systemErrorRetryPolicy.spec.ts @@ -2,13 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert, expect, vi, afterEach } from "vitest"; -import { - PipelineResponse, - RestError, - SendRequest, - createHttpHeaders, - createPipelineRequest, -} from "../src/index.js"; +import type { PipelineResponse, SendRequest } from "../src/index.js"; +import { RestError, createHttpHeaders, createPipelineRequest } from "../src/index.js"; import { systemErrorRetryPolicy } from "../src/policies/systemErrorRetryPolicy.js"; import { DEFAULT_RETRY_POLICY_COUNT } from "../src/constants.js"; diff --git a/sdk/core/ts-http-runtime/test/throttlingRetryPolicy.spec.ts b/sdk/core/ts-http-runtime/test/throttlingRetryPolicy.spec.ts index b43a16171b47..040be33427fb 100644 --- a/sdk/core/ts-http-runtime/test/throttlingRetryPolicy.spec.ts +++ b/sdk/core/ts-http-runtime/test/throttlingRetryPolicy.spec.ts @@ -2,12 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert, expect, vi, afterEach } from "vitest"; -import { - PipelineResponse, - SendRequest, - createHttpHeaders, - createPipelineRequest, -} from "../src/index.js"; +import type { PipelineResponse, SendRequest } from "../src/index.js"; +import { createHttpHeaders, createPipelineRequest } from "../src/index.js"; import { throttlingRetryPolicy } from "../src/policies/throttlingRetryPolicy.js"; import { DEFAULT_RETRY_POLICY_COUNT } from "../src/constants.js"; diff --git a/sdk/core/ts-http-runtime/test/tracing/instrumenter.spec.ts b/sdk/core/ts-http-runtime/test/tracing/instrumenter.spec.ts index 15d3390aa681..1ed8ed50a384 100644 --- a/sdk/core/ts-http-runtime/test/tracing/instrumenter.spec.ts +++ b/sdk/core/ts-http-runtime/test/tracing/instrumenter.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Instrumenter, TracingSpan } from "../../src/tracing/interfaces.js"; +import type { Instrumenter, TracingSpan } from "../../src/tracing/interfaces.js"; import { createDefaultInstrumenter, createDefaultTracingSpan, diff --git a/sdk/core/ts-http-runtime/test/tracing/interfaces.spec.ts b/sdk/core/ts-http-runtime/test/tracing/interfaces.spec.ts index b3f0dde72f35..dca18ae2990b 100644 --- a/sdk/core/ts-http-runtime/test/tracing/interfaces.spec.ts +++ b/sdk/core/ts-http-runtime/test/tracing/interfaces.spec.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert } from "vitest"; -import { GetTokenOptions } from "../../src/auth/tokenCredential.js"; -import { OperationTracingOptions } from "../../src/tracing/interfaces.js"; +import type { GetTokenOptions } from "../../src/auth/tokenCredential.js"; +import type { OperationTracingOptions } from "../../src/tracing/interfaces.js"; import { createTracingContext } from "../../src/tracing/tracingContext.js"; describe("Interface compatibility", () => { diff --git a/sdk/core/ts-http-runtime/test/tracing/tracingClient.spec.ts b/sdk/core/ts-http-runtime/test/tracing/tracingClient.spec.ts index cc172e790baf..37943c777109 100644 --- a/sdk/core/ts-http-runtime/test/tracing/tracingClient.spec.ts +++ b/sdk/core/ts-http-runtime/test/tracing/tracingClient.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { describe, it, assert, expect, vi, beforeEach, afterEach } from "vitest"; -import { +import type { Instrumenter, TracingClient, TracingContext, diff --git a/sdk/core/ts-http-runtime/test/tracingPolicy.spec.ts b/sdk/core/ts-http-runtime/test/tracingPolicy.spec.ts index e37407c168b5..2da62afd9dfc 100644 --- a/sdk/core/ts-http-runtime/test/tracingPolicy.spec.ts +++ b/sdk/core/ts-http-runtime/test/tracingPolicy.spec.ts @@ -2,16 +2,14 @@ // Licensed under the MIT License. import { describe, it, assert, expect, vi, beforeEach, afterEach, type Mock } from "vitest"; +import type { PipelineRequest, PipelineResponse, SendRequest } from "../src/index.js"; import { - PipelineRequest, - PipelineResponse, RestError, - SendRequest, createHttpHeaders, createPipelineRequest, tracingPolicy, } from "../src/index.js"; -import { +import type { Instrumenter, InstrumenterSpanOptions, SpanStatus, diff --git a/sdk/core/ts-http-runtime/test/util.ts b/sdk/core/ts-http-runtime/test/util.ts index fd149a5c4126..ef20bbe5afa4 100644 --- a/sdk/core/ts-http-runtime/test/util.ts +++ b/sdk/core/ts-http-runtime/test/util.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { assert } from "vitest"; -import { TypeSpecRuntimeLogger } from "../src/logger/logger.js"; -import { RequestBodyType } from "../src/interfaces.js"; +import type { TypeSpecRuntimeLogger } from "../src/logger/logger.js"; +import type { RequestBodyType } from "../src/interfaces.js"; import { isNodeReadableStream } from "../src/util/typeGuards.js"; export function makeTestLogger(): { diff --git a/sdk/core/ts-http-runtime/test/util/aborterUtils.spec.ts b/sdk/core/ts-http-runtime/test/util/aborterUtils.spec.ts index acb4f5838cee..4f8ece5f5355 100644 --- a/sdk/core/ts-http-runtime/test/util/aborterUtils.spec.ts +++ b/sdk/core/ts-http-runtime/test/util/aborterUtils.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { describe, it, assert, expect, vi, afterEach } from "vitest"; -import { AbortSignalLike } from "../../src/abort-controller/AbortSignalLike.js"; +import type { AbortSignalLike } from "../../src/abort-controller/AbortSignalLike.js"; import { cancelablePromiseRace, createAbortablePromise } from "../../src/index.js"; describe("createAbortablePromise", function () { diff --git a/sdk/cosmosdb/arm-cosmosdb/package.json b/sdk/cosmosdb/arm-cosmosdb/package.json index 677115534b83..a1603eee5cb3 100644 --- a/sdk/cosmosdb/arm-cosmosdb/package.json +++ b/sdk/cosmosdb/arm-cosmosdb/package.json @@ -56,11 +56,11 @@ "prepack": "npm run build", "pack": "npm pack 2>&1", "test": "npm run integration-test", - "test:node": "echo skipped", "test:browser": "echo skipped", + "test:node": "echo skipped", "unit-test": "npm run unit-test:node && npm run unit-test:browser", - "unit-test:node": "cross-env TEST_MODE=playback npm run integration-test:node", "unit-test:browser": "echo skipped", + "unit-test:node": "cross-env TEST_MODE=playback npm run integration-test:node", "update-snippets": "echo skipped" }, "dependencies": { diff --git a/sdk/cosmosdb/cosmos/review/cosmos.api.md b/sdk/cosmosdb/cosmos/review/cosmos.api.md index afb3b5195e49..c587f04500eb 100644 --- a/sdk/cosmosdb/cosmos/review/cosmos.api.md +++ b/sdk/cosmosdb/cosmos/review/cosmos.api.md @@ -5,10 +5,10 @@ ```ts import { AbortError } from '@azure/abort-controller'; -import { HttpClient } from '@azure/core-rest-pipeline'; -import { Pipeline } from '@azure/core-rest-pipeline'; +import type { HttpClient } from '@azure/core-rest-pipeline'; +import type { Pipeline } from '@azure/core-rest-pipeline'; import { RestError } from '@azure/core-rest-pipeline'; -import { TokenCredential } from '@azure/core-auth'; +import type { TokenCredential } from '@azure/core-auth'; export { AbortError } diff --git a/sdk/cosmosdb/cosmos/src/ChangeFeedIterator.ts b/sdk/cosmosdb/cosmos/src/ChangeFeedIterator.ts index b4da9f7328ab..2fb13dc951d9 100644 --- a/sdk/cosmosdb/cosmos/src/ChangeFeedIterator.ts +++ b/sdk/cosmosdb/cosmos/src/ChangeFeedIterator.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. /// -import { ChangeFeedOptions } from "./ChangeFeedOptions"; +import type { ChangeFeedOptions } from "./ChangeFeedOptions"; import { ChangeFeedResponse } from "./ChangeFeedResponse"; -import { Resource } from "./client"; -import { ClientContext } from "./ClientContext"; +import type { Resource } from "./client"; +import type { ClientContext } from "./ClientContext"; import { Constants, ResourceType, StatusCodes } from "./common"; -import { DiagnosticNodeInternal } from "./diagnostics/DiagnosticNodeInternal"; -import { PartitionKey } from "./documents"; -import { FeedOptions } from "./request"; -import { Response } from "./request"; +import type { DiagnosticNodeInternal } from "./diagnostics/DiagnosticNodeInternal"; +import type { PartitionKey } from "./documents"; +import type { FeedOptions } from "./request"; +import type { Response } from "./request"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "./utils/diagnostics"; /** diff --git a/sdk/cosmosdb/cosmos/src/ChangeFeedResponse.ts b/sdk/cosmosdb/cosmos/src/ChangeFeedResponse.ts index 5444a91e80e0..a6109c6eea86 100644 --- a/sdk/cosmosdb/cosmos/src/ChangeFeedResponse.ts +++ b/sdk/cosmosdb/cosmos/src/ChangeFeedResponse.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics } from "./CosmosDiagnostics"; +import type { CosmosDiagnostics } from "./CosmosDiagnostics"; import { Constants } from "./common"; -import { CosmosHeaders } from "./queryExecutionContext"; +import type { CosmosHeaders } from "./queryExecutionContext"; /** * A single response page from the Azure Cosmos DB Change Feed diff --git a/sdk/cosmosdb/cosmos/src/ClientContext.ts b/sdk/cosmosdb/cosmos/src/ClientContext.ts index 0f814bbd99bf..16a4bcd22ce5 100644 --- a/sdk/cosmosdb/cosmos/src/ClientContext.ts +++ b/sdk/cosmosdb/cosmos/src/ClientContext.ts @@ -1,50 +1,41 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - HttpClient, - Pipeline, - bearerTokenAuthenticationPolicy, - createEmptyPipeline, -} from "@azure/core-rest-pipeline"; -import { PartitionKeyRange } from "./client/Container/PartitionKeyRange"; -import { Resource } from "./client/Resource"; +import type { HttpClient, Pipeline } from "@azure/core-rest-pipeline"; +import { bearerTokenAuthenticationPolicy, createEmptyPipeline } from "@azure/core-rest-pipeline"; +import type { PartitionKeyRange } from "./client/Container/PartitionKeyRange"; +import type { Resource } from "./client/Resource"; import { Constants, HTTPMethod, OperationType, ResourceType } from "./common/constants"; import { getIdFromLink, getPathFromLink, parseLink } from "./common/helper"; import { StatusCodes, SubStatusCodes } from "./common/statusCodes"; -import { Agent, CosmosClientOptions } from "./CosmosClientOptions"; -import { - ConnectionPolicy, - ConsistencyLevel, - DatabaseAccount, - PartitionKey, - convertToInternalPartitionKey, -} from "./documents"; -import { GlobalEndpointManager } from "./globalEndpointManager"; -import { PluginConfig, PluginOn, executePlugins } from "./plugins/Plugin"; -import { FetchFunctionCallback, SqlQuerySpec } from "./queryExecutionContext"; -import { CosmosHeaders } from "./queryExecutionContext/CosmosHeaders"; +import type { Agent, CosmosClientOptions } from "./CosmosClientOptions"; +import type { ConnectionPolicy, PartitionKey } from "./documents"; +import { ConsistencyLevel, DatabaseAccount, convertToInternalPartitionKey } from "./documents"; +import type { GlobalEndpointManager } from "./globalEndpointManager"; +import type { PluginConfig } from "./plugins/Plugin"; +import { PluginOn, executePlugins } from "./plugins/Plugin"; +import type { FetchFunctionCallback, SqlQuerySpec } from "./queryExecutionContext"; +import type { CosmosHeaders } from "./queryExecutionContext/CosmosHeaders"; import { QueryIterator } from "./queryIterator"; -import { ErrorResponse } from "./request"; -import { FeedOptions, RequestOptions, Response } from "./request"; -import { PartitionedQueryExecutionInfo } from "./request/ErrorResponse"; +import type { ErrorResponse } from "./request"; +import type { FeedOptions, RequestOptions, Response } from "./request"; +import type { PartitionedQueryExecutionInfo } from "./request/ErrorResponse"; import { getHeaders } from "./request/request"; -import { RequestContext } from "./request/RequestContext"; +import type { RequestContext } from "./request/RequestContext"; import { RequestHandler } from "./request/RequestHandler"; import { SessionContainer } from "./session/sessionContainer"; -import { SessionContext } from "./session/SessionContext"; -import { BulkOptions } from "./utils/batch"; +import type { SessionContext } from "./session/SessionContext"; +import type { BulkOptions } from "./utils/batch"; import { sanitizeEndpoint } from "./utils/checkURL"; import { supportedQueryFeaturesBuilder } from "./utils/supportedQueryFeaturesBuilder"; -import { AzureLogger, createClientLogger } from "@azure/logger"; -import { ClientConfigDiagnostic, CosmosDiagnostics } from "./CosmosDiagnostics"; -import { DiagnosticNodeInternal } from "./diagnostics/DiagnosticNodeInternal"; -import { - DiagnosticWriter, - LogDiagnosticWriter, - NoOpDiagnosticWriter, -} from "./diagnostics/DiagnosticWriter"; -import { DefaultDiagnosticFormatter, DiagnosticFormatter } from "./diagnostics/DiagnosticFormatter"; +import type { AzureLogger } from "@azure/logger"; +import { createClientLogger } from "@azure/logger"; +import type { ClientConfigDiagnostic, CosmosDiagnostics } from "./CosmosDiagnostics"; +import type { DiagnosticNodeInternal } from "./diagnostics/DiagnosticNodeInternal"; +import type { DiagnosticWriter } from "./diagnostics/DiagnosticWriter"; +import { LogDiagnosticWriter, NoOpDiagnosticWriter } from "./diagnostics/DiagnosticWriter"; +import type { DiagnosticFormatter } from "./diagnostics/DiagnosticFormatter"; +import { DefaultDiagnosticFormatter } from "./diagnostics/DiagnosticFormatter"; import { CosmosDbDiagnosticLevel } from "./diagnostics/CosmosDbDiagnosticLevel"; import { randomUUID } from "@azure/core-util"; diff --git a/sdk/cosmosdb/cosmos/src/CosmosClient.ts b/sdk/cosmosdb/cosmos/src/CosmosClient.ts index 21b76e0e198b..f72c337654e0 100644 --- a/sdk/cosmosdb/cosmos/src/CosmosClient.ts +++ b/sdk/cosmosdb/cosmos/src/CosmosClient.ts @@ -6,13 +6,16 @@ import { ClientContext } from "./ClientContext"; import { parseConnectionString } from "./common"; import { Constants } from "./common/constants"; import { getUserAgent } from "./common/platform"; -import { CosmosClientOptions } from "./CosmosClientOptions"; -import { ClientConfigDiagnostic } from "./CosmosDiagnostics"; +import type { CosmosClientOptions } from "./CosmosClientOptions"; +import type { ClientConfigDiagnostic } from "./CosmosDiagnostics"; import { determineDiagnosticLevel, getDiagnosticLevelFromEnvironment } from "./diagnostics"; -import { DiagnosticNodeInternal, DiagnosticNodeType } from "./diagnostics/DiagnosticNodeInternal"; -import { DatabaseAccount, defaultConnectionPolicy } from "./documents"; +import type { DiagnosticNodeInternal } from "./diagnostics/DiagnosticNodeInternal"; +import { DiagnosticNodeType } from "./diagnostics/DiagnosticNodeInternal"; +import type { DatabaseAccount } from "./documents"; +import { defaultConnectionPolicy } from "./documents"; import { GlobalEndpointManager } from "./globalEndpointManager"; -import { RequestOptions, ResourceResponse } from "./request"; +import type { RequestOptions } from "./request"; +import { ResourceResponse } from "./request"; import { checkURL } from "./utils/checkURL"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "./utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/src/CosmosClientOptions.ts b/sdk/cosmosdb/cosmos/src/CosmosClientOptions.ts index 90b140b305cb..02de08505ea9 100644 --- a/sdk/cosmosdb/cosmos/src/CosmosClientOptions.ts +++ b/sdk/cosmosdb/cosmos/src/CosmosClientOptions.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; -import { TokenProvider } from "./auth"; -import { PermissionDefinition } from "./client"; -import { ConnectionPolicy, ConsistencyLevel } from "./documents"; -import { PluginConfig } from "./plugins/Plugin"; -import { CosmosHeaders } from "./queryExecutionContext/CosmosHeaders"; -import { CosmosDbDiagnosticLevel } from "./diagnostics/CosmosDbDiagnosticLevel"; -import { HttpClient } from "@azure/core-rest-pipeline"; +import type { TokenCredential } from "@azure/core-auth"; +import type { TokenProvider } from "./auth"; +import type { PermissionDefinition } from "./client"; +import type { ConnectionPolicy, ConsistencyLevel } from "./documents"; +import type { PluginConfig } from "./plugins/Plugin"; +import type { CosmosHeaders } from "./queryExecutionContext/CosmosHeaders"; +import type { CosmosDbDiagnosticLevel } from "./diagnostics/CosmosDbDiagnosticLevel"; +import type { HttpClient } from "@azure/core-rest-pipeline"; // We expose our own Agent interface to avoid taking a dependency on and leaking node types. This interface should mirror the node Agent interface export interface Agent { diff --git a/sdk/cosmosdb/cosmos/src/CosmosDiagnostics.ts b/sdk/cosmosdb/cosmos/src/CosmosDiagnostics.ts index e302f2e617eb..54e9de89d421 100644 --- a/sdk/cosmosdb/cosmos/src/CosmosDiagnostics.ts +++ b/sdk/cosmosdb/cosmos/src/CosmosDiagnostics.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationType, ResourceType } from "./common"; -import { CosmosDbDiagnosticLevel } from "./diagnostics/CosmosDbDiagnosticLevel"; -import { DiagnosticNodeInternal } from "./diagnostics/DiagnosticNodeInternal"; -import { ConsistencyLevel } from "./documents"; +import type { OperationType, ResourceType } from "./common"; +import type { CosmosDbDiagnosticLevel } from "./diagnostics/CosmosDbDiagnosticLevel"; +import type { DiagnosticNodeInternal } from "./diagnostics/DiagnosticNodeInternal"; +import type { ConsistencyLevel } from "./documents"; /** * * This is a Cosmos Diagnostic type that holds collected diagnostic information during a client operations. ie. Item.read(), Container.create(). diff --git a/sdk/cosmosdb/cosmos/src/auth.ts b/sdk/cosmosdb/cosmos/src/auth.ts index f55b943d41cf..4d85bc7a4f72 100644 --- a/sdk/cosmosdb/cosmos/src/auth.ts +++ b/sdk/cosmosdb/cosmos/src/auth.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { generateHeaders } from "./utils/headers"; +import type { HTTPMethod } from "./common"; import { Constants, getResourceIdFromPath, - HTTPMethod, ResourceType, trimSlashFromLeftAndRight, } from "./common"; -import { CosmosClientOptions } from "./CosmosClientOptions"; -import { CosmosHeaders } from "./queryExecutionContext"; +import type { CosmosClientOptions } from "./CosmosClientOptions"; +import type { CosmosHeaders } from "./queryExecutionContext"; /** @hidden */ export interface RequestInfo { diff --git a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedForEpkRange.ts b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedForEpkRange.ts index e77767885a75..915253736743 100644 --- a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedForEpkRange.ts +++ b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedForEpkRange.ts @@ -2,17 +2,19 @@ // Licensed under the MIT License. import { ChangeFeedRange } from "./ChangeFeedRange"; import { ChangeFeedIteratorResponse } from "./ChangeFeedIteratorResponse"; -import { PartitionKeyRangeCache, QueryRange } from "../../routing"; +import type { PartitionKeyRangeCache } from "../../routing"; +import { QueryRange } from "../../routing"; import { FeedRangeQueue } from "./FeedRangeQueue"; -import { ClientContext } from "../../ClientContext"; -import { Container, Resource } from "../../client"; +import type { ClientContext } from "../../ClientContext"; +import type { Container, Resource } from "../../client"; import { Constants, SubStatusCodes, StatusCodes, ResourceType } from "../../common"; -import { Response, FeedOptions, ErrorResponse } from "../../request"; +import type { Response, FeedOptions } from "../../request"; +import { ErrorResponse } from "../../request"; import { CompositeContinuationToken } from "./CompositeContinuationToken"; -import { ChangeFeedPullModelIterator } from "./ChangeFeedPullModelIterator"; +import type { ChangeFeedPullModelIterator } from "./ChangeFeedPullModelIterator"; import { extractOverlappingRanges } from "./changeFeedUtils"; -import { InternalChangeFeedIteratorOptions } from "./InternalChangeFeedOptions"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { InternalChangeFeedIteratorOptions } from "./InternalChangeFeedOptions"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; import { ChangeFeedMode } from "./ChangeFeedMode"; /** diff --git a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedForPartitionKey.ts b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedForPartitionKey.ts index d7efc97962e1..fa72b5d44d59 100644 --- a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedForPartitionKey.ts +++ b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedForPartitionKey.ts @@ -1,15 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { InternalChangeFeedIteratorOptions } from "./InternalChangeFeedOptions"; +import type { InternalChangeFeedIteratorOptions } from "./InternalChangeFeedOptions"; import { ChangeFeedIteratorResponse } from "./ChangeFeedIteratorResponse"; -import { Container, Resource } from "../../client"; -import { ClientContext } from "../../ClientContext"; +import type { Container, Resource } from "../../client"; +import type { ClientContext } from "../../ClientContext"; import { Constants, ResourceType, StatusCodes } from "../../common"; -import { FeedOptions, Response, ErrorResponse } from "../../request"; +import type { FeedOptions, Response } from "../../request"; +import { ErrorResponse } from "../../request"; import { ContinuationTokenForPartitionKey } from "./ContinuationTokenForPartitionKey"; -import { ChangeFeedPullModelIterator } from "./ChangeFeedPullModelIterator"; -import { PartitionKey } from "../../documents"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { ChangeFeedPullModelIterator } from "./ChangeFeedPullModelIterator"; +import type { PartitionKey } from "../../documents"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; import { ChangeFeedMode } from "./ChangeFeedMode"; /** diff --git a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedIteratorOptions.ts b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedIteratorOptions.ts index 52d5fa14eb76..4b6896e25f80 100644 --- a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedIteratorOptions.ts +++ b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedIteratorOptions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ChangeFeedStartFrom } from "./ChangeFeedStartFrom"; -import { ChangeFeedMode } from "./ChangeFeedMode"; +import type { ChangeFeedStartFrom } from "./ChangeFeedStartFrom"; +import type { ChangeFeedMode } from "./ChangeFeedMode"; /** * Specifies options for the change feed * diff --git a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedIteratorResponse.ts b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedIteratorResponse.ts index 7fd84d8d0864..0fa30f3fab09 100644 --- a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedIteratorResponse.ts +++ b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedIteratorResponse.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics } from "../../CosmosDiagnostics"; +import type { CosmosDiagnostics } from "../../CosmosDiagnostics"; import { Constants } from "../../common"; -import { CosmosHeaders } from "../../queryExecutionContext"; +import type { CosmosHeaders } from "../../queryExecutionContext"; /** * A single response page from the Azure Cosmos DB Change Feed diff --git a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedPolicy.ts b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedPolicy.ts index aebd2e80bafb..07a959ba2a1d 100644 --- a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedPolicy.ts +++ b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedPolicy.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ChangeFeedRetentionTimeSpan } from "./ChangeFeedRetentionTimeSpan"; +import type { ChangeFeedRetentionTimeSpan } from "./ChangeFeedRetentionTimeSpan"; /** * Represents the change feed policy configuration for a container in the Azure Cosmos DB service. */ diff --git a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedPullModelIterator.ts b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedPullModelIterator.ts index 18721bef7a2c..6004c8ada2cb 100644 --- a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedPullModelIterator.ts +++ b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedPullModelIterator.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Resource } from "../Resource"; -import { ChangeFeedIteratorResponse } from "./ChangeFeedIteratorResponse"; +import type { Resource } from "../Resource"; +import type { ChangeFeedIteratorResponse } from "./ChangeFeedIteratorResponse"; /** * Use `Items.getChangeFeedIterator()` to return an iterator that can iterate over all the changes for a partition key, feed range or an entire container. */ diff --git a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFrom.ts b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFrom.ts index d04375667e18..7becdef9133e 100644 --- a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFrom.ts +++ b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFrom.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PartitionKey } from "../../documents"; -import { FeedRange } from "./FeedRange"; +import type { PartitionKey } from "../../documents"; +import type { FeedRange } from "./FeedRange"; import { ChangeFeedStartFromNow } from "./ChangeFeedStartFromNow"; import { ChangeFeedStartFromBeginning } from "./ChangeFeedStartFromBeginning"; import { ChangeFeedStartFromTime } from "./ChangeFeedStartFromTime"; diff --git a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFromBeginning.ts b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFromBeginning.ts index 2915518b2cda..ddca435efb34 100644 --- a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFromBeginning.ts +++ b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFromBeginning.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PartitionKey } from "../../documents"; -import { FeedRange } from "./FeedRange"; +import type { PartitionKey } from "../../documents"; +import type { FeedRange } from "./FeedRange"; /** * @hidden diff --git a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFromNow.ts b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFromNow.ts index 8c473b35f7e6..cf7aba4776b8 100644 --- a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFromNow.ts +++ b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFromNow.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PartitionKey } from "../../documents"; -import { FeedRange } from "./FeedRange"; +import type { PartitionKey } from "../../documents"; +import type { FeedRange } from "./FeedRange"; /** * @hidden * Class which specifies the ChangeFeedIterator to start reading changes from this moment in time. diff --git a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFromTime.ts b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFromTime.ts index 210b0168122f..9ce0c3ba43a4 100644 --- a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFromTime.ts +++ b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ChangeFeedStartFromTime.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PartitionKey } from "../../documents"; -import { FeedRange } from "./FeedRange"; +import type { PartitionKey } from "../../documents"; +import type { FeedRange } from "./FeedRange"; /** * @hidden * Class which specifies the ChangeFeedIterator to start reading changes from a particular point of time. diff --git a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/CompositeContinuationToken.ts b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/CompositeContinuationToken.ts index f38ae08774d4..8cc2102aba85 100644 --- a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/CompositeContinuationToken.ts +++ b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/CompositeContinuationToken.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ChangeFeedRange } from "./ChangeFeedRange"; +import type { ChangeFeedRange } from "./ChangeFeedRange"; /** * Continuation token for change feed of entire container, or a specific Epk Range. * @internal diff --git a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ContinuationTokenForPartitionKey.ts b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ContinuationTokenForPartitionKey.ts index b307d5d66203..9cd6acc23ccd 100644 --- a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ContinuationTokenForPartitionKey.ts +++ b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/ContinuationTokenForPartitionKey.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PartitionKey } from "../../documents"; +import type { PartitionKey } from "../../documents"; /** * Continuation token for change feed of entire container, or a specific Epk Range. * @internal diff --git a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/InternalChangeFeedOptions.ts b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/InternalChangeFeedOptions.ts index 8e610ef6b68f..8d34e109d9e3 100644 --- a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/InternalChangeFeedOptions.ts +++ b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/InternalChangeFeedOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ChangeFeedMode } from "./ChangeFeedMode"; +import type { ChangeFeedMode } from "./ChangeFeedMode"; /** * @hidden diff --git a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/changeFeedIteratorBuilder.ts b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/changeFeedIteratorBuilder.ts index 320471ed79a3..af90a08e2b1f 100644 --- a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/changeFeedIteratorBuilder.ts +++ b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/changeFeedIteratorBuilder.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; -import { PartitionKey } from "../../documents"; -import { QueryRange, PartitionKeyRangeCache } from "../../routing"; -import { ChangeFeedIteratorOptions } from "./ChangeFeedIteratorOptions"; +import type { ClientContext } from "../../ClientContext"; +import type { PartitionKey } from "../../documents"; +import type { PartitionKeyRangeCache } from "../../routing"; +import { QueryRange } from "../../routing"; +import type { ChangeFeedIteratorOptions } from "./ChangeFeedIteratorOptions"; import { ChangeFeedStartFrom } from "./ChangeFeedStartFrom"; import { ChangeFeedStartFromBeginning } from "./ChangeFeedStartFromBeginning"; import { ChangeFeedStartFromContinuation } from "./ChangeFeedStartFromContinuation"; @@ -16,8 +17,8 @@ import { ChangeFeedForEpkRange } from "./ChangeFeedForEpkRange"; import { getIdFromLink, getPathFromLink, ResourceType, Constants } from "../../common"; import { buildInternalChangeFeedOptions, fetchStartTime, isEpkRange } from "./changeFeedUtils"; import { isPartitionKey } from "../../utils/typeChecks"; -import { Container } from "../Container"; -import { FeedRangeInternal } from "./FeedRange"; +import type { Container } from "../Container"; +import type { FeedRangeInternal } from "./FeedRange"; export function changeFeedIteratorBuilder( cfOptions: ChangeFeedIteratorOptions, diff --git a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/changeFeedUtils.ts b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/changeFeedUtils.ts index e3fa8d251ebe..642582c17e1a 100644 --- a/sdk/cosmosdb/cosmos/src/client/ChangeFeed/changeFeedUtils.ts +++ b/sdk/cosmosdb/cosmos/src/client/ChangeFeed/changeFeedUtils.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ChangeFeedIteratorOptions } from "./ChangeFeedIteratorOptions"; +import type { ChangeFeedIteratorOptions } from "./ChangeFeedIteratorOptions"; import { ErrorResponse } from "../../request"; -import { PartitionKeyRange } from "../Container"; -import { InternalChangeFeedIteratorOptions } from "./InternalChangeFeedOptions"; +import type { PartitionKeyRange } from "../Container"; +import type { InternalChangeFeedIteratorOptions } from "./InternalChangeFeedOptions"; import { isPrimitivePartitionKeyValue } from "../../utils/typeChecks"; -import { ChangeFeedStartFrom } from "./ChangeFeedStartFrom"; +import type { ChangeFeedStartFrom } from "./ChangeFeedStartFrom"; import { ChangeFeedStartFromBeginning } from "./ChangeFeedStartFromBeginning"; import { Constants } from "../../common"; import { ChangeFeedStartFromTime } from "./ChangeFeedStartFromTime"; -import { QueryRange } from "../../routing"; +import type { QueryRange } from "../../routing"; import { FeedRangeInternal } from "./FeedRange"; /** diff --git a/sdk/cosmosdb/cosmos/src/client/ClientUtils.ts b/sdk/cosmosdb/cosmos/src/client/ClientUtils.ts index 3a6892c232d0..3f3c6675edb8 100644 --- a/sdk/cosmosdb/cosmos/src/client/ClientUtils.ts +++ b/sdk/cosmosdb/cosmos/src/client/ClientUtils.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; -import { PartitionKeyDefinition } from "../documents"; -import { Container } from "./Container"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import type { PartitionKeyDefinition } from "../documents"; +import type { Container } from "./Container"; export async function readPartitionKeyDefinition( diagnosticNode: DiagnosticNodeInternal, diff --git a/sdk/cosmosdb/cosmos/src/client/Conflict/Conflict.ts b/sdk/cosmosdb/cosmos/src/client/Conflict/Conflict.ts index 3d4f4618fb58..799d115afcea 100644 --- a/sdk/cosmosdb/cosmos/src/client/Conflict/Conflict.ts +++ b/sdk/cosmosdb/cosmos/src/client/Conflict/Conflict.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; +import type { ClientContext } from "../../ClientContext"; import { Constants, getIdFromLink, getPathFromLink, ResourceType } from "../../common"; -import { RequestOptions } from "../../request"; -import { Container } from "../Container"; -import { ConflictDefinition } from "./ConflictDefinition"; +import type { RequestOptions } from "../../request"; +import type { Container } from "../Container"; +import type { ConflictDefinition } from "./ConflictDefinition"; import { ConflictResponse } from "./ConflictResponse"; import { undefinedPartitionKey } from "../../extractPartitionKey"; -import { PartitionKey } from "../../documents"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { PartitionKey } from "../../documents"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { readPartitionKeyDefinition } from "../ClientUtils"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/src/client/Conflict/ConflictDefinition.ts b/sdk/cosmosdb/cosmos/src/client/Conflict/ConflictDefinition.ts index e3dc3d587b2c..eeca505221e8 100644 --- a/sdk/cosmosdb/cosmos/src/client/Conflict/ConflictDefinition.ts +++ b/sdk/cosmosdb/cosmos/src/client/Conflict/ConflictDefinition.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationType, ResourceType } from "../../common"; +import type { OperationType, ResourceType } from "../../common"; export interface ConflictDefinition { /** The id of the conflict */ diff --git a/sdk/cosmosdb/cosmos/src/client/Conflict/ConflictResolutionPolicy.ts b/sdk/cosmosdb/cosmos/src/client/Conflict/ConflictResolutionPolicy.ts index 24e1741bcd7f..bd28eda75dd5 100644 --- a/sdk/cosmosdb/cosmos/src/client/Conflict/ConflictResolutionPolicy.ts +++ b/sdk/cosmosdb/cosmos/src/client/Conflict/ConflictResolutionPolicy.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ConflictResolutionMode } from "./ConflictResolutionMode"; +import type { ConflictResolutionMode } from "./ConflictResolutionMode"; /** * Represents the conflict resolution policy configuration for specifying how to resolve conflicts diff --git a/sdk/cosmosdb/cosmos/src/client/Conflict/ConflictResponse.ts b/sdk/cosmosdb/cosmos/src/client/Conflict/ConflictResponse.ts index 0dd5829be2e3..61964d838e55 100644 --- a/sdk/cosmosdb/cosmos/src/client/Conflict/ConflictResponse.ts +++ b/sdk/cosmosdb/cosmos/src/client/Conflict/ConflictResponse.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics } from "../../CosmosDiagnostics"; -import { CosmosHeaders } from "../../queryExecutionContext"; +import type { CosmosDiagnostics } from "../../CosmosDiagnostics"; +import type { CosmosHeaders } from "../../queryExecutionContext"; import { ResourceResponse } from "../../request"; -import { Resource } from "../Resource"; -import { Conflict } from "./Conflict"; -import { ConflictDefinition } from "./ConflictDefinition"; +import type { Resource } from "../Resource"; +import type { Conflict } from "./Conflict"; +import type { ConflictDefinition } from "./ConflictDefinition"; export class ConflictResponse extends ResourceResponse { constructor( diff --git a/sdk/cosmosdb/cosmos/src/client/Conflict/Conflicts.ts b/sdk/cosmosdb/cosmos/src/client/Conflict/Conflicts.ts index 92aa5defddfb..d4a248acad67 100644 --- a/sdk/cosmosdb/cosmos/src/client/Conflict/Conflicts.ts +++ b/sdk/cosmosdb/cosmos/src/client/Conflict/Conflicts.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { ClientContext } from "../../ClientContext"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { getIdFromLink, getPathFromLink, ResourceType } from "../../common"; -import { SqlQuerySpec } from "../../queryExecutionContext"; +import type { SqlQuerySpec } from "../../queryExecutionContext"; import { QueryIterator } from "../../queryIterator"; -import { FeedOptions } from "../../request"; -import { Container } from "../Container"; -import { Resource } from "../Resource"; -import { ConflictDefinition } from "./ConflictDefinition"; +import type { FeedOptions } from "../../request"; +import type { Container } from "../Container"; +import type { Resource } from "../Resource"; +import type { ConflictDefinition } from "./ConflictDefinition"; /** * Use to query or read all conflicts. diff --git a/sdk/cosmosdb/cosmos/src/client/Container/Container.ts b/sdk/cosmosdb/cosmos/src/client/Container/Container.ts index 41caf9c6b4d8..89048c56c8e4 100644 --- a/sdk/cosmosdb/cosmos/src/client/Container/Container.ts +++ b/sdk/cosmosdb/cosmos/src/client/Container/Container.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; +import type { ClientContext } from "../../ClientContext"; import { createDocumentCollectionUri, getIdFromLink, @@ -9,23 +9,26 @@ import { isResourceValid, ResourceType, } from "../../common"; -import { PartitionKey, PartitionKeyDefinition } from "../../documents"; -import { SqlQuerySpec } from "../../queryExecutionContext"; -import { QueryIterator } from "../../queryIterator"; -import { FeedOptions, RequestOptions, ResourceResponse, Response } from "../../request"; -import { PartitionedQueryExecutionInfo } from "../../request/ErrorResponse"; +import type { PartitionKey, PartitionKeyDefinition } from "../../documents"; +import type { SqlQuerySpec } from "../../queryExecutionContext"; +import type { QueryIterator } from "../../queryIterator"; +import type { FeedOptions, RequestOptions, Response } from "../../request"; +import { ResourceResponse } from "../../request"; +import type { PartitionedQueryExecutionInfo } from "../../request/ErrorResponse"; import { Conflict, Conflicts } from "../Conflict"; -import { Database } from "../Database"; +import type { Database } from "../Database"; import { Item, Items } from "../Item"; import { Scripts } from "../Script/Scripts"; -import { ContainerDefinition } from "./ContainerDefinition"; +import type { ContainerDefinition } from "./ContainerDefinition"; import { ContainerResponse } from "./ContainerResponse"; -import { PartitionKeyRange } from "./PartitionKeyRange"; -import { Offer, OfferDefinition } from "../Offer"; +import type { PartitionKeyRange } from "./PartitionKeyRange"; +import type { OfferDefinition } from "../Offer"; +import { Offer } from "../Offer"; import { OfferResponse } from "../Offer/OfferResponse"; -import { Resource } from "../Resource"; -import { FeedRange, FeedRangeInternal } from "../ChangeFeed"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { Resource } from "../Resource"; +import type { FeedRange } from "../ChangeFeed"; +import { FeedRangeInternal } from "../ChangeFeed"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { getEmptyCosmosDiagnostics, withDiagnostics, diff --git a/sdk/cosmosdb/cosmos/src/client/Container/ContainerDefinition.ts b/sdk/cosmosdb/cosmos/src/client/Container/ContainerDefinition.ts index 188cdc945196..bc359af7965b 100644 --- a/sdk/cosmosdb/cosmos/src/client/Container/ContainerDefinition.ts +++ b/sdk/cosmosdb/cosmos/src/client/Container/ContainerDefinition.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { IndexingPolicy, PartitionKeyDefinition } from "../../documents"; -import { ConflictResolutionPolicy } from "../Conflict/ConflictResolutionPolicy"; -import { UniqueKeyPolicy } from "./UniqueKeyPolicy"; -import { GeospatialType } from "../../documents/GeospatialType"; -import { ChangeFeedPolicy } from "../ChangeFeed/ChangeFeedPolicy"; -import { ComputedProperty } from "../../documents/ComputedProperty"; -import { VectorEmbeddingPolicy } from "../../documents/VectorEmbeddingPolicy"; +import type { IndexingPolicy, PartitionKeyDefinition } from "../../documents"; +import type { ConflictResolutionPolicy } from "../Conflict/ConflictResolutionPolicy"; +import type { UniqueKeyPolicy } from "./UniqueKeyPolicy"; +import type { GeospatialType } from "../../documents/GeospatialType"; +import type { ChangeFeedPolicy } from "../ChangeFeed/ChangeFeedPolicy"; +import type { ComputedProperty } from "../../documents/ComputedProperty"; +import type { VectorEmbeddingPolicy } from "../../documents/VectorEmbeddingPolicy"; export interface ContainerDefinition { /** The id of the container. */ diff --git a/sdk/cosmosdb/cosmos/src/client/Container/ContainerRequest.ts b/sdk/cosmosdb/cosmos/src/client/Container/ContainerRequest.ts index 58a9c54df8bc..991a31c83d9b 100644 --- a/sdk/cosmosdb/cosmos/src/client/Container/ContainerRequest.ts +++ b/sdk/cosmosdb/cosmos/src/client/Container/ContainerRequest.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ContainerDefinition } from "./ContainerDefinition"; -import { PartitionKeyDefinition } from "../../documents"; -import { VerboseOmit } from "../../utils/types"; +import type { ContainerDefinition } from "./ContainerDefinition"; +import type { PartitionKeyDefinition } from "../../documents"; +import type { VerboseOmit } from "../../utils/types"; export interface ContainerRequest extends VerboseOmit { /* Throughput for this container. Cannot use with maxThroughput */ diff --git a/sdk/cosmosdb/cosmos/src/client/Container/ContainerResponse.ts b/sdk/cosmosdb/cosmos/src/client/Container/ContainerResponse.ts index 09d2a9e77cf5..e970674b6684 100644 --- a/sdk/cosmosdb/cosmos/src/client/Container/ContainerResponse.ts +++ b/sdk/cosmosdb/cosmos/src/client/Container/ContainerResponse.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics } from "../../CosmosDiagnostics"; -import { CosmosHeaders } from "../../queryExecutionContext"; +import type { CosmosDiagnostics } from "../../CosmosDiagnostics"; +import type { CosmosHeaders } from "../../queryExecutionContext"; import { ResourceResponse } from "../../request/ResourceResponse"; -import { Resource } from "../Resource"; -import { ContainerDefinition } from "./ContainerDefinition"; -import { Container } from "./index"; +import type { Resource } from "../Resource"; +import type { ContainerDefinition } from "./ContainerDefinition"; +import type { Container } from "./index"; /** Response object for Container operations */ export class ContainerResponse extends ResourceResponse { diff --git a/sdk/cosmosdb/cosmos/src/client/Container/Containers.ts b/sdk/cosmosdb/cosmos/src/client/Container/Containers.ts index 287563b972d2..839b84229a1a 100644 --- a/sdk/cosmosdb/cosmos/src/client/Container/Containers.ts +++ b/sdk/cosmosdb/cosmos/src/client/Container/Containers.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; +import type { ClientContext } from "../../ClientContext"; import { Constants, getIdFromLink, @@ -10,17 +10,18 @@ import { StatusCodes, } from "../../common"; import { DEFAULT_PARTITION_KEY_PATH } from "../../common/partitionKeys"; -import { mergeHeaders, SqlQuerySpec } from "../../queryExecutionContext"; +import type { SqlQuerySpec } from "../../queryExecutionContext"; +import { mergeHeaders } from "../../queryExecutionContext"; import { QueryIterator } from "../../queryIterator"; -import { FeedOptions, RequestOptions } from "../../request"; -import { Database } from "../Database"; -import { Resource } from "../Resource"; +import type { FeedOptions, RequestOptions } from "../../request"; +import type { Database } from "../Database"; +import type { Resource } from "../Resource"; import { Container } from "./Container"; -import { ContainerDefinition } from "./ContainerDefinition"; -import { ContainerRequest } from "./ContainerRequest"; +import type { ContainerDefinition } from "./ContainerDefinition"; +import type { ContainerRequest } from "./ContainerRequest"; import { ContainerResponse } from "./ContainerResponse"; import { validateOffer } from "../../utils/offers"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; /** diff --git a/sdk/cosmosdb/cosmos/src/client/Database/Database.ts b/sdk/cosmosdb/cosmos/src/client/Database/Database.ts index 9962861d2164..1c56c00c3f9f 100644 --- a/sdk/cosmosdb/cosmos/src/client/Database/Database.ts +++ b/sdk/cosmosdb/cosmos/src/client/Database/Database.ts @@ -1,16 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; +import type { ClientContext } from "../../ClientContext"; import { createDatabaseUri, getIdFromLink, getPathFromLink, ResourceType } from "../../common"; -import { CosmosClient } from "../../CosmosClient"; -import { RequestOptions } from "../../request"; +import type { CosmosClient } from "../../CosmosClient"; +import type { RequestOptions } from "../../request"; import { Container, Containers } from "../Container"; import { User, Users } from "../User"; -import { DatabaseDefinition } from "./DatabaseDefinition"; +import type { DatabaseDefinition } from "./DatabaseDefinition"; import { DatabaseResponse } from "./DatabaseResponse"; -import { OfferResponse, OfferDefinition, Offer } from "../Offer"; -import { Resource } from "../Resource"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { OfferDefinition } from "../Offer"; +import { OfferResponse, Offer } from "../Offer"; +import type { Resource } from "../Resource"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { getEmptyCosmosDiagnostics, withDiagnostics, diff --git a/sdk/cosmosdb/cosmos/src/client/Database/DatabaseRequest.ts b/sdk/cosmosdb/cosmos/src/client/Database/DatabaseRequest.ts index 25447a2bb283..511c2b6f21d2 100644 --- a/sdk/cosmosdb/cosmos/src/client/Database/DatabaseRequest.ts +++ b/sdk/cosmosdb/cosmos/src/client/Database/DatabaseRequest.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DatabaseDefinition } from "./DatabaseDefinition"; +import type { DatabaseDefinition } from "./DatabaseDefinition"; export interface DatabaseRequest extends DatabaseDefinition { /** Throughput for this database. */ diff --git a/sdk/cosmosdb/cosmos/src/client/Database/DatabaseResponse.ts b/sdk/cosmosdb/cosmos/src/client/Database/DatabaseResponse.ts index f99fed09df31..f4865d55afc8 100644 --- a/sdk/cosmosdb/cosmos/src/client/Database/DatabaseResponse.ts +++ b/sdk/cosmosdb/cosmos/src/client/Database/DatabaseResponse.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics } from "../../CosmosDiagnostics"; -import { CosmosHeaders } from "../../queryExecutionContext"; +import type { CosmosDiagnostics } from "../../CosmosDiagnostics"; +import type { CosmosHeaders } from "../../queryExecutionContext"; import { ResourceResponse } from "../../request/ResourceResponse"; -import { Resource } from "../Resource"; -import { Database } from "./Database"; -import { DatabaseDefinition } from "./DatabaseDefinition"; +import type { Resource } from "../Resource"; +import type { Database } from "./Database"; +import type { DatabaseDefinition } from "./DatabaseDefinition"; /** Response object for Database operations */ export class DatabaseResponse extends ResourceResponse { diff --git a/sdk/cosmosdb/cosmos/src/client/Database/Databases.ts b/sdk/cosmosdb/cosmos/src/client/Database/Databases.ts index 87ee066e4e04..a22450af06be 100644 --- a/sdk/cosmosdb/cosmos/src/client/Database/Databases.ts +++ b/sdk/cosmosdb/cosmos/src/client/Database/Databases.ts @@ -1,18 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; +import type { ClientContext } from "../../ClientContext"; import { Constants, isResourceValid, ResourceType, StatusCodes } from "../../common"; -import { CosmosClient } from "../../CosmosClient"; -import { FetchFunctionCallback, mergeHeaders, SqlQuerySpec } from "../../queryExecutionContext"; +import type { CosmosClient } from "../../CosmosClient"; +import type { FetchFunctionCallback, SqlQuerySpec } from "../../queryExecutionContext"; +import { mergeHeaders } from "../../queryExecutionContext"; import { QueryIterator } from "../../queryIterator"; -import { FeedOptions, RequestOptions } from "../../request"; -import { Resource } from "../Resource"; +import type { FeedOptions, RequestOptions } from "../../request"; +import type { Resource } from "../Resource"; import { Database } from "./Database"; -import { DatabaseDefinition } from "./DatabaseDefinition"; -import { DatabaseRequest } from "./DatabaseRequest"; +import type { DatabaseDefinition } from "./DatabaseDefinition"; +import type { DatabaseRequest } from "./DatabaseRequest"; import { DatabaseResponse } from "./DatabaseResponse"; import { validateOffer } from "../../utils/offers"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; /** diff --git a/sdk/cosmosdb/cosmos/src/client/Item/Item.ts b/sdk/cosmosdb/cosmos/src/client/Item/Item.ts index 195216c19083..136118d3b047 100644 --- a/sdk/cosmosdb/cosmos/src/client/Item/Item.ts +++ b/sdk/cosmosdb/cosmos/src/client/Item/Item.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { ClientContext } from "../../ClientContext"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { createDocumentUri, getIdFromLink, @@ -10,12 +10,13 @@ import { ResourceType, StatusCodes, } from "../../common"; -import { PartitionKey, PartitionKeyInternal, convertToInternalPartitionKey } from "../../documents"; -import { RequestOptions, Response } from "../../request"; -import { PatchRequestBody } from "../../utils/patch"; -import { Container } from "../Container"; -import { Resource } from "../Resource"; -import { ItemDefinition } from "./ItemDefinition"; +import type { PartitionKey, PartitionKeyInternal } from "../../documents"; +import { convertToInternalPartitionKey } from "../../documents"; +import type { RequestOptions, Response } from "../../request"; +import type { PatchRequestBody } from "../../utils/patch"; +import type { Container } from "../Container"; +import type { Resource } from "../Resource"; +import type { ItemDefinition } from "./ItemDefinition"; import { ItemResponse } from "./ItemResponse"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; import { setPartitionKeyIfUndefined } from "../../extractPartitionKey"; diff --git a/sdk/cosmosdb/cosmos/src/client/Item/ItemResponse.ts b/sdk/cosmosdb/cosmos/src/client/Item/ItemResponse.ts index f846950cfdf4..72a0a3433f7e 100644 --- a/sdk/cosmosdb/cosmos/src/client/Item/ItemResponse.ts +++ b/sdk/cosmosdb/cosmos/src/client/Item/ItemResponse.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics } from "../../CosmosDiagnostics"; -import { CosmosHeaders } from "../../queryExecutionContext"; +import type { CosmosDiagnostics } from "../../CosmosDiagnostics"; +import type { CosmosHeaders } from "../../queryExecutionContext"; import { ResourceResponse } from "../../request/ResourceResponse"; -import { Resource } from "../Resource"; -import { Item } from "./Item"; -import { ItemDefinition } from "./ItemDefinition"; +import type { Resource } from "../Resource"; +import type { Item } from "./Item"; +import type { ItemDefinition } from "./ItemDefinition"; export class ItemResponse extends ResourceResponse { constructor( diff --git a/sdk/cosmosdb/cosmos/src/client/Item/Items.ts b/sdk/cosmosdb/cosmos/src/client/Item/Items.ts index c213ee06b4d0..f37d9476501b 100644 --- a/sdk/cosmosdb/cosmos/src/client/Item/Items.ts +++ b/sdk/cosmosdb/cosmos/src/client/Item/Items.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { ChangeFeedIterator } from "../../ChangeFeedIterator"; -import { ChangeFeedOptions } from "../../ChangeFeedOptions"; -import { ClientContext } from "../../ClientContext"; +import type { ChangeFeedOptions } from "../../ChangeFeedOptions"; +import type { ClientContext } from "../../ClientContext"; import { getIdFromLink, getPathFromLink, @@ -13,38 +13,38 @@ import { SubStatusCodes, } from "../../common"; import { extractPartitionKeys, setPartitionKeyIfUndefined } from "../../extractPartitionKey"; -import { FetchFunctionCallback, SqlQuerySpec } from "../../queryExecutionContext"; +import type { FetchFunctionCallback, SqlQuerySpec } from "../../queryExecutionContext"; import { QueryIterator } from "../../queryIterator"; -import { FeedOptions, RequestOptions, Response } from "../../request"; -import { Container, PartitionKeyRange } from "../Container"; +import type { FeedOptions, RequestOptions, Response } from "../../request"; +import type { Container, PartitionKeyRange } from "../Container"; import { Item } from "./Item"; -import { ItemDefinition } from "./ItemDefinition"; +import type { ItemDefinition } from "./ItemDefinition"; import { ItemResponse } from "./ItemResponse"; -import { +import type { Batch, - isKeyInRange, - prepareOperations, OperationResponse, OperationInput, BulkOptions, + BulkOperationResponse, +} from "../../utils/batch"; +import { + isKeyInRange, + prepareOperations, decorateBatchOperation, splitBatchBasedOnBodySize, - BulkOperationResponse, } from "../../utils/batch"; import { assertNotUndefined, isPrimitivePartitionKeyValue } from "../../utils/typeChecks"; import { hashPartitionKey } from "../../utils/hashing/hash"; -import { PartitionKey, PartitionKeyDefinition } from "../../documents"; +import type { PartitionKey, PartitionKeyDefinition } from "../../documents"; import { PartitionKeyRangeCache, QueryRange } from "../../routing"; -import { +import type { ChangeFeedPullModelIterator, ChangeFeedIteratorOptions, - changeFeedIteratorBuilder, } from "../../client/ChangeFeed"; +import { changeFeedIteratorBuilder } from "../../client/ChangeFeed"; import { validateChangeFeedIteratorOptions } from "../../client/ChangeFeed/changeFeedUtils"; -import { - DiagnosticNodeInternal, - DiagnosticNodeType, -} from "../../diagnostics/DiagnosticNodeInternal"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import { DiagnosticNodeType } from "../../diagnostics/DiagnosticNodeInternal"; import { getEmptyCosmosDiagnostics, withDiagnostics, diff --git a/sdk/cosmosdb/cosmos/src/client/Offer/Offer.ts b/sdk/cosmosdb/cosmos/src/client/Offer/Offer.ts index 0c02ed5e4462..c290196bc715 100644 --- a/sdk/cosmosdb/cosmos/src/client/Offer/Offer.ts +++ b/sdk/cosmosdb/cosmos/src/client/Offer/Offer.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; +import type { ClientContext } from "../../ClientContext"; import { Constants, isResourceValid, ResourceType } from "../../common"; -import { CosmosClient } from "../../CosmosClient"; +import type { CosmosClient } from "../../CosmosClient"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; -import { RequestOptions } from "../../request"; -import { OfferDefinition } from "./OfferDefinition"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { RequestOptions } from "../../request"; +import type { OfferDefinition } from "./OfferDefinition"; import { OfferResponse } from "./OfferResponse"; /** diff --git a/sdk/cosmosdb/cosmos/src/client/Offer/OfferResponse.ts b/sdk/cosmosdb/cosmos/src/client/Offer/OfferResponse.ts index e20ca693df46..4246a0d893d3 100644 --- a/sdk/cosmosdb/cosmos/src/client/Offer/OfferResponse.ts +++ b/sdk/cosmosdb/cosmos/src/client/Offer/OfferResponse.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics } from "../../CosmosDiagnostics"; -import { CosmosHeaders } from "../../queryExecutionContext"; +import type { CosmosDiagnostics } from "../../CosmosDiagnostics"; +import type { CosmosHeaders } from "../../queryExecutionContext"; import { ResourceResponse } from "../../request"; -import { Resource } from "../Resource"; -import { Offer } from "./Offer"; -import { OfferDefinition } from "./OfferDefinition"; +import type { Resource } from "../Resource"; +import type { Offer } from "./Offer"; +import type { OfferDefinition } from "./OfferDefinition"; export class OfferResponse extends ResourceResponse { constructor( diff --git a/sdk/cosmosdb/cosmos/src/client/Offer/Offers.ts b/sdk/cosmosdb/cosmos/src/client/Offer/Offers.ts index 416c8a38d2ea..b522156a53ed 100644 --- a/sdk/cosmosdb/cosmos/src/client/Offer/Offers.ts +++ b/sdk/cosmosdb/cosmos/src/client/Offer/Offers.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; +import type { ClientContext } from "../../ClientContext"; import { ResourceType } from "../../common"; -import { CosmosClient } from "../../CosmosClient"; -import { SqlQuerySpec } from "../../queryExecutionContext"; +import type { CosmosClient } from "../../CosmosClient"; +import type { SqlQuerySpec } from "../../queryExecutionContext"; import { QueryIterator } from "../../queryIterator"; -import { FeedOptions } from "../../request"; -import { Resource } from "../Resource"; -import { OfferDefinition } from "./OfferDefinition"; +import type { FeedOptions } from "../../request"; +import type { Resource } from "../Resource"; +import type { OfferDefinition } from "./OfferDefinition"; /** * Use to query or read all Offers. diff --git a/sdk/cosmosdb/cosmos/src/client/Permission/Permission.ts b/sdk/cosmosdb/cosmos/src/client/Permission/Permission.ts index 5eb875e08f49..2a9f43e3f49c 100644 --- a/sdk/cosmosdb/cosmos/src/client/Permission/Permission.ts +++ b/sdk/cosmosdb/cosmos/src/client/Permission/Permission.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { ClientContext } from "../../ClientContext"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { createPermissionUri, getIdFromLink, @@ -9,10 +9,10 @@ import { isResourceValid, ResourceType, } from "../../common"; -import { RequestOptions } from "../../request/RequestOptions"; -import { User } from "../User"; -import { PermissionBody } from "./PermissionBody"; -import { PermissionDefinition } from "./PermissionDefinition"; +import type { RequestOptions } from "../../request/RequestOptions"; +import type { User } from "../User"; +import type { PermissionBody } from "./PermissionBody"; +import type { PermissionDefinition } from "./PermissionDefinition"; import { PermissionResponse } from "./PermissionResponse"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/src/client/Permission/PermissionDefinition.ts b/sdk/cosmosdb/cosmos/src/client/Permission/PermissionDefinition.ts index 726592e7ed3c..e5018b88d951 100644 --- a/sdk/cosmosdb/cosmos/src/client/Permission/PermissionDefinition.ts +++ b/sdk/cosmosdb/cosmos/src/client/Permission/PermissionDefinition.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PermissionMode } from "../../documents"; +import type { PermissionMode } from "../../documents"; export interface PermissionDefinition { /** The id of the permission */ diff --git a/sdk/cosmosdb/cosmos/src/client/Permission/PermissionResponse.ts b/sdk/cosmosdb/cosmos/src/client/Permission/PermissionResponse.ts index e3b60644b062..de8b5869e77a 100644 --- a/sdk/cosmosdb/cosmos/src/client/Permission/PermissionResponse.ts +++ b/sdk/cosmosdb/cosmos/src/client/Permission/PermissionResponse.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics } from "../../CosmosDiagnostics"; -import { CosmosHeaders } from "../../queryExecutionContext"; +import type { CosmosDiagnostics } from "../../CosmosDiagnostics"; +import type { CosmosHeaders } from "../../queryExecutionContext"; import { ResourceResponse } from "../../request"; -import { Resource } from "../Resource"; -import { Permission } from "./Permission"; -import { PermissionBody } from "./PermissionBody"; -import { PermissionDefinition } from "./PermissionDefinition"; +import type { Resource } from "../Resource"; +import type { Permission } from "./Permission"; +import type { PermissionBody } from "./PermissionBody"; +import type { PermissionDefinition } from "./PermissionDefinition"; export class PermissionResponse extends ResourceResponse< PermissionDefinition & PermissionBody & Resource diff --git a/sdk/cosmosdb/cosmos/src/client/Permission/Permissions.ts b/sdk/cosmosdb/cosmos/src/client/Permission/Permissions.ts index 324ec58d5408..56349fe98c4d 100644 --- a/sdk/cosmosdb/cosmos/src/client/Permission/Permissions.ts +++ b/sdk/cosmosdb/cosmos/src/client/Permission/Permissions.ts @@ -1,16 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { ClientContext } from "../../ClientContext"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { getIdFromLink, getPathFromLink, isResourceValid, ResourceType } from "../../common"; -import { SqlQuerySpec } from "../../queryExecutionContext"; +import type { SqlQuerySpec } from "../../queryExecutionContext"; import { QueryIterator } from "../../queryIterator"; -import { FeedOptions, RequestOptions } from "../../request"; -import { Resource } from "../Resource"; -import { User } from "../User"; +import type { FeedOptions, RequestOptions } from "../../request"; +import type { Resource } from "../Resource"; +import type { User } from "../User"; import { Permission } from "./Permission"; -import { PermissionBody } from "./PermissionBody"; -import { PermissionDefinition } from "./PermissionDefinition"; +import type { PermissionBody } from "./PermissionBody"; +import type { PermissionDefinition } from "./PermissionDefinition"; import { PermissionResponse } from "./PermissionResponse"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/src/client/SasToken/SasTokenProperties.ts b/sdk/cosmosdb/cosmos/src/client/SasToken/SasTokenProperties.ts index e54401036ff7..3cd3df61299f 100644 --- a/sdk/cosmosdb/cosmos/src/client/SasToken/SasTokenProperties.ts +++ b/sdk/cosmosdb/cosmos/src/client/SasToken/SasTokenProperties.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosContainerChildResourceKind } from "../../common/constants"; -import { CosmosKeyType } from "../../common/constants"; +import type { CosmosContainerChildResourceKind } from "../../common/constants"; +import type { CosmosKeyType } from "../../common/constants"; export class SasTokenProperties { user: string; diff --git a/sdk/cosmosdb/cosmos/src/client/Script/Scripts.ts b/sdk/cosmosdb/cosmos/src/client/Script/Scripts.ts index 4e9c62513068..0ebeff96072c 100644 --- a/sdk/cosmosdb/cosmos/src/client/Script/Scripts.ts +++ b/sdk/cosmosdb/cosmos/src/client/Script/Scripts.ts @@ -3,8 +3,8 @@ import { StoredProcedures, StoredProcedure } from "../StoredProcedure"; import { Trigger, Triggers } from "../Trigger"; import { UserDefinedFunction, UserDefinedFunctions } from "../UserDefinedFunction"; -import { ClientContext } from "../../ClientContext"; -import { Container } from "../Container/Container"; +import type { ClientContext } from "../../ClientContext"; +import type { Container } from "../Container/Container"; export class Scripts { /** diff --git a/sdk/cosmosdb/cosmos/src/client/StoredProcedure/StoredProcedure.ts b/sdk/cosmosdb/cosmos/src/client/StoredProcedure/StoredProcedure.ts index b7c68f028de9..cddd65080ad0 100644 --- a/sdk/cosmosdb/cosmos/src/client/StoredProcedure/StoredProcedure.ts +++ b/sdk/cosmosdb/cosmos/src/client/StoredProcedure/StoredProcedure.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { ClientContext } from "../../ClientContext"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { createStoredProcedureUri, getIdFromLink, @@ -9,12 +9,13 @@ import { isResourceValid, ResourceType, } from "../../common"; -import { PartitionKey } from "../../documents/PartitionKey"; +import type { PartitionKey } from "../../documents/PartitionKey"; import { undefinedPartitionKey } from "../../extractPartitionKey"; -import { RequestOptions, ResourceResponse } from "../../request"; +import type { RequestOptions } from "../../request"; +import { ResourceResponse } from "../../request"; import { readPartitionKeyDefinition } from "../ClientUtils"; -import { Container } from "../Container"; -import { StoredProcedureDefinition } from "./StoredProcedureDefinition"; +import type { Container } from "../Container"; +import type { StoredProcedureDefinition } from "./StoredProcedureDefinition"; import { StoredProcedureResponse } from "./StoredProcedureResponse"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/src/client/StoredProcedure/StoredProcedureResponse.ts b/sdk/cosmosdb/cosmos/src/client/StoredProcedure/StoredProcedureResponse.ts index a397e93de897..468d3623984f 100644 --- a/sdk/cosmosdb/cosmos/src/client/StoredProcedure/StoredProcedureResponse.ts +++ b/sdk/cosmosdb/cosmos/src/client/StoredProcedure/StoredProcedureResponse.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics } from "../../CosmosDiagnostics"; -import { CosmosHeaders } from "../../queryExecutionContext"; +import type { CosmosDiagnostics } from "../../CosmosDiagnostics"; +import type { CosmosHeaders } from "../../queryExecutionContext"; import { ResourceResponse } from "../../request"; -import { Resource } from "../Resource"; -import { StoredProcedure } from "./StoredProcedure"; -import { StoredProcedureDefinition } from "./StoredProcedureDefinition"; +import type { Resource } from "../Resource"; +import type { StoredProcedure } from "./StoredProcedure"; +import type { StoredProcedureDefinition } from "./StoredProcedureDefinition"; export class StoredProcedureResponse extends ResourceResponse< StoredProcedureDefinition & Resource diff --git a/sdk/cosmosdb/cosmos/src/client/StoredProcedure/StoredProcedures.ts b/sdk/cosmosdb/cosmos/src/client/StoredProcedure/StoredProcedures.ts index 23a91b23bbe5..be219df4c48a 100644 --- a/sdk/cosmosdb/cosmos/src/client/StoredProcedure/StoredProcedures.ts +++ b/sdk/cosmosdb/cosmos/src/client/StoredProcedure/StoredProcedures.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { ClientContext } from "../../ClientContext"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { getIdFromLink, getPathFromLink, isResourceValid, ResourceType } from "../../common"; -import { SqlQuerySpec } from "../../queryExecutionContext"; +import type { SqlQuerySpec } from "../../queryExecutionContext"; import { QueryIterator } from "../../queryIterator"; -import { FeedOptions, RequestOptions } from "../../request"; -import { Container } from "../Container"; -import { Resource } from "../Resource"; +import type { FeedOptions, RequestOptions } from "../../request"; +import type { Container } from "../Container"; +import type { Resource } from "../Resource"; import { StoredProcedure } from "./StoredProcedure"; -import { StoredProcedureDefinition } from "./StoredProcedureDefinition"; +import type { StoredProcedureDefinition } from "./StoredProcedureDefinition"; import { StoredProcedureResponse } from "./StoredProcedureResponse"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/src/client/Trigger/Trigger.ts b/sdk/cosmosdb/cosmos/src/client/Trigger/Trigger.ts index 4aedcfdc8a53..392e4146770f 100644 --- a/sdk/cosmosdb/cosmos/src/client/Trigger/Trigger.ts +++ b/sdk/cosmosdb/cosmos/src/client/Trigger/Trigger.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { ClientContext } from "../../ClientContext"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { createTriggerUri, getIdFromLink, @@ -9,9 +9,9 @@ import { isResourceValid, ResourceType, } from "../../common"; -import { RequestOptions } from "../../request"; -import { Container } from "../Container"; -import { TriggerDefinition } from "./TriggerDefinition"; +import type { RequestOptions } from "../../request"; +import type { Container } from "../Container"; +import type { TriggerDefinition } from "./TriggerDefinition"; import { TriggerResponse } from "./TriggerResponse"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/src/client/Trigger/TriggerDefinition.ts b/sdk/cosmosdb/cosmos/src/client/Trigger/TriggerDefinition.ts index 51f668902b90..e15a35442307 100644 --- a/sdk/cosmosdb/cosmos/src/client/Trigger/TriggerDefinition.ts +++ b/sdk/cosmosdb/cosmos/src/client/Trigger/TriggerDefinition.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TriggerOperation, TriggerType } from "../../documents"; +import type { TriggerOperation, TriggerType } from "../../documents"; export interface TriggerDefinition { /** The id of the trigger. */ diff --git a/sdk/cosmosdb/cosmos/src/client/Trigger/TriggerResponse.ts b/sdk/cosmosdb/cosmos/src/client/Trigger/TriggerResponse.ts index 26fb3d93a9e3..9351ae59bd87 100644 --- a/sdk/cosmosdb/cosmos/src/client/Trigger/TriggerResponse.ts +++ b/sdk/cosmosdb/cosmos/src/client/Trigger/TriggerResponse.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics } from "../../CosmosDiagnostics"; -import { CosmosHeaders } from "../../queryExecutionContext"; +import type { CosmosDiagnostics } from "../../CosmosDiagnostics"; +import type { CosmosHeaders } from "../../queryExecutionContext"; import { ResourceResponse } from "../../request"; -import { Resource } from "../Resource"; -import { Trigger } from "./index"; -import { TriggerDefinition } from "./TriggerDefinition"; +import type { Resource } from "../Resource"; +import type { Trigger } from "./index"; +import type { TriggerDefinition } from "./TriggerDefinition"; export class TriggerResponse extends ResourceResponse { constructor( diff --git a/sdk/cosmosdb/cosmos/src/client/Trigger/Triggers.ts b/sdk/cosmosdb/cosmos/src/client/Trigger/Triggers.ts index 341317e5f5bc..558fb656a8bf 100644 --- a/sdk/cosmosdb/cosmos/src/client/Trigger/Triggers.ts +++ b/sdk/cosmosdb/cosmos/src/client/Trigger/Triggers.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { ClientContext } from "../../ClientContext"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { getIdFromLink, getPathFromLink, isResourceValid, ResourceType } from "../../common"; -import { SqlQuerySpec } from "../../queryExecutionContext"; +import type { SqlQuerySpec } from "../../queryExecutionContext"; import { QueryIterator } from "../../queryIterator"; -import { FeedOptions, RequestOptions } from "../../request"; -import { Container } from "../Container"; -import { Resource } from "../Resource"; +import type { FeedOptions, RequestOptions } from "../../request"; +import type { Container } from "../Container"; +import type { Resource } from "../Resource"; import { Trigger } from "./Trigger"; -import { TriggerDefinition } from "./TriggerDefinition"; +import type { TriggerDefinition } from "./TriggerDefinition"; import { TriggerResponse } from "./TriggerResponse"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/src/client/User/User.ts b/sdk/cosmosdb/cosmos/src/client/User/User.ts index c6bdfe234241..a8c49b9500ff 100644 --- a/sdk/cosmosdb/cosmos/src/client/User/User.ts +++ b/sdk/cosmosdb/cosmos/src/client/User/User.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { ClientContext } from "../../ClientContext"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { createUserUri, getIdFromLink, @@ -9,10 +9,10 @@ import { isResourceValid, ResourceType, } from "../../common"; -import { RequestOptions } from "../../request"; -import { Database } from "../Database"; +import type { RequestOptions } from "../../request"; +import type { Database } from "../Database"; import { Permission, Permissions } from "../Permission"; -import { UserDefinition } from "./UserDefinition"; +import type { UserDefinition } from "./UserDefinition"; import { UserResponse } from "./UserResponse"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/src/client/User/UserResponse.ts b/sdk/cosmosdb/cosmos/src/client/User/UserResponse.ts index a03e7b989f43..54900f7008b3 100644 --- a/sdk/cosmosdb/cosmos/src/client/User/UserResponse.ts +++ b/sdk/cosmosdb/cosmos/src/client/User/UserResponse.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics } from "../../CosmosDiagnostics"; -import { CosmosHeaders } from "../../queryExecutionContext"; +import type { CosmosDiagnostics } from "../../CosmosDiagnostics"; +import type { CosmosHeaders } from "../../queryExecutionContext"; import { ResourceResponse } from "../../request"; -import { Resource } from "../Resource"; -import { User } from "./User"; -import { UserDefinition } from "./UserDefinition"; +import type { Resource } from "../Resource"; +import type { User } from "./User"; +import type { UserDefinition } from "./UserDefinition"; export class UserResponse extends ResourceResponse { constructor( diff --git a/sdk/cosmosdb/cosmos/src/client/User/Users.ts b/sdk/cosmosdb/cosmos/src/client/User/Users.ts index 7319ca589fa9..348dc22d180c 100644 --- a/sdk/cosmosdb/cosmos/src/client/User/Users.ts +++ b/sdk/cosmosdb/cosmos/src/client/User/Users.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { ClientContext } from "../../ClientContext"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { getIdFromLink, getPathFromLink, isResourceValid, ResourceType } from "../../common"; -import { SqlQuerySpec } from "../../queryExecutionContext"; +import type { SqlQuerySpec } from "../../queryExecutionContext"; import { QueryIterator } from "../../queryIterator"; -import { FeedOptions, RequestOptions } from "../../request"; -import { Database } from "../Database"; -import { Resource } from "../Resource"; +import type { FeedOptions, RequestOptions } from "../../request"; +import type { Database } from "../Database"; +import type { Resource } from "../Resource"; import { User } from "./User"; -import { UserDefinition } from "./UserDefinition"; +import type { UserDefinition } from "./UserDefinition"; import { UserResponse } from "./UserResponse"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/src/client/UserDefinedFunction/UserDefinedFunction.ts b/sdk/cosmosdb/cosmos/src/client/UserDefinedFunction/UserDefinedFunction.ts index c11a0c2f6ea8..69adfc7fdb74 100644 --- a/sdk/cosmosdb/cosmos/src/client/UserDefinedFunction/UserDefinedFunction.ts +++ b/sdk/cosmosdb/cosmos/src/client/UserDefinedFunction/UserDefinedFunction.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { ClientContext } from "../../ClientContext"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { createUserDefinedFunctionUri, getIdFromLink, @@ -9,9 +9,9 @@ import { isResourceValid, ResourceType, } from "../../common"; -import { RequestOptions } from "../../request"; -import { Container } from "../Container"; -import { UserDefinedFunctionDefinition } from "./UserDefinedFunctionDefinition"; +import type { RequestOptions } from "../../request"; +import type { Container } from "../Container"; +import type { UserDefinedFunctionDefinition } from "./UserDefinedFunctionDefinition"; import { UserDefinedFunctionResponse } from "./UserDefinedFunctionResponse"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/src/client/UserDefinedFunction/UserDefinedFunctionResponse.ts b/sdk/cosmosdb/cosmos/src/client/UserDefinedFunction/UserDefinedFunctionResponse.ts index 8c920c313d37..555383a06de0 100644 --- a/sdk/cosmosdb/cosmos/src/client/UserDefinedFunction/UserDefinedFunctionResponse.ts +++ b/sdk/cosmosdb/cosmos/src/client/UserDefinedFunction/UserDefinedFunctionResponse.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics } from "../../CosmosDiagnostics"; -import { CosmosHeaders } from "../../queryExecutionContext"; +import type { CosmosDiagnostics } from "../../CosmosDiagnostics"; +import type { CosmosHeaders } from "../../queryExecutionContext"; import { ResourceResponse } from "../../request"; -import { Resource } from "../Resource"; -import { UserDefinedFunction } from "./UserDefinedFunction"; -import { UserDefinedFunctionDefinition } from "./UserDefinedFunctionDefinition"; +import type { Resource } from "../Resource"; +import type { UserDefinedFunction } from "./UserDefinedFunction"; +import type { UserDefinedFunctionDefinition } from "./UserDefinedFunctionDefinition"; export class UserDefinedFunctionResponse extends ResourceResponse< UserDefinedFunctionDefinition & Resource diff --git a/sdk/cosmosdb/cosmos/src/client/UserDefinedFunction/UserDefinedFunctions.ts b/sdk/cosmosdb/cosmos/src/client/UserDefinedFunction/UserDefinedFunctions.ts index 25098684772a..d2236a12708f 100644 --- a/sdk/cosmosdb/cosmos/src/client/UserDefinedFunction/UserDefinedFunctions.ts +++ b/sdk/cosmosdb/cosmos/src/client/UserDefinedFunction/UserDefinedFunctions.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../../ClientContext"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { ClientContext } from "../../ClientContext"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { getIdFromLink, getPathFromLink, isResourceValid, ResourceType } from "../../common"; -import { SqlQuerySpec } from "../../queryExecutionContext"; +import type { SqlQuerySpec } from "../../queryExecutionContext"; import { QueryIterator } from "../../queryIterator"; -import { FeedOptions, RequestOptions } from "../../request"; -import { Container } from "../Container"; -import { Resource } from "../Resource"; +import type { FeedOptions, RequestOptions } from "../../request"; +import type { Container } from "../Container"; +import type { Resource } from "../Resource"; import { UserDefinedFunction } from "./UserDefinedFunction"; -import { UserDefinedFunctionDefinition } from "./UserDefinedFunctionDefinition"; +import type { UserDefinedFunctionDefinition } from "./UserDefinedFunctionDefinition"; import { UserDefinedFunctionResponse } from "./UserDefinedFunctionResponse"; import { getEmptyCosmosDiagnostics, withDiagnostics } from "../../utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/src/common/helper.ts b/sdk/cosmosdb/cosmos/src/common/helper.ts index 61e001fa83ae..2e201ecebc53 100644 --- a/sdk/cosmosdb/cosmos/src/common/helper.ts +++ b/sdk/cosmosdb/cosmos/src/common/helper.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosClientOptions } from "../CosmosClientOptions"; -import { OperationType, ResourceType } from "./constants"; +import type { CosmosClientOptions } from "../CosmosClientOptions"; +import type { ResourceType } from "./constants"; +import { OperationType } from "./constants"; const trimLeftSlashes = new RegExp("^[/]+"); const trimRightSlashes = new RegExp("[/]+$"); diff --git a/sdk/cosmosdb/cosmos/src/common/logger.ts b/sdk/cosmosdb/cosmos/src/common/logger.ts index 6995a3733aca..4528e56dd9db 100644 --- a/sdk/cosmosdb/cosmos/src/common/logger.ts +++ b/sdk/cosmosdb/cosmos/src/common/logger.ts @@ -1,6 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { createClientLogger, AzureLogger } from "@azure/logger"; +import type { AzureLogger } from "@azure/logger"; +import { createClientLogger } from "@azure/logger"; /** * The \@azure/logger configuration for this package. diff --git a/sdk/cosmosdb/cosmos/src/diagnostics/CosmosDiagnosticsContext.ts b/sdk/cosmosdb/cosmos/src/diagnostics/CosmosDiagnosticsContext.ts index 13c3dcdf5017..e69abe8661b5 100644 --- a/sdk/cosmosdb/cosmos/src/diagnostics/CosmosDiagnosticsContext.ts +++ b/sdk/cosmosdb/cosmos/src/diagnostics/CosmosDiagnosticsContext.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ClientSideRequestStatistics, FailedRequestAttemptDiagnostic, GatewayStatistics, diff --git a/sdk/cosmosdb/cosmos/src/diagnostics/DiagnosticFormatter.ts b/sdk/cosmosdb/cosmos/src/diagnostics/DiagnosticFormatter.ts index f6e0a1014a0b..3a7c516a28b5 100644 --- a/sdk/cosmosdb/cosmos/src/diagnostics/DiagnosticFormatter.ts +++ b/sdk/cosmosdb/cosmos/src/diagnostics/DiagnosticFormatter.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics } from "../CosmosDiagnostics"; +import type { CosmosDiagnostics } from "../CosmosDiagnostics"; export interface DiagnosticFormatter { format(cosmosDiagnostic: CosmosDiagnostics): string; diff --git a/sdk/cosmosdb/cosmos/src/diagnostics/DiagnosticNodeInternal.ts b/sdk/cosmosdb/cosmos/src/diagnostics/DiagnosticNodeInternal.ts index 7bd6bf14c021..a95ddfbf4372 100644 --- a/sdk/cosmosdb/cosmos/src/diagnostics/DiagnosticNodeInternal.ts +++ b/sdk/cosmosdb/cosmos/src/diagnostics/DiagnosticNodeInternal.ts @@ -2,19 +2,19 @@ // Licensed under the MIT License. import { CosmosDiagnosticContext } from "./CosmosDiagnosticsContext"; -import { RequestContext } from "../request"; -import { +import type { RequestContext } from "../request"; +import type { DiagnosticNode, MetadataLookUpType, - CosmosDiagnostics, - getRootNode, ClientConfigDiagnostic, } from "../CosmosDiagnostics"; +import { CosmosDiagnostics, getRootNode } from "../CosmosDiagnostics"; import { getCurrentTimestampInMs } from "../utils/time"; import { CosmosDbDiagnosticLevel } from "./CosmosDbDiagnosticLevel"; -import { CosmosHeaders } from "../queryExecutionContext/CosmosHeaders"; -import { HttpHeaders, PipelineResponse } from "@azure/core-rest-pipeline"; -import { Constants, OperationType, ResourceType, prepareURL } from "../common"; +import type { CosmosHeaders } from "../queryExecutionContext/CosmosHeaders"; +import type { HttpHeaders, PipelineResponse } from "@azure/core-rest-pipeline"; +import type { OperationType, ResourceType } from "../common"; +import { Constants, prepareURL } from "../common"; import { allowTracing } from "./diagnosticLevelComparator"; import { randomUUID } from "@azure/core-util"; diff --git a/sdk/cosmosdb/cosmos/src/diagnostics/DiagnosticWriter.ts b/sdk/cosmosdb/cosmos/src/diagnostics/DiagnosticWriter.ts index 48c5aa3d6e61..d099fef15b04 100644 --- a/sdk/cosmosdb/cosmos/src/diagnostics/DiagnosticWriter.ts +++ b/sdk/cosmosdb/cosmos/src/diagnostics/DiagnosticWriter.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureLogger, createClientLogger } from "@azure/logger"; +import type { AzureLogger } from "@azure/logger"; +import { createClientLogger } from "@azure/logger"; /** * Interface for a Diagnostic Writer. diff --git a/sdk/cosmosdb/cosmos/src/documents/ConnectionPolicy.ts b/sdk/cosmosdb/cosmos/src/documents/ConnectionPolicy.ts index 0346c6af763e..10a01ac2fe2e 100644 --- a/sdk/cosmosdb/cosmos/src/documents/ConnectionPolicy.ts +++ b/sdk/cosmosdb/cosmos/src/documents/ConnectionPolicy.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RetryOptions } from "../retry/retryOptions"; +import type { RetryOptions } from "../retry/retryOptions"; import { ConnectionMode } from "./ConnectionMode"; /** * Represents the Connection policy associated with a CosmosClient in the Azure Cosmos DB database service. diff --git a/sdk/cosmosdb/cosmos/src/documents/DatabaseAccount.ts b/sdk/cosmosdb/cosmos/src/documents/DatabaseAccount.ts index e25623144bb0..04d161c44224 100644 --- a/sdk/cosmosdb/cosmos/src/documents/DatabaseAccount.ts +++ b/sdk/cosmosdb/cosmos/src/documents/DatabaseAccount.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { Constants } from "../common"; -import { CosmosHeaders } from "../queryExecutionContext"; +import type { CosmosHeaders } from "../queryExecutionContext"; import { ConsistencyLevel } from "./ConsistencyLevel"; /** diff --git a/sdk/cosmosdb/cosmos/src/documents/IndexingPolicy.ts b/sdk/cosmosdb/cosmos/src/documents/IndexingPolicy.ts index e27f0b165a79..fa907ef69911 100644 --- a/sdk/cosmosdb/cosmos/src/documents/IndexingPolicy.ts +++ b/sdk/cosmosdb/cosmos/src/documents/IndexingPolicy.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DataType, IndexingMode, IndexKind } from "./index"; +import type { DataType, IndexingMode, IndexKind } from "./index"; export interface IndexingPolicy { /** The indexing mode (consistent or lazy) {@link IndexingMode}. */ diff --git a/sdk/cosmosdb/cosmos/src/documents/PartitionKeyDefinition.ts b/sdk/cosmosdb/cosmos/src/documents/PartitionKeyDefinition.ts index 9cdb0134bd8c..c52e03c30a6f 100644 --- a/sdk/cosmosdb/cosmos/src/documents/PartitionKeyDefinition.ts +++ b/sdk/cosmosdb/cosmos/src/documents/PartitionKeyDefinition.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PartitionKeyDefinitionVersion } from "./PartitionKeyDefinitionVersion"; -import { PartitionKeyKind } from "./PartitionKeyKind"; +import type { PartitionKeyDefinitionVersion } from "./PartitionKeyDefinitionVersion"; +import type { PartitionKeyKind } from "./PartitionKeyKind"; export interface PartitionKeyDefinition { /** diff --git a/sdk/cosmosdb/cosmos/src/documents/PartitionKeyInternal.ts b/sdk/cosmosdb/cosmos/src/documents/PartitionKeyInternal.ts index c1bb4d15d367..a92602e70101 100644 --- a/sdk/cosmosdb/cosmos/src/documents/PartitionKeyInternal.ts +++ b/sdk/cosmosdb/cosmos/src/documents/PartitionKeyInternal.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { NonePartitionKeyType, NullPartitionKeyType, PartitionKey, diff --git a/sdk/cosmosdb/cosmos/src/extractPartitionKey.ts b/sdk/cosmosdb/cosmos/src/extractPartitionKey.ts index 8cf09c52a5eb..0b2ce7289601 100644 --- a/sdk/cosmosdb/cosmos/src/extractPartitionKey.ts +++ b/sdk/cosmosdb/cosmos/src/extractPartitionKey.ts @@ -1,20 +1,23 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureLogger, createClientLogger } from "@azure/logger"; +import type { AzureLogger } from "@azure/logger"; +import { createClientLogger } from "@azure/logger"; import { parsePath } from "./common"; -import { - convertToInternalPartitionKey, - NonePartitionKeyLiteral, - NullPartitionKeyLiteral, +import type { PartitionKey, PartitionKeyDefinition, PartitionKeyInternal, PrimitivePartitionKeyValue, } from "./documents"; +import { + convertToInternalPartitionKey, + NonePartitionKeyLiteral, + NullPartitionKeyLiteral, +} from "./documents"; import { DEFAULT_PARTITION_KEY_PATH } from "./common/partitionKeys"; -import { Container } from "./client"; +import type { Container } from "./client"; import { readPartitionKeyDefinition } from "./client/ClientUtils"; -import { DiagnosticNodeInternal } from "./diagnostics/DiagnosticNodeInternal"; +import type { DiagnosticNodeInternal } from "./diagnostics/DiagnosticNodeInternal"; const logger: AzureLogger = createClientLogger("extractPartitionKey"); diff --git a/sdk/cosmosdb/cosmos/src/globalEndpointManager.ts b/sdk/cosmosdb/cosmos/src/globalEndpointManager.ts index 59456c787c57..30766ae99590 100644 --- a/sdk/cosmosdb/cosmos/src/globalEndpointManager.ts +++ b/sdk/cosmosdb/cosmos/src/globalEndpointManager.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { OperationType, ResourceType, isReadRequest } from "./common"; -import { CosmosClientOptions } from "./CosmosClientOptions"; -import { Location, DatabaseAccount } from "./documents"; -import { RequestOptions } from "./index"; +import type { CosmosClientOptions } from "./CosmosClientOptions"; +import type { Location, DatabaseAccount } from "./documents"; +import type { RequestOptions } from "./index"; import { Constants } from "./common/constants"; -import { ResourceResponse } from "./request"; +import type { ResourceResponse } from "./request"; import { MetadataLookUpType } from "./CosmosDiagnostics"; -import { DiagnosticNodeInternal } from "./diagnostics/DiagnosticNodeInternal"; +import type { DiagnosticNodeInternal } from "./diagnostics/DiagnosticNodeInternal"; import { withMetadataDiagnostics } from "./utils/diagnostics"; /** diff --git a/sdk/cosmosdb/cosmos/src/indexMetrics/IndexMetricWriter.ts b/sdk/cosmosdb/cosmos/src/indexMetrics/IndexMetricWriter.ts index bb9d731ac9b5..30fadc038f9d 100644 --- a/sdk/cosmosdb/cosmos/src/indexMetrics/IndexMetricWriter.ts +++ b/sdk/cosmosdb/cosmos/src/indexMetrics/IndexMetricWriter.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import Constants from "./Constants"; -import { CompositeIndexUtilizationEntity } from "./CompositeIndexUtilizationEntity"; -import { IndexUtilizationInfo } from "./IndexUtilizationInfo"; -import { SingleIndexUtilizationEntity } from "./SingleIndexUtilizationEntity"; +import type { CompositeIndexUtilizationEntity } from "./CompositeIndexUtilizationEntity"; +import type { IndexUtilizationInfo } from "./IndexUtilizationInfo"; +import type { SingleIndexUtilizationEntity } from "./SingleIndexUtilizationEntity"; export class IndexMetricWriter { public writeIndexMetrics(indexUtilizationInfo: IndexUtilizationInfo): string { diff --git a/sdk/cosmosdb/cosmos/src/indexMetrics/IndexUtilizationInfo.ts b/sdk/cosmosdb/cosmos/src/indexMetrics/IndexUtilizationInfo.ts index 8844ef9d922c..5b7bf9337c1c 100644 --- a/sdk/cosmosdb/cosmos/src/indexMetrics/IndexUtilizationInfo.ts +++ b/sdk/cosmosdb/cosmos/src/indexMetrics/IndexUtilizationInfo.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { SingleIndexUtilizationEntity } from "./SingleIndexUtilizationEntity"; -import { CompositeIndexUtilizationEntity } from "./CompositeIndexUtilizationEntity"; +import type { SingleIndexUtilizationEntity } from "./SingleIndexUtilizationEntity"; +import type { CompositeIndexUtilizationEntity } from "./CompositeIndexUtilizationEntity"; export class IndexUtilizationInfo { public static readonly Empty = new IndexUtilizationInfo([], [], [], []); diff --git a/sdk/cosmosdb/cosmos/src/plugins/Plugin.ts b/sdk/cosmosdb/cosmos/src/plugins/Plugin.ts index 2bb5b01389ba..a5afac15627e 100644 --- a/sdk/cosmosdb/cosmos/src/plugins/Plugin.ts +++ b/sdk/cosmosdb/cosmos/src/plugins/Plugin.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; -import { RequestContext } from "../request/RequestContext"; -import { Response } from "../request/Response"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import type { RequestContext } from "../request/RequestContext"; +import type { Response } from "../request/Response"; /** * Used to specify which type of events to execute this plug in on. diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/AverageAggregator.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/AverageAggregator.ts index 1e2d134e1386..6ca4688f0d21 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/AverageAggregator.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/AverageAggregator.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Aggregator } from "./Aggregator"; +import type { Aggregator } from "./Aggregator"; /** @hidden */ export interface AverageAggregateResult { diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/CountAggregator.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/CountAggregator.ts index e51c6abefed6..fcbc54d725c4 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/CountAggregator.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/CountAggregator.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Aggregator } from "./Aggregator"; +import type { Aggregator } from "./Aggregator"; /** @hidden */ export class CountAggregator implements Aggregator { diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MakeListAggregator.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MakeListAggregator.ts index 1ae0b455407d..3789bd7cc22a 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MakeListAggregator.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MakeListAggregator.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Aggregator } from "./Aggregator"; +import type { Aggregator } from "./Aggregator"; /** @hidden */ export class MakeListAggregator implements Aggregator { diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MakeSetAggregator.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MakeSetAggregator.ts index 1c8e14769df0..d1775c39028f 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MakeSetAggregator.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MakeSetAggregator.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Aggregator } from "./Aggregator"; +import type { Aggregator } from "./Aggregator"; /** @hidden */ /** diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MaxAggregator.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MaxAggregator.ts index 861508d109ba..8b6c75ee06c1 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MaxAggregator.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MaxAggregator.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { OrderByDocumentProducerComparator } from "../orderByDocumentProducerComparator"; -import { Aggregator } from "./Aggregator"; +import type { Aggregator } from "./Aggregator"; interface MaxAggregateResult { count: number; diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MinAggregator.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MinAggregator.ts index 20d0edb6ccfd..6308e0634f59 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MinAggregator.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/MinAggregator.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { OrderByDocumentProducerComparator } from "../orderByDocumentProducerComparator"; -import { Aggregator } from "./Aggregator"; +import type { Aggregator } from "./Aggregator"; export interface MinAggregateResult { min: number; diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/StaticValueAggregator.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/StaticValueAggregator.ts index 9f1e165cfe0e..a8f2b0037124 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/StaticValueAggregator.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/StaticValueAggregator.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Aggregator } from "./Aggregator"; +import type { Aggregator } from "./Aggregator"; /** @hidden */ export class StaticValueAggregator implements Aggregator { diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/SumAggregator.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/SumAggregator.ts index 304d2cbf46e8..6164f7a5113f 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/SumAggregator.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/SumAggregator.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Aggregator } from "./Aggregator"; +import type { Aggregator } from "./Aggregator"; /** @hidden */ export class SumAggregator implements Aggregator { diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/index.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/index.ts index ade67064490d..20a8ba981fdf 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/index.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/Aggregators/index.ts @@ -6,7 +6,7 @@ import { MaxAggregator } from "./MaxAggregator"; import { MinAggregator } from "./MinAggregator"; import { SumAggregator } from "./SumAggregator"; import { StaticValueAggregator } from "./StaticValueAggregator"; -import { AggregateType } from "../../request/ErrorResponse"; +import type { AggregateType } from "../../request/ErrorResponse"; import { MakeListAggregator } from "./MakeListAggregator"; import { MakeSetAggregator } from "./MakeSetAggregator"; diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.ts index 210417fccd00..7a8d1205ab2a 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/GroupByEndpointComponent.ts @@ -1,14 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Response } from "../../request"; -import { ExecutionContext } from "../ExecutionContext"; -import { CosmosHeaders } from "../CosmosHeaders"; -import { QueryInfo } from "../../request/ErrorResponse"; +import type { Response } from "../../request"; +import type { ExecutionContext } from "../ExecutionContext"; +import type { CosmosHeaders } from "../CosmosHeaders"; +import type { QueryInfo } from "../../request/ErrorResponse"; import { hashObject } from "../../utils/hashObject"; -import { Aggregator, createAggregator } from "../Aggregators"; +import type { Aggregator } from "../Aggregators"; +import { createAggregator } from "../Aggregators"; import { getInitialHeader, mergeHeaders } from "../headerUtils"; import { emptyGroup, extractAggregateResult } from "./emptyGroup"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; interface GroupByResponse { result: GroupByResult; diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.ts index e2e7cae09186..a1ff1c109638 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/GroupByValueEndpointComponent.ts @@ -1,14 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Response } from "../../request"; -import { ExecutionContext } from "../ExecutionContext"; -import { CosmosHeaders } from "../CosmosHeaders"; -import { AggregateType, QueryInfo } from "../../request/ErrorResponse"; +import type { Response } from "../../request"; +import type { ExecutionContext } from "../ExecutionContext"; +import type { CosmosHeaders } from "../CosmosHeaders"; +import type { AggregateType, QueryInfo } from "../../request/ErrorResponse"; import { hashObject } from "../../utils/hashObject"; -import { Aggregator, createAggregator } from "../Aggregators"; +import type { Aggregator } from "../Aggregators"; +import { createAggregator } from "../Aggregators"; import { getInitialHeader, mergeHeaders } from "../headerUtils"; import { emptyGroup, extractAggregateResult } from "./emptyGroup"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; interface GroupByResponse { result: GroupByResult; diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.ts index 620c05526089..2bd7a21df670 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { QueryInfo, Response } from "../../request"; -import { ExecutionContext } from "../ExecutionContext"; +import type { QueryInfo, Response } from "../../request"; +import type { ExecutionContext } from "../ExecutionContext"; import { getInitialHeader } from "../headerUtils"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; import { hashObject } from "../../utils/hashObject"; -import { NonStreamingOrderByResult } from "../nonStreamingOrderByResult"; -import { NonStreamingOrderByResponse } from "../nonStreamingOrderByResponse"; +import type { NonStreamingOrderByResult } from "../nonStreamingOrderByResult"; +import type { NonStreamingOrderByResponse } from "../nonStreamingOrderByResponse"; import { FixedSizePriorityQueue } from "../../utils/fixedSizePriorityQueue"; import { NonStreamingOrderByMap } from "../../utils/nonStreamingOrderByMap"; import { OrderByComparator } from "../orderByComparator"; diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.ts index d3c6599ca4b1..324a370112c6 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; -import { Response } from "../../request"; -import { ExecutionContext } from "../ExecutionContext"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { Response } from "../../request"; +import type { ExecutionContext } from "../ExecutionContext"; import { OrderByComparator } from "../orderByComparator"; -import { NonStreamingOrderByResult } from "../nonStreamingOrderByResult"; +import type { NonStreamingOrderByResult } from "../nonStreamingOrderByResult"; import { FixedSizePriorityQueue } from "../../utils/fixedSizePriorityQueue"; import { getInitialHeader } from "../headerUtils"; diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.ts index d66bc2fe8483..c5a69636852a 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/OffsetLimitEndpointComponent.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; -import { Response } from "../../request"; -import { ExecutionContext } from "../ExecutionContext"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { Response } from "../../request"; +import type { ExecutionContext } from "../ExecutionContext"; import { getInitialHeader, mergeHeaders } from "../headerUtils"; /** @hidden */ diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.ts index f84aa19aee3f..0086962ecf8f 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/OrderByEndpointComponent.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; -import { Response } from "../../request"; -import { ExecutionContext } from "../ExecutionContext"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { Response } from "../../request"; +import type { ExecutionContext } from "../ExecutionContext"; /** @hidden */ export class OrderByEndpointComponent implements ExecutionContext { diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.ts index 20d6a654ff66..9046a1023fe7 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/OrderedDistinctEndpointComponent.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Response } from "../../request"; -import { ExecutionContext } from "../ExecutionContext"; +import type { Response } from "../../request"; +import type { ExecutionContext } from "../ExecutionContext"; import { hashObject } from "../../utils/hashObject"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; /** @hidden */ export class OrderedDistinctEndpointComponent implements ExecutionContext { diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.ts index c87b3d137ba1..2a75f011c650 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/EndpointComponent/UnorderedDistinctEndpointComponent.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Response } from "../../request"; -import { ExecutionContext } from "../ExecutionContext"; +import type { Response } from "../../request"; +import type { ExecutionContext } from "../ExecutionContext"; import { hashObject } from "../../utils/hashObject"; -import { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; +import type { DiagnosticNodeInternal } from "../../diagnostics/DiagnosticNodeInternal"; /** @hidden */ export class UnorderedDistinctEndpointComponent implements ExecutionContext { diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/ExecutionContext.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/ExecutionContext.ts index aa3dc3bc4331..353c84bf2a7a 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/ExecutionContext.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/ExecutionContext.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; -import { Response } from "../request"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import type { Response } from "../request"; /** @hidden */ export interface ExecutionContext { diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/defaultQueryExecutionContext.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/defaultQueryExecutionContext.ts index 6deab2d78a53..0aa0273d1187 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/defaultQueryExecutionContext.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/defaultQueryExecutionContext.ts @@ -1,12 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureLogger, createClientLogger } from "@azure/logger"; +import type { AzureLogger } from "@azure/logger"; +import { createClientLogger } from "@azure/logger"; import { Constants } from "../common"; import { ClientSideMetrics, QueryMetrics } from "../queryMetrics"; -import { FeedOptions, Response } from "../request"; +import type { FeedOptions, Response } from "../request"; import { getInitialHeader } from "./headerUtils"; -import { ExecutionContext } from "./index"; -import { DiagnosticNodeInternal, DiagnosticNodeType } from "../diagnostics/DiagnosticNodeInternal"; +import type { ExecutionContext } from "./index"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import { DiagnosticNodeType } from "../diagnostics/DiagnosticNodeInternal"; import { addDignosticChild } from "../utils/diagnostics"; import { CosmosDbDiagnosticLevel } from "../diagnostics/CosmosDbDiagnosticLevel"; diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/documentProducer.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/documentProducer.ts index 940afd27cd83..67bb7aba629d 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/documentProducer.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/documentProducer.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PartitionKeyRange, Resource } from "../client"; -import { ClientContext } from "../ClientContext"; +import type { PartitionKeyRange, Resource } from "../client"; +import type { ClientContext } from "../ClientContext"; import { Constants, getIdFromLink, @@ -10,16 +10,15 @@ import { StatusCodes, SubStatusCodes, } from "../common"; -import { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; -import { FeedOptions } from "../request"; -import { Response } from "../request"; -import { - DefaultQueryExecutionContext, - FetchFunctionCallback, -} from "./defaultQueryExecutionContext"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import type { FeedOptions } from "../request"; +import type { Response } from "../request"; +import type { FetchFunctionCallback } from "./defaultQueryExecutionContext"; +import { DefaultQueryExecutionContext } from "./defaultQueryExecutionContext"; import { FetchResult, FetchResultType } from "./FetchResult"; -import { CosmosHeaders, getInitialHeader, mergeHeaders } from "./headerUtils"; -import { SqlQuerySpec } from "./index"; +import type { CosmosHeaders } from "./headerUtils"; +import { getInitialHeader, mergeHeaders } from "./headerUtils"; +import type { SqlQuerySpec } from "./index"; /** @hidden */ export class DocumentProducer { diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/nonStreamingOrderByResponse.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/nonStreamingOrderByResponse.ts index b5651da01223..d13a63e77cba 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/nonStreamingOrderByResponse.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/nonStreamingOrderByResponse.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosHeaders } from "./CosmosHeaders"; -import { NonStreamingOrderByResult } from "./nonStreamingOrderByResult"; +import type { CosmosHeaders } from "./CosmosHeaders"; +import type { NonStreamingOrderByResult } from "./nonStreamingOrderByResult"; export interface NonStreamingOrderByResponse { result: NonStreamingOrderByResult; diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/orderByComparator.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/orderByComparator.ts index 997c6d9b2f86..caa9cc1c5066 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/orderByComparator.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/orderByComparator.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { NonStreamingOrderByResult } from "./nonStreamingOrderByResult"; +import type { NonStreamingOrderByResult } from "./nonStreamingOrderByResult"; /** * @hidden diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/orderByDocumentProducerComparator.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/orderByDocumentProducerComparator.ts index 872b5934c025..f01aa09f8cd4 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/orderByDocumentProducerComparator.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/orderByDocumentProducerComparator.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DocumentProducer } from "./documentProducer"; +import type { DocumentProducer } from "./documentProducer"; // TODO: this smells funny /** @hidden */ diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/orderByQueryExecutionContext.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/orderByQueryExecutionContext.ts index 7ae82ea38d06..e98a9353e4cb 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/orderByQueryExecutionContext.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/orderByQueryExecutionContext.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../ClientContext"; -import { PartitionedQueryExecutionInfo } from "../request/ErrorResponse"; -import { FeedOptions } from "../request/FeedOptions"; -import { DocumentProducer } from "./documentProducer"; -import { ExecutionContext } from "./ExecutionContext"; +import type { ClientContext } from "../ClientContext"; +import type { PartitionedQueryExecutionInfo } from "../request/ErrorResponse"; +import type { FeedOptions } from "../request/FeedOptions"; +import type { DocumentProducer } from "./documentProducer"; +import type { ExecutionContext } from "./ExecutionContext"; import { OrderByDocumentProducerComparator } from "./orderByDocumentProducerComparator"; import { ParallelQueryExecutionContextBase } from "./parallelQueryExecutionContextBase"; -import { SqlQuerySpec } from "./SqlQuerySpec"; +import type { SqlQuerySpec } from "./SqlQuerySpec"; /** @hidden */ export class OrderByQueryExecutionContext diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/parallelQueryExecutionContext.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/parallelQueryExecutionContext.ts index 456f3b0f206f..3eb70eda4570 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/parallelQueryExecutionContext.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/parallelQueryExecutionContext.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DocumentProducer } from "./documentProducer"; -import { ExecutionContext } from "./ExecutionContext"; +import type { DocumentProducer } from "./documentProducer"; +import type { ExecutionContext } from "./ExecutionContext"; import { ParallelQueryExecutionContextBase } from "./parallelQueryExecutionContextBase"; /** diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/parallelQueryExecutionContextBase.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/parallelQueryExecutionContextBase.ts index 0d57dc2d0073..2ef38260fdc3 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/parallelQueryExecutionContextBase.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/parallelQueryExecutionContextBase.ts @@ -2,18 +2,19 @@ // Licensed under the MIT License. import PriorityQueue from "priorityqueuejs"; import semaphore from "semaphore"; -import { ClientContext } from "../ClientContext"; -import { AzureLogger, createClientLogger } from "@azure/logger"; +import type { ClientContext } from "../ClientContext"; +import type { AzureLogger } from "@azure/logger"; +import { createClientLogger } from "@azure/logger"; import { StatusCodes, SubStatusCodes } from "../common/statusCodes"; -import { FeedOptions, Response } from "../request"; -import { PartitionedQueryExecutionInfo } from "../request/ErrorResponse"; +import type { FeedOptions, Response } from "../request"; +import type { PartitionedQueryExecutionInfo } from "../request/ErrorResponse"; import { QueryRange } from "../routing/QueryRange"; import { SmartRoutingMapProvider } from "../routing/smartRoutingMapProvider"; -import { CosmosHeaders } from "./CosmosHeaders"; +import type { CosmosHeaders } from "./CosmosHeaders"; import { DocumentProducer } from "./documentProducer"; -import { ExecutionContext } from "./ExecutionContext"; +import type { ExecutionContext } from "./ExecutionContext"; import { getInitialHeader, mergeHeaders } from "./headerUtils"; -import { SqlQuerySpec } from "./SqlQuerySpec"; +import type { SqlQuerySpec } from "./SqlQuerySpec"; import { DiagnosticNodeInternal, DiagnosticNodeType } from "../diagnostics/DiagnosticNodeInternal"; import { addDignosticChild } from "../utils/diagnostics"; import { MetadataLookUpType } from "../CosmosDiagnostics"; diff --git a/sdk/cosmosdb/cosmos/src/queryExecutionContext/pipelinedQueryExecutionContext.ts b/sdk/cosmosdb/cosmos/src/queryExecutionContext/pipelinedQueryExecutionContext.ts index 3339605bf481..dc5cda84938b 100644 --- a/sdk/cosmosdb/cosmos/src/queryExecutionContext/pipelinedQueryExecutionContext.ts +++ b/sdk/cosmosdb/cosmos/src/queryExecutionContext/pipelinedQueryExecutionContext.ts @@ -1,21 +1,22 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../ClientContext"; -import { Response, FeedOptions } from "../request"; -import { ErrorResponse, PartitionedQueryExecutionInfo, QueryInfo } from "../request/ErrorResponse"; -import { CosmosHeaders } from "./CosmosHeaders"; +import type { ClientContext } from "../ClientContext"; +import type { Response, FeedOptions } from "../request"; +import type { PartitionedQueryExecutionInfo, QueryInfo } from "../request/ErrorResponse"; +import { ErrorResponse } from "../request/ErrorResponse"; +import type { CosmosHeaders } from "./CosmosHeaders"; import { OffsetLimitEndpointComponent } from "./EndpointComponent/OffsetLimitEndpointComponent"; import { OrderByEndpointComponent } from "./EndpointComponent/OrderByEndpointComponent"; import { OrderedDistinctEndpointComponent } from "./EndpointComponent/OrderedDistinctEndpointComponent"; import { UnorderedDistinctEndpointComponent } from "./EndpointComponent/UnorderedDistinctEndpointComponent"; import { GroupByEndpointComponent } from "./EndpointComponent/GroupByEndpointComponent"; -import { ExecutionContext } from "./ExecutionContext"; +import type { ExecutionContext } from "./ExecutionContext"; import { getInitialHeader, mergeHeaders } from "./headerUtils"; import { OrderByQueryExecutionContext } from "./orderByQueryExecutionContext"; import { ParallelQueryExecutionContext } from "./parallelQueryExecutionContext"; import { GroupByValueEndpointComponent } from "./EndpointComponent/GroupByValueEndpointComponent"; -import { SqlQuerySpec } from "./SqlQuerySpec"; -import { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import type { SqlQuerySpec } from "./SqlQuerySpec"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; import { NonStreamingOrderByDistinctEndpointComponent } from "./EndpointComponent/NonStreamingOrderByDistinctEndpointComponent"; import { NonStreamingOrderByEndpointComponent } from "./EndpointComponent/NonStreamingOrderByEndpointComponent"; diff --git a/sdk/cosmosdb/cosmos/src/queryIterator.ts b/sdk/cosmosdb/cosmos/src/queryIterator.ts index 448ba60dd1d6..4d382cf3ede7 100644 --- a/sdk/cosmosdb/cosmos/src/queryIterator.ts +++ b/sdk/cosmosdb/cosmos/src/queryIterator.ts @@ -2,22 +2,24 @@ // Licensed under the MIT License. /// -import { ClientContext } from "./ClientContext"; +import type { ClientContext } from "./ClientContext"; import { DiagnosticNodeInternal, DiagnosticNodeType } from "./diagnostics/DiagnosticNodeInternal"; import { getPathFromLink, ResourceType, StatusCodes } from "./common"; -import { +import type { CosmosHeaders, - DefaultQueryExecutionContext, ExecutionContext, FetchFunctionCallback, + SqlQuerySpec, +} from "./queryExecutionContext"; +import { + DefaultQueryExecutionContext, getInitialHeader, mergeHeaders, PipelinedQueryExecutionContext, - SqlQuerySpec, } from "./queryExecutionContext"; -import { Response } from "./request"; -import { ErrorResponse, PartitionedQueryExecutionInfo } from "./request/ErrorResponse"; -import { FeedOptions } from "./request/FeedOptions"; +import type { Response } from "./request"; +import type { ErrorResponse, PartitionedQueryExecutionInfo } from "./request/ErrorResponse"; +import type { FeedOptions } from "./request/FeedOptions"; import { FeedResponse } from "./request/FeedResponse"; import { getEmptyCosmosDiagnostics, diff --git a/sdk/cosmosdb/cosmos/src/request/ErrorResponse.ts b/sdk/cosmosdb/cosmos/src/request/ErrorResponse.ts index c63eb90b6ed9..8d264e48b020 100644 --- a/sdk/cosmosdb/cosmos/src/request/ErrorResponse.ts +++ b/sdk/cosmosdb/cosmos/src/request/ErrorResponse.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics, CosmosHeaders } from "../index"; +import type { CosmosDiagnostics, CosmosHeaders } from "../index"; export interface ErrorBody { code: string; diff --git a/sdk/cosmosdb/cosmos/src/request/FeedOptions.ts b/sdk/cosmosdb/cosmos/src/request/FeedOptions.ts index 51cd9511080d..a5c76a89d194 100644 --- a/sdk/cosmosdb/cosmos/src/request/FeedOptions.ts +++ b/sdk/cosmosdb/cosmos/src/request/FeedOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PartitionKey } from "../documents"; -import { SharedOptions } from "./SharedOptions"; +import type { PartitionKey } from "../documents"; +import type { SharedOptions } from "./SharedOptions"; /** * The feed options and query methods. diff --git a/sdk/cosmosdb/cosmos/src/request/FeedResponse.ts b/sdk/cosmosdb/cosmos/src/request/FeedResponse.ts index 411463bc4478..9508b41b6efe 100644 --- a/sdk/cosmosdb/cosmos/src/request/FeedResponse.ts +++ b/sdk/cosmosdb/cosmos/src/request/FeedResponse.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { Constants } from "../common"; -import { CosmosHeaders, getRequestChargeIfAny } from "../queryExecutionContext/headerUtils"; +import type { CosmosHeaders } from "../queryExecutionContext/headerUtils"; +import { getRequestChargeIfAny } from "../queryExecutionContext/headerUtils"; import { IndexMetricWriter, IndexUtilizationInfo } from "../indexMetrics"; -import { CosmosDiagnostics } from "../CosmosDiagnostics"; +import type { CosmosDiagnostics } from "../CosmosDiagnostics"; export class FeedResponse { constructor( diff --git a/sdk/cosmosdb/cosmos/src/request/RequestContext.ts b/sdk/cosmosdb/cosmos/src/request/RequestContext.ts index e44e5d0b363e..c1868a159d8d 100644 --- a/sdk/cosmosdb/cosmos/src/request/RequestContext.ts +++ b/sdk/cosmosdb/cosmos/src/request/RequestContext.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../ClientContext"; -import { HTTPMethod, OperationType, ResourceType } from "../common"; -import { Agent } from "../CosmosClientOptions"; -import { ConnectionPolicy, PartitionKey } from "../documents"; -import { GlobalEndpointManager } from "../globalEndpointManager"; -import { PluginConfig } from "../plugins/Plugin"; -import { CosmosHeaders } from "../queryExecutionContext/CosmosHeaders"; -import { FeedOptions } from "./FeedOptions"; -import { RequestOptions } from "./RequestOptions"; -import { HttpClient, Pipeline } from "@azure/core-rest-pipeline"; +import type { ClientContext } from "../ClientContext"; +import type { HTTPMethod, OperationType, ResourceType } from "../common"; +import type { Agent } from "../CosmosClientOptions"; +import type { ConnectionPolicy, PartitionKey } from "../documents"; +import type { GlobalEndpointManager } from "../globalEndpointManager"; +import type { PluginConfig } from "../plugins/Plugin"; +import type { CosmosHeaders } from "../queryExecutionContext/CosmosHeaders"; +import type { FeedOptions } from "./FeedOptions"; +import type { RequestOptions } from "./RequestOptions"; +import type { HttpClient, Pipeline } from "@azure/core-rest-pipeline"; /** * @hidden diff --git a/sdk/cosmosdb/cosmos/src/request/RequestHandler.ts b/sdk/cosmosdb/cosmos/src/request/RequestHandler.ts index 4ca9cc2907a8..c917559d6353 100644 --- a/sdk/cosmosdb/cosmos/src/request/RequestHandler.ts +++ b/sdk/cosmosdb/cosmos/src/request/RequestHandler.ts @@ -1,11 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - createPipelineRequest, - createHttpHeaders, - PipelineResponse, -} from "@azure/core-rest-pipeline"; +import type { PipelineResponse } from "@azure/core-rest-pipeline"; +import { createPipelineRequest, createHttpHeaders } from "@azure/core-rest-pipeline"; import { prepareURL } from "../common"; import { Constants } from "../common/constants"; import { executePlugins, PluginOn } from "../plugins/Plugin"; @@ -13,12 +10,14 @@ import * as RetryUtility from "../retry/retryUtility"; import { defaultHttpAgent, defaultHttpsAgent } from "./defaultAgent"; import { ErrorResponse } from "./ErrorResponse"; import { bodyFromData } from "./request"; -import { RequestContext } from "./RequestContext"; -import { Response as CosmosResponse } from "./Response"; +import type { RequestContext } from "./RequestContext"; +import type { Response as CosmosResponse } from "./Response"; import { TimeoutError } from "./TimeoutError"; import { getCachedDefaultHttpClient } from "../utils/cachedClient"; -import { AzureLogger, createClientLogger } from "@azure/logger"; -import { DiagnosticNodeInternal, DiagnosticNodeType } from "../diagnostics/DiagnosticNodeInternal"; +import type { AzureLogger } from "@azure/logger"; +import { createClientLogger } from "@azure/logger"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import { DiagnosticNodeType } from "../diagnostics/DiagnosticNodeInternal"; import { addDignosticChild } from "../utils/diagnostics"; import { getCurrentTimestampInMs } from "../utils/time"; diff --git a/sdk/cosmosdb/cosmos/src/request/RequestOptions.ts b/sdk/cosmosdb/cosmos/src/request/RequestOptions.ts index 664f44bbf654..b24e6df37147 100644 --- a/sdk/cosmosdb/cosmos/src/request/RequestOptions.ts +++ b/sdk/cosmosdb/cosmos/src/request/RequestOptions.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { SharedOptions } from ".."; +import type { SharedOptions } from ".."; /** * Options that can be specified for a requested issued to the Azure Cosmos DB servers.= diff --git a/sdk/cosmosdb/cosmos/src/request/ResourceResponse.ts b/sdk/cosmosdb/cosmos/src/request/ResourceResponse.ts index d2e368d8759f..2a1cae8c083c 100644 --- a/sdk/cosmosdb/cosmos/src/request/ResourceResponse.ts +++ b/sdk/cosmosdb/cosmos/src/request/ResourceResponse.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics } from "../CosmosDiagnostics"; +import type { CosmosDiagnostics } from "../CosmosDiagnostics"; import { Constants } from "../common"; -import { CosmosHeaders } from "../queryExecutionContext/CosmosHeaders"; -import { StatusCode, SubStatusCode } from "./StatusCodes"; +import type { CosmosHeaders } from "../queryExecutionContext/CosmosHeaders"; +import type { StatusCode, SubStatusCode } from "./StatusCodes"; export class ResourceResponse { constructor( diff --git a/sdk/cosmosdb/cosmos/src/request/Response.ts b/sdk/cosmosdb/cosmos/src/request/Response.ts index 7e8b5941d00b..3e743b8f3c08 100644 --- a/sdk/cosmosdb/cosmos/src/request/Response.ts +++ b/sdk/cosmosdb/cosmos/src/request/Response.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics, CosmosHeaders } from "../index"; +import type { CosmosDiagnostics, CosmosHeaders } from "../index"; /** * @hidden diff --git a/sdk/cosmosdb/cosmos/src/request/SharedOptions.ts b/sdk/cosmosdb/cosmos/src/request/SharedOptions.ts index 3fcc35a74509..3914f201d85f 100644 --- a/sdk/cosmosdb/cosmos/src/request/SharedOptions.ts +++ b/sdk/cosmosdb/cosmos/src/request/SharedOptions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. /// -import { PriorityLevel } from "../documents/PriorityLevel"; -import { CosmosHeaders } from "../index"; +import type { PriorityLevel } from "../documents/PriorityLevel"; +import type { CosmosHeaders } from "../index"; /** * Options that can be specified for a requested issued to the Azure Cosmos DB servers.= diff --git a/sdk/cosmosdb/cosmos/src/request/defaultAgent.browser.ts b/sdk/cosmosdb/cosmos/src/request/defaultAgent.browser.ts index 000959e95345..ac2e3e7fd238 100644 --- a/sdk/cosmosdb/cosmos/src/request/defaultAgent.browser.ts +++ b/sdk/cosmosdb/cosmos/src/request/defaultAgent.browser.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Agent } from "http"; +import type { Agent } from "http"; /** * @hidden */ diff --git a/sdk/cosmosdb/cosmos/src/request/defaultAgent.ts b/sdk/cosmosdb/cosmos/src/request/defaultAgent.ts index c7388b362f03..8cd14d185cfb 100644 --- a/sdk/cosmosdb/cosmos/src/request/defaultAgent.ts +++ b/sdk/cosmosdb/cosmos/src/request/defaultAgent.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Agent } from "http"; +import type { Agent } from "http"; /** * @hidden diff --git a/sdk/cosmosdb/cosmos/src/request/request.ts b/sdk/cosmosdb/cosmos/src/request/request.ts index e894217a1f01..0f97b637b70e 100644 --- a/sdk/cosmosdb/cosmos/src/request/request.ts +++ b/sdk/cosmosdb/cosmos/src/request/request.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { setAuthorizationHeader } from "../auth"; import { Constants, HTTPMethod, jsonStringifyAndEscapeNonASCII, ResourceType } from "../common"; -import { CosmosClientOptions } from "../CosmosClientOptions"; -import { PartitionKeyInternal } from "../documents"; -import { CosmosHeaders } from "../queryExecutionContext"; -import { FeedOptions, RequestOptions } from "./index"; +import type { CosmosClientOptions } from "../CosmosClientOptions"; +import type { PartitionKeyInternal } from "../documents"; +import type { CosmosHeaders } from "../queryExecutionContext"; +import type { FeedOptions, RequestOptions } from "./index"; import { defaultLogger } from "../common/logger"; import { ChangeFeedMode } from "../client/ChangeFeed"; // ---------------------------------------------------------------------------- diff --git a/sdk/cosmosdb/cosmos/src/retry/RetryPolicy.ts b/sdk/cosmosdb/cosmos/src/retry/RetryPolicy.ts index a0958da48e7a..5d0a8e6813c5 100644 --- a/sdk/cosmosdb/cosmos/src/retry/RetryPolicy.ts +++ b/sdk/cosmosdb/cosmos/src/retry/RetryPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; -import { ErrorResponse } from "../request"; -import { RetryContext } from "./RetryContext"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import type { ErrorResponse } from "../request"; +import type { RetryContext } from "./RetryContext"; /** * @hidden diff --git a/sdk/cosmosdb/cosmos/src/retry/defaultRetryPolicy.ts b/sdk/cosmosdb/cosmos/src/retry/defaultRetryPolicy.ts index 526df0a65031..741da781c9d9 100644 --- a/sdk/cosmosdb/cosmos/src/retry/defaultRetryPolicy.ts +++ b/sdk/cosmosdb/cosmos/src/retry/defaultRetryPolicy.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; import { OperationType } from "../common"; -import { ErrorResponse } from "../request"; +import type { ErrorResponse } from "../request"; import { TimeoutErrorCode } from "../request/TimeoutError"; -import { RetryPolicy } from "./RetryPolicy"; +import type { RetryPolicy } from "./RetryPolicy"; /** * @hidden diff --git a/sdk/cosmosdb/cosmos/src/retry/endpointDiscoveryRetryPolicy.ts b/sdk/cosmosdb/cosmos/src/retry/endpointDiscoveryRetryPolicy.ts index bb1473e78769..35a7747f863a 100644 --- a/sdk/cosmosdb/cosmos/src/retry/endpointDiscoveryRetryPolicy.ts +++ b/sdk/cosmosdb/cosmos/src/retry/endpointDiscoveryRetryPolicy.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; -import { OperationType } from "../common"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import type { OperationType } from "../common"; import { isReadRequest } from "../common/helper"; -import { GlobalEndpointManager } from "../globalEndpointManager"; -import { ErrorResponse } from "../request"; -import { RetryContext } from "./RetryContext"; -import { RetryPolicy } from "./RetryPolicy"; +import type { GlobalEndpointManager } from "../globalEndpointManager"; +import type { ErrorResponse } from "../request"; +import type { RetryContext } from "./RetryContext"; +import type { RetryPolicy } from "./RetryPolicy"; /** * This class implements the retry policy for endpoint discovery. diff --git a/sdk/cosmosdb/cosmos/src/retry/resourceThrottleRetryPolicy.ts b/sdk/cosmosdb/cosmos/src/retry/resourceThrottleRetryPolicy.ts index 8eabb817579b..ca2862cf99de 100644 --- a/sdk/cosmosdb/cosmos/src/retry/resourceThrottleRetryPolicy.ts +++ b/sdk/cosmosdb/cosmos/src/retry/resourceThrottleRetryPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; -import { ErrorResponse } from "../request"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import type { ErrorResponse } from "../request"; /** * This class implements the resource throttle retry policy for requests. diff --git a/sdk/cosmosdb/cosmos/src/retry/retryUtility.ts b/sdk/cosmosdb/cosmos/src/retry/retryUtility.ts index 95a0e4b02731..0ea63c8010ec 100644 --- a/sdk/cosmosdb/cosmos/src/retry/retryUtility.ts +++ b/sdk/cosmosdb/cosmos/src/retry/retryUtility.ts @@ -3,17 +3,18 @@ import { Constants } from "../common/constants"; import { sleep } from "../common/helper"; import { StatusCodes, SubStatusCodes } from "../common/statusCodes"; -import { DiagnosticNodeInternal, DiagnosticNodeType } from "../diagnostics/DiagnosticNodeInternal"; -import { Response } from "../request"; -import { RequestContext } from "../request/RequestContext"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import { DiagnosticNodeType } from "../diagnostics/DiagnosticNodeInternal"; +import type { Response } from "../request"; +import type { RequestContext } from "../request/RequestContext"; import { TimeoutErrorCode } from "../request/TimeoutError"; import { addDignosticChild } from "../utils/diagnostics"; import { getCurrentTimestampInMs } from "../utils/time"; import { DefaultRetryPolicy } from "./defaultRetryPolicy"; import { EndpointDiscoveryRetryPolicy } from "./endpointDiscoveryRetryPolicy"; import { ResourceThrottleRetryPolicy } from "./resourceThrottleRetryPolicy"; -import { RetryContext } from "./RetryContext"; -import { RetryPolicy } from "./RetryPolicy"; +import type { RetryContext } from "./RetryContext"; +import type { RetryPolicy } from "./RetryPolicy"; import { SessionRetryPolicy } from "./sessionRetryPolicy"; import { TimeoutFailoverRetryPolicy } from "./timeoutFailoverRetryPolicy"; diff --git a/sdk/cosmosdb/cosmos/src/retry/sessionRetryPolicy.ts b/sdk/cosmosdb/cosmos/src/retry/sessionRetryPolicy.ts index d4dacf140b56..11ca526ff458 100644 --- a/sdk/cosmosdb/cosmos/src/retry/sessionRetryPolicy.ts +++ b/sdk/cosmosdb/cosmos/src/retry/sessionRetryPolicy.ts @@ -1,12 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; -import { isReadRequest, OperationType, ResourceType } from "../common"; -import { ConnectionPolicy } from "../documents"; -import { GlobalEndpointManager } from "../globalEndpointManager"; -import { ErrorResponse } from "../request"; -import { RetryContext } from "./RetryContext"; -import { RetryPolicy } from "./RetryPolicy"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import type { OperationType, ResourceType } from "../common"; +import { isReadRequest } from "../common"; +import type { ConnectionPolicy } from "../documents"; +import type { GlobalEndpointManager } from "../globalEndpointManager"; +import type { ErrorResponse } from "../request"; +import type { RetryContext } from "./RetryContext"; +import type { RetryPolicy } from "./RetryPolicy"; /** * This class implements the retry policy for session consistent reads. diff --git a/sdk/cosmosdb/cosmos/src/retry/timeoutFailoverRetryPolicy.ts b/sdk/cosmosdb/cosmos/src/retry/timeoutFailoverRetryPolicy.ts index 5eb658380f01..cc9cf53237b3 100644 --- a/sdk/cosmosdb/cosmos/src/retry/timeoutFailoverRetryPolicy.ts +++ b/sdk/cosmosdb/cosmos/src/retry/timeoutFailoverRetryPolicy.ts @@ -1,15 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RetryPolicy } from "./RetryPolicy"; +import type { RetryPolicy } from "./RetryPolicy"; import { StatusCodes } from "../common/statusCodes"; -import { GlobalEndpointManager } from "../globalEndpointManager"; +import type { GlobalEndpointManager } from "../globalEndpointManager"; import { HTTPMethod, isReadRequest } from "../common"; -import { Constants, OperationType, ResourceType } from "../common/constants"; -import { RetryContext } from "./RetryContext"; -import { CosmosHeaders } from "../queryExecutionContext/CosmosHeaders"; +import type { OperationType, ResourceType } from "../common/constants"; +import { Constants } from "../common/constants"; +import type { RetryContext } from "./RetryContext"; +import type { CosmosHeaders } from "../queryExecutionContext/CosmosHeaders"; import { TimeoutErrorCode } from "../request/TimeoutError"; -import { ErrorResponse } from "../request"; -import { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import type { ErrorResponse } from "../request"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; /** * This class TimeoutFailoverRetryPolicy handles retries for read operations diff --git a/sdk/cosmosdb/cosmos/src/routing/QueryRange.ts b/sdk/cosmosdb/cosmos/src/routing/QueryRange.ts index cda585c86bb3..e8ca0ed80e99 100644 --- a/sdk/cosmosdb/cosmos/src/routing/QueryRange.ts +++ b/sdk/cosmosdb/cosmos/src/routing/QueryRange.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PartitionKeyRange } from "../client/Container/PartitionKeyRange"; +import type { PartitionKeyRange } from "../client/Container/PartitionKeyRange"; import { Constants } from "../common"; -import { QueryRange as ResponseQueryRange } from "../request/ErrorResponse"; +import type { QueryRange as ResponseQueryRange } from "../request/ErrorResponse"; /** @hidden */ export class QueryRange { diff --git a/sdk/cosmosdb/cosmos/src/routing/inMemoryCollectionRoutingMap.ts b/sdk/cosmosdb/cosmos/src/routing/inMemoryCollectionRoutingMap.ts index fd6f9a290302..39d68e475c1b 100644 --- a/sdk/cosmosdb/cosmos/src/routing/inMemoryCollectionRoutingMap.ts +++ b/sdk/cosmosdb/cosmos/src/routing/inMemoryCollectionRoutingMap.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PartitionKeyRange } from "../client"; +import type { PartitionKeyRange } from "../client"; import { Constants } from "../common"; import { QueryRange } from "./QueryRange"; diff --git a/sdk/cosmosdb/cosmos/src/routing/partitionKeyRangeCache.ts b/sdk/cosmosdb/cosmos/src/routing/partitionKeyRangeCache.ts index 82b42eae50d8..a72a1a3f465b 100644 --- a/sdk/cosmosdb/cosmos/src/routing/partitionKeyRangeCache.ts +++ b/sdk/cosmosdb/cosmos/src/routing/partitionKeyRangeCache.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { MetadataLookUpType } from "../CosmosDiagnostics"; -import { PartitionKeyRange } from "../client/Container/PartitionKeyRange"; -import { ClientContext } from "../ClientContext"; +import type { PartitionKeyRange } from "../client/Container/PartitionKeyRange"; +import type { ClientContext } from "../ClientContext"; import { getIdFromLink } from "../common/helper"; -import { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; import { withMetadataDiagnostics } from "../utils/diagnostics"; import { createCompleteRoutingMap } from "./CollectionRoutingMapFactory"; -import { InMemoryCollectionRoutingMap } from "./inMemoryCollectionRoutingMap"; -import { QueryRange } from "./QueryRange"; +import type { InMemoryCollectionRoutingMap } from "./inMemoryCollectionRoutingMap"; +import type { QueryRange } from "./QueryRange"; /** @hidden */ export class PartitionKeyRangeCache { diff --git a/sdk/cosmosdb/cosmos/src/routing/smartRoutingMapProvider.ts b/sdk/cosmosdb/cosmos/src/routing/smartRoutingMapProvider.ts index 4c9066f78738..88f857ceab20 100644 --- a/sdk/cosmosdb/cosmos/src/routing/smartRoutingMapProvider.ts +++ b/sdk/cosmosdb/cosmos/src/routing/smartRoutingMapProvider.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientContext } from "../ClientContext"; +import type { ClientContext } from "../ClientContext"; import { Constants } from "../common/constants"; -import { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; +import type { DiagnosticNodeInternal } from "../diagnostics/DiagnosticNodeInternal"; import { PartitionKeyRangeCache } from "./partitionKeyRangeCache"; import { QueryRange } from "./QueryRange"; diff --git a/sdk/cosmosdb/cosmos/src/session/SessionContext.ts b/sdk/cosmosdb/cosmos/src/session/SessionContext.ts index d0e0ff6251c3..eab84cdda519 100644 --- a/sdk/cosmosdb/cosmos/src/session/SessionContext.ts +++ b/sdk/cosmosdb/cosmos/src/session/SessionContext.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationType, ResourceType } from "../common"; +import type { OperationType, ResourceType } from "../common"; /** * @hidden diff --git a/sdk/cosmosdb/cosmos/src/session/sessionContainer.ts b/sdk/cosmosdb/cosmos/src/session/sessionContainer.ts index c7ed0a7ee037..ad540f946317 100644 --- a/sdk/cosmosdb/cosmos/src/session/sessionContainer.ts +++ b/sdk/cosmosdb/cosmos/src/session/sessionContainer.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import atob from "../utils/atob"; -import { Constants, getContainerLink, OperationType, ResourceType, trimSlashes } from "../common"; -import { CosmosHeaders } from "../queryExecutionContext"; -import { SessionContext } from "./SessionContext"; +import type { ResourceType } from "../common"; +import { Constants, getContainerLink, OperationType, trimSlashes } from "../common"; +import type { CosmosHeaders } from "../queryExecutionContext"; +import type { SessionContext } from "./SessionContext"; import { VectorSessionToken } from "./VectorSessionToken"; /** @hidden */ diff --git a/sdk/cosmosdb/cosmos/src/utils/SasToken.ts b/sdk/cosmosdb/cosmos/src/utils/SasToken.ts index 72e7c39a2ff4..23a6e6f2d960 100644 --- a/sdk/cosmosdb/cosmos/src/utils/SasToken.ts +++ b/sdk/cosmosdb/cosmos/src/utils/SasToken.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { SasTokenProperties } from "../client/SasToken/SasTokenProperties"; +import type { SasTokenProperties } from "../client/SasToken/SasTokenProperties"; import { Constants, CosmosKeyType, SasTokenPermissionKind } from "../common"; import { encodeUTF8 } from "./encode"; import { hmac } from "./hmac"; diff --git a/sdk/cosmosdb/cosmos/src/utils/batch.ts b/sdk/cosmosdb/cosmos/src/utils/batch.ts index 8fb8abf9ed7e..cb8bdcf68c00 100644 --- a/sdk/cosmosdb/cosmos/src/utils/batch.ts +++ b/sdk/cosmosdb/cosmos/src/utils/batch.ts @@ -1,17 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { JSONObject } from "../queryExecutionContext"; +import type { JSONObject } from "../queryExecutionContext"; import { extractPartitionKeys, undefinedPartitionKey } from "../extractPartitionKey"; -import { CosmosDiagnostics, RequestOptions } from ".."; -import { - NonePartitionKeyLiteral, +import type { CosmosDiagnostics, RequestOptions } from ".."; +import type { PartitionKey, PartitionKeyDefinition, PrimitivePartitionKeyValue, - convertToInternalPartitionKey, } from "../documents"; -import { PatchRequestBody } from "./patch"; +import { NonePartitionKeyLiteral, convertToInternalPartitionKey } from "../documents"; +import type { PatchRequestBody } from "./patch"; import { assertNotUndefined } from "./typeChecks"; import { bodyFromData } from "../request/request"; import { Constants } from "../common/constants"; diff --git a/sdk/cosmosdb/cosmos/src/utils/cachedClient.ts b/sdk/cosmosdb/cosmos/src/utils/cachedClient.ts index ae05399ed2f2..377050d45682 100644 --- a/sdk/cosmosdb/cosmos/src/utils/cachedClient.ts +++ b/sdk/cosmosdb/cosmos/src/utils/cachedClient.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpClient, createDefaultHttpClient } from "@azure/core-rest-pipeline"; +import type { HttpClient } from "@azure/core-rest-pipeline"; +import { createDefaultHttpClient } from "@azure/core-rest-pipeline"; let cachedHttpClient: HttpClient | undefined; diff --git a/sdk/cosmosdb/cosmos/src/utils/diagnostics.ts b/sdk/cosmosdb/cosmos/src/utils/diagnostics.ts index 606a89291518..1fe8c2543f3a 100644 --- a/sdk/cosmosdb/cosmos/src/utils/diagnostics.ts +++ b/sdk/cosmosdb/cosmos/src/utils/diagnostics.ts @@ -1,13 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CosmosDiagnostics, MetadataLookUpType } from "../CosmosDiagnostics"; -import { - DiagnosticDataValue, - DiagnosticNodeInternal, - DiagnosticNodeType, -} from "../diagnostics/DiagnosticNodeInternal"; -import { ClientContext } from "../ClientContext"; +import type { MetadataLookUpType } from "../CosmosDiagnostics"; +import { CosmosDiagnostics } from "../CosmosDiagnostics"; +import type { DiagnosticDataValue } from "../diagnostics/DiagnosticNodeInternal"; +import { DiagnosticNodeInternal, DiagnosticNodeType } from "../diagnostics/DiagnosticNodeInternal"; +import type { ClientContext } from "../ClientContext"; import { getCurrentTimestampInMs } from "./time"; import { CosmosDbDiagnosticLevel } from "../diagnostics/CosmosDbDiagnosticLevel"; import { randomUUID } from "@azure/core-util"; diff --git a/sdk/cosmosdb/cosmos/src/utils/hashing/hash.ts b/sdk/cosmosdb/cosmos/src/utils/hashing/hash.ts index 5e1426ea848c..338a74a57b8d 100644 --- a/sdk/cosmosdb/cosmos/src/utils/hashing/hash.ts +++ b/sdk/cosmosdb/cosmos/src/utils/hashing/hash.ts @@ -1,12 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - PartitionKeyDefinition, - PartitionKeyDefinitionVersion, - PartitionKeyKind, - PrimitivePartitionKeyValue, -} from "../../documents"; +import type { PartitionKeyDefinition, PrimitivePartitionKeyValue } from "../../documents"; +import { PartitionKeyDefinitionVersion, PartitionKeyKind } from "../../documents"; import { hashMultiHashPartitionKey } from "./multiHash"; import { hashV1PartitionKey } from "./v1"; import { hashV2PartitionKey } from "./v2"; diff --git a/sdk/cosmosdb/cosmos/src/utils/hashing/multiHash.ts b/sdk/cosmosdb/cosmos/src/utils/hashing/multiHash.ts index 39182e0bd9db..8dad5e787ac3 100644 --- a/sdk/cosmosdb/cosmos/src/utils/hashing/multiHash.ts +++ b/sdk/cosmosdb/cosmos/src/utils/hashing/multiHash.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PrimitivePartitionKeyValue } from "../../documents"; +import type { PrimitivePartitionKeyValue } from "../../documents"; import { hashV2PartitionKey } from "./v2"; /** diff --git a/sdk/cosmosdb/cosmos/src/utils/hashing/v1.ts b/sdk/cosmosdb/cosmos/src/utils/hashing/v1.ts index 68d0005f27fa..a027a0bf0687 100644 --- a/sdk/cosmosdb/cosmos/src/utils/hashing/v1.ts +++ b/sdk/cosmosdb/cosmos/src/utils/hashing/v1.ts @@ -5,7 +5,7 @@ import { doubleToByteArrayJSBI, writeNumberForBinaryEncodingJSBI } from "./encod import { writeStringForBinaryEncoding } from "./encoding/string"; import { BytePrefix } from "./encoding/prefix"; import MurmurHash from "./murmurHash"; -import { PrimitivePartitionKeyValue } from "../../documents"; +import type { PrimitivePartitionKeyValue } from "../../documents"; const MAX_STRING_CHARS = 100; diff --git a/sdk/cosmosdb/cosmos/src/utils/hashing/v2.ts b/sdk/cosmosdb/cosmos/src/utils/hashing/v2.ts index 032af49439d6..66d9a32df974 100644 --- a/sdk/cosmosdb/cosmos/src/utils/hashing/v2.ts +++ b/sdk/cosmosdb/cosmos/src/utils/hashing/v2.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PrimitivePartitionKeyValue } from "../../documents"; +import type { PrimitivePartitionKeyValue } from "../../documents"; import { doubleToByteArrayJSBI } from "./encoding/number"; import { BytePrefix } from "./encoding/prefix"; import MurmurHash from "./murmurHash"; diff --git a/sdk/cosmosdb/cosmos/src/utils/headers.ts b/sdk/cosmosdb/cosmos/src/utils/headers.ts index 0ebaa6d3a29c..a49ded200d36 100644 --- a/sdk/cosmosdb/cosmos/src/utils/headers.ts +++ b/sdk/cosmosdb/cosmos/src/utils/headers.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { hmac } from "./hmac"; -import { HTTPMethod, ResourceType, Constants } from "../common"; +import type { HTTPMethod } from "../common"; +import { ResourceType, Constants } from "../common"; export async function generateHeaders( masterKey: string, diff --git a/sdk/cosmosdb/cosmos/src/utils/offers.ts b/sdk/cosmosdb/cosmos/src/utils/offers.ts index b6ae3063387b..0844debcd776 100644 --- a/sdk/cosmosdb/cosmos/src/utils/offers.ts +++ b/sdk/cosmosdb/cosmos/src/utils/offers.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ContainerRequest } from "../client/Container/ContainerRequest"; +import type { ContainerRequest } from "../client/Container/ContainerRequest"; export function validateOffer(body: ContainerRequest): void { if (body.throughput) { diff --git a/sdk/cosmosdb/cosmos/src/utils/typeChecks.ts b/sdk/cosmosdb/cosmos/src/utils/typeChecks.ts index 4a8ba76718d7..c9bbde1f5ff1 100644 --- a/sdk/cosmosdb/cosmos/src/utils/typeChecks.ts +++ b/sdk/cosmosdb/cosmos/src/utils/typeChecks.ts @@ -1,13 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - NonePartitionKeyLiteral, +import type { NonePartitionKeyType, - NullPartitionKeyLiteral, NullPartitionKeyType, PrimitivePartitionKeyValue, } from "../documents"; +import { NonePartitionKeyLiteral, NullPartitionKeyLiteral } from "../documents"; /** * A type which could be any type but undefined diff --git a/sdk/cosmosdb/cosmos/test/internal/session.spec.ts b/sdk/cosmosdb/cosmos/test/internal/session.spec.ts index 3077b6ee3171..f4ab194981c9 100644 --- a/sdk/cosmosdb/cosmos/test/internal/session.spec.ts +++ b/sdk/cosmosdb/cosmos/test/internal/session.spec.ts @@ -2,17 +2,18 @@ // Licensed under the MIT License. /* eslint-disable no-unused-expressions */ import assert from "assert"; -import { Suite } from "mocha"; -import { ClientContext, Container, PluginConfig, PluginOn } from "../../src"; +import type { Suite } from "mocha"; +import type { ClientContext, Container, PluginConfig } from "../../src"; +import { PluginOn } from "../../src"; import { OperationType, ResourceType } from "../../src/common"; import { ConsistencyLevel } from "../../src"; import { CosmosClient } from "../../src"; -import { SessionContainer } from "../../src/session/sessionContainer"; +import type { SessionContainer } from "../../src/session/sessionContainer"; import { endpoint } from "../public/common/_testConfig"; import { masterKey } from "../public/common/_fakeTestSecrets"; import { addEntropy, getTestDatabase, removeAllDatabases } from "../public/common/TestHelpers"; -import { RequestContext } from "../../src"; -import { Response } from "../../src/request/Response"; +import type { RequestContext } from "../../src"; +import type { Response } from "../../src/request/Response"; import { expect } from "chai"; describe("New session token", function () { diff --git a/sdk/cosmosdb/cosmos/test/internal/unit/auth.spec.ts b/sdk/cosmosdb/cosmos/test/internal/unit/auth.spec.ts index 52b4a03b3f48..8102975c5549 100644 --- a/sdk/cosmosdb/cosmos/test/internal/unit/auth.spec.ts +++ b/sdk/cosmosdb/cosmos/test/internal/unit/auth.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { getAuthorizationTokenUsingResourceTokens } from "../../../src/auth"; -import { Suite } from "mocha"; +import type { Suite } from "mocha"; import assert from "assert"; describe("NodeJS CRUD Tests", function (this: Suite) { diff --git a/sdk/cosmosdb/cosmos/test/internal/unit/changeFeed/changeFeedUtils.spec.ts b/sdk/cosmosdb/cosmos/test/internal/unit/changeFeed/changeFeedUtils.spec.ts index f57d5b6f5710..979e208a9a90 100644 --- a/sdk/cosmosdb/cosmos/test/internal/unit/changeFeed/changeFeedUtils.spec.ts +++ b/sdk/cosmosdb/cosmos/test/internal/unit/changeFeed/changeFeedUtils.spec.ts @@ -7,7 +7,8 @@ import { isNullOrEmpty, fetchStartTime, } from "../../../../src/client/ChangeFeed/changeFeedUtils"; -import { ChangeFeedStartFrom, PartitionKeyRange } from "../../../../src/"; +import type { PartitionKeyRange } from "../../../../src/"; +import { ChangeFeedStartFrom } from "../../../../src/"; import { FeedRangeInternal } from "../../../../src/client/ChangeFeed/FeedRange"; import { isEpkRange } from "../../../../src/client/ChangeFeed/changeFeedUtils"; import { QueryRange } from "../../../../src/routing"; diff --git a/sdk/cosmosdb/cosmos/test/internal/unit/client.spec.ts b/sdk/cosmosdb/cosmos/test/internal/unit/client.spec.ts index bc4698ff8519..36da9fbc6f14 100644 --- a/sdk/cosmosdb/cosmos/test/internal/unit/client.spec.ts +++ b/sdk/cosmosdb/cosmos/test/internal/unit/client.spec.ts @@ -1,18 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - Container, - CosmosClient, - PatchOperationType, - RequestContext, - ResourceType, -} from "../../../src"; +import type { Container, RequestContext } from "../../../src"; +import { CosmosClient, PatchOperationType, ResourceType } from "../../../src"; import assert from "assert"; -import { Suite } from "mocha"; -import Sinon, { SinonSandbox, SinonSpy } from "sinon"; +import type { Suite } from "mocha"; +import type { SinonSandbox, SinonSpy } from "sinon"; +import Sinon from "sinon"; import { getTestContainer } from "../../public/common/TestHelpers"; -import { AccessToken, TokenCredential } from "@azure/identity"; +import type { AccessToken, TokenCredential } from "@azure/identity"; import nock from "nock"; import { RequestHandler } from "../../../src/request/RequestHandler"; import { masterKey } from "../../public/common/_fakeTestSecrets"; diff --git a/sdk/cosmosdb/cosmos/test/internal/unit/defaultQueryExecutionContext.spec.ts b/sdk/cosmosdb/cosmos/test/internal/unit/defaultQueryExecutionContext.spec.ts index 5b937d3a1ea9..afebf8c10211 100644 --- a/sdk/cosmosdb/cosmos/test/internal/unit/defaultQueryExecutionContext.spec.ts +++ b/sdk/cosmosdb/cosmos/test/internal/unit/defaultQueryExecutionContext.spec.ts @@ -1,10 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - FetchFunctionCallback, - DefaultQueryExecutionContext, -} from "../../../src/queryExecutionContext"; -import { FeedOptions } from "../../../src"; +import type { FetchFunctionCallback } from "../../../src/queryExecutionContext"; +import { DefaultQueryExecutionContext } from "../../../src/queryExecutionContext"; +import type { FeedOptions } from "../../../src"; import assert from "assert"; import { sleep } from "../../../src/common"; import { createDummyDiagnosticNode } from "../../public/common/TestHelpers"; diff --git a/sdk/cosmosdb/cosmos/test/internal/unit/diagnostics.spec.ts b/sdk/cosmosdb/cosmos/test/internal/unit/diagnostics.spec.ts index 6683bb271418..5b6f2610cc4e 100644 --- a/sdk/cosmosdb/cosmos/test/internal/unit/diagnostics.spec.ts +++ b/sdk/cosmosdb/cosmos/test/internal/unit/diagnostics.spec.ts @@ -1,25 +1,27 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Suite } from "mocha"; +import type { Suite } from "mocha"; import { addDignosticChild, getEmptyCosmosDiagnostics, withDiagnostics, } from "../../../src/utils/diagnostics"; import { CosmosDbDiagnosticLevel } from "../../../src/diagnostics/CosmosDbDiagnosticLevel"; -import { +import type { ClientConfigDiagnostic, + CosmosClientOptions, + RequestOptions, + Resource, +} from "../../../src"; +import { ClientContext, ConsistencyLevel, Constants, CosmosClient, - CosmosClientOptions, ErrorResponse, GlobalEndpointManager, ItemResponse, - RequestOptions, - Resource, } from "../../../src"; import { expect } from "chai"; import { getCurrentTimestampInMs } from "../../../src/utils/time"; diff --git a/sdk/cosmosdb/cosmos/test/internal/unit/sasToken.spec.ts b/sdk/cosmosdb/cosmos/test/internal/unit/sasToken.spec.ts index bd96418e8f51..08d2ef0a90f2 100644 --- a/sdk/cosmosdb/cosmos/test/internal/unit/sasToken.spec.ts +++ b/sdk/cosmosdb/cosmos/test/internal/unit/sasToken.spec.ts @@ -6,7 +6,7 @@ import { endpoint } from "../../public/common/_testConfig"; import { masterKey, userSasTokenKey } from "../../public/common/_fakeTestSecrets"; import { SasTokenPermissionKind } from "../../../src/common"; import { createAuthorizationSasToken } from "../../../src/utils/SasToken"; -import { SasTokenProperties } from "../../../src/client/SasToken/SasTokenProperties"; +import type { SasTokenProperties } from "../../../src/client/SasToken/SasTokenProperties"; describe.skip("SAS Token Authorization", function () { const sasTokenProperties = { diff --git a/sdk/cosmosdb/cosmos/test/internal/unit/sessionContainer.spec.ts b/sdk/cosmosdb/cosmos/test/internal/unit/sessionContainer.spec.ts index cdc3821eeaf3..736d010bc5d4 100644 --- a/sdk/cosmosdb/cosmos/test/internal/unit/sessionContainer.spec.ts +++ b/sdk/cosmosdb/cosmos/test/internal/unit/sessionContainer.spec.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import assert from "assert"; import { Constants, OperationType, ResourceType } from "../../../src/common"; -import { CosmosHeaders } from "../../../src/queryExecutionContext/CosmosHeaders"; +import type { CosmosHeaders } from "../../../src/queryExecutionContext/CosmosHeaders"; import { SessionContainer } from "../../../src/session/sessionContainer"; -import { SessionContext } from "../../../src/session/SessionContext"; +import type { SessionContext } from "../../../src/session/SessionContext"; describe("SessionContainer", function () { const collectionLink = "dbs/testDatabase/colls/testCollection"; diff --git a/sdk/cosmosdb/cosmos/test/internal/unit/smartRoutingMapProvider.spec.ts b/sdk/cosmosdb/cosmos/test/internal/unit/smartRoutingMapProvider.spec.ts index 930f5475f289..ccad0a395a04 100644 --- a/sdk/cosmosdb/cosmos/test/internal/unit/smartRoutingMapProvider.spec.ts +++ b/sdk/cosmosdb/cosmos/test/internal/unit/smartRoutingMapProvider.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { ClientContext } from "../../../src/ClientContext"; +import type { ClientContext } from "../../../src/ClientContext"; import { PartitionKeyRangeCache, QueryRange, SmartRoutingMapProvider } from "../../../src/routing"; import { MockedClientContext } from "../../public/common/MockClientContext"; import { createDummyDiagnosticNode } from "../../public/common/TestHelpers"; diff --git a/sdk/cosmosdb/cosmos/test/internal/unit/timeoutFailoverRetryPolicy.spec.ts b/sdk/cosmosdb/cosmos/test/internal/unit/timeoutFailoverRetryPolicy.spec.ts index 9f5766fa90b3..872f257024f8 100644 --- a/sdk/cosmosdb/cosmos/test/internal/unit/timeoutFailoverRetryPolicy.spec.ts +++ b/sdk/cosmosdb/cosmos/test/internal/unit/timeoutFailoverRetryPolicy.spec.ts @@ -6,8 +6,8 @@ import { GlobalEndpointManager } from "../../../src/globalEndpointManager"; import { HTTPMethod, OperationType, ResourceType } from "../../../src/common/constants"; import { DatabaseAccount } from "../../../src/documents/DatabaseAccount"; import { ResourceResponse } from "../../../src/request/ResourceResponse"; -import { ErrorResponse } from "../../../src/request/ErrorResponse"; -import { RetryContext } from "../../../src/retry/RetryContext"; +import type { ErrorResponse } from "../../../src/request/ErrorResponse"; +import type { RetryContext } from "../../../src/retry/RetryContext"; import { StatusCodes } from "../../../src/common/statusCodes"; import { TimeoutError } from "../../../src/request/TimeoutError"; import { getEmptyCosmosDiagnostics } from "../../../src/utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/test/internal/unit/utils/batch.spec.ts b/sdk/cosmosdb/cosmos/test/internal/unit/utils/batch.spec.ts index 3e79d939593f..8a3a8f14d952 100644 --- a/sdk/cosmosdb/cosmos/test/internal/unit/utils/batch.spec.ts +++ b/sdk/cosmosdb/cosmos/test/internal/unit/utils/batch.spec.ts @@ -3,11 +3,10 @@ import assert from "assert"; import { Constants } from "../../../../src"; +import type { Batch, Operation } from "../../../../src/utils/batch"; import { - Batch, BulkOperationType, calculateObjectSizeInBytes, - Operation, splitBatchBasedOnBodySize, } from "../../../../src/utils/batch"; diff --git a/sdk/cosmosdb/cosmos/test/internal/unit/utils/offer.spec.ts b/sdk/cosmosdb/cosmos/test/internal/unit/utils/offer.spec.ts index 27208e817ded..dd81809c02ef 100644 --- a/sdk/cosmosdb/cosmos/test/internal/unit/utils/offer.spec.ts +++ b/sdk/cosmosdb/cosmos/test/internal/unit/utils/offer.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import assert from "assert"; import { validateOffer } from "../../../../src/utils/offers"; -import { ContainerRequest } from "../../../../src"; +import type { ContainerRequest } from "../../../../src"; describe("Offer utils", function () { describe("validateOffer", function () { diff --git a/sdk/cosmosdb/cosmos/test/internal/unit/utils/supportedQueryFeaturesBuilder.spec.ts b/sdk/cosmosdb/cosmos/test/internal/unit/utils/supportedQueryFeaturesBuilder.spec.ts index a9e3282442de..10b6ba4de233 100644 --- a/sdk/cosmosdb/cosmos/test/internal/unit/utils/supportedQueryFeaturesBuilder.spec.ts +++ b/sdk/cosmosdb/cosmos/test/internal/unit/utils/supportedQueryFeaturesBuilder.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import assert from "assert"; import { supportedQueryFeaturesBuilder } from "../../../../src/utils/supportedQueryFeaturesBuilder"; -import { FeedOptions } from "../../../../src/request/FeedOptions"; +import type { FeedOptions } from "../../../../src/request/FeedOptions"; describe("validate supportedQueryFeaturesBuilder", function () { it("should contain nonStreamingOrderBy feature", () => { diff --git a/sdk/cosmosdb/cosmos/test/public/common/TestHelpers.ts b/sdk/cosmosdb/cosmos/test/public/common/TestHelpers.ts index 6e24a45db444..74484adba670 100644 --- a/sdk/cosmosdb/cosmos/test/public/common/TestHelpers.ts +++ b/sdk/cosmosdb/cosmos/test/public/common/TestHelpers.ts @@ -2,17 +2,14 @@ // Licensed under the MIT License. /* eslint-disable no-unused-expressions */ import assert from "assert"; -import { +import type { Container, - CosmosClient, - CosmosDbDiagnosticLevel, CosmosDiagnostics, Database, DatabaseDefinition, FailedRequestAttemptDiagnostic, GatewayStatistics, MetadataLookUpDiagnostic, - MetadataLookUpType, PartitionKey, PartitionKeyDefinition, PermissionDefinition, @@ -20,18 +17,25 @@ import { Response, UserDefinition, } from "../../../src"; -import { ItemDefinition, ItemResponse, PermissionResponse, Resource, User } from "../../../src"; -import { UserResponse } from "../../../src"; +import { CosmosClient, CosmosDbDiagnosticLevel, MetadataLookUpType } from "../../../src"; +import type { + ItemDefinition, + ItemResponse, + PermissionResponse, + Resource, + User, +} from "../../../src"; +import type { UserResponse } from "../../../src"; import { endpoint } from "../common/_testConfig"; import { masterKey } from "../common/_fakeTestSecrets"; -import { DatabaseRequest } from "../../../src"; -import { ContainerRequest } from "../../../src"; +import type { DatabaseRequest } from "../../../src"; +import type { ContainerRequest } from "../../../src"; import { AssertionError, expect } from "chai"; import { DiagnosticNodeInternal, DiagnosticNodeType, } from "../../../src/diagnostics/DiagnosticNodeInternal"; -import { ExtractPromise } from "../../../src/utils/diagnostics"; +import type { ExtractPromise } from "../../../src/utils/diagnostics"; import { getCurrentTimestampInMs } from "../../../src/utils/time"; import { extractPartitionKeys } from "../../../src/extractPartitionKey"; diff --git a/sdk/cosmosdb/cosmos/test/public/functional/authorization.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/authorization.spec.ts index 7db90a0749ad..ee54130e819b 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/authorization.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/authorization.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; +import type { Suite } from "mocha"; import { CosmosClient, PermissionMode } from "../../../src"; -import { PermissionDefinition } from "../../../src/"; +import type { PermissionDefinition } from "../../../src/"; import { endpoint } from "../common/_testConfig"; import { masterKey } from "../common/_fakeTestSecrets"; import { diff --git a/sdk/cosmosdb/cosmos/test/public/functional/client.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/client.spec.ts index 6299455ba503..656262064494 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/client.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/client.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; +import type { Suite } from "mocha"; import { Agent } from "http"; import { CosmosClient } from "../../../src"; import { endpoint } from "../common/_testConfig"; diff --git a/sdk/cosmosdb/cosmos/test/public/functional/computedProperties.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/computedProperties.spec.ts index c8afdc876529..5d7e6ceb4b86 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/computedProperties.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/computedProperties.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { ComputedProperty } from "../../../src/documents/ComputedProperty"; -import { IndexingPolicy } from "../../../src/documents/IndexingPolicy"; +import type { ComputedProperty } from "../../../src/documents/ComputedProperty"; +import type { IndexingPolicy } from "../../../src/documents/IndexingPolicy"; import { createOrUpsertItem, getTestDatabase, removeAllDatabases } from "../common/TestHelpers"; -import { Container } from "../../../src/client/Container/Container"; +import type { Container } from "../../../src/client/Container/Container"; // As of the current emulator release (March 23), computed properties are not supported, // hence, we are temporarily excluding these tests. diff --git a/sdk/cosmosdb/cosmos/test/public/functional/conflict.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/conflict.spec.ts index 7455a2abe4b6..f65e78a5caa0 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/conflict.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/conflict.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; +import type { Suite } from "mocha"; import { removeAllDatabases, getTestContainer, testForDiagnostics } from "../common/TestHelpers"; import { getCurrentTimestampInMs } from "../../../src/utils/time"; diff --git a/sdk/cosmosdb/cosmos/test/public/functional/container.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/container.spec.ts index 8bf895b945b5..528da324203c 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/container.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/container.spec.ts @@ -1,19 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; +import type { Suite } from "mocha"; +import type { ContainerResponse, PartitionKeyDefinition } from "../../../src"; import { Constants, - ContainerResponse, OperationType, - PartitionKeyDefinition, PartitionKeyKind, ResourceType, StatusCodes, } from "../../../src"; -import { ContainerDefinition, Database, Container } from "../../../src"; -import { ContainerRequest } from "../../../src"; -import { DataType, IndexedPath, IndexingMode, IndexingPolicy, IndexKind } from "../../../src"; +import type { ContainerDefinition, Database, Container } from "../../../src"; +import type { ContainerRequest } from "../../../src"; +import type { IndexedPath, IndexingPolicy } from "../../../src"; +import { DataType, IndexingMode, IndexKind } from "../../../src"; import { getTestDatabase, removeAllDatabases, diff --git a/sdk/cosmosdb/cosmos/test/public/functional/database.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/database.spec.ts index 98dca6989698..781ef2bdd0de 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/database.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/database.spec.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; -import { CosmosClient, DatabaseDefinition, Database } from "../../../src"; +import type { Suite } from "mocha"; +import type { DatabaseDefinition, Database } from "../../../src"; +import { CosmosClient } from "../../../src"; import { endpoint } from "../common/_testConfig"; import { masterKey } from "../common/_fakeTestSecrets"; import { @@ -12,7 +13,7 @@ import { assertThrowsAsync, testForDiagnostics, } from "../common/TestHelpers"; -import { DatabaseRequest } from "../../../src"; +import type { DatabaseRequest } from "../../../src"; const client = new CosmosClient({ endpoint, diff --git a/sdk/cosmosdb/cosmos/test/public/functional/databaseaccount.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/databaseaccount.spec.ts index e5ba00ae7234..841fd17ae662 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/databaseaccount.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/databaseaccount.spec.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Context } from "mocha"; -import { Suite } from "mocha"; +import type { Context } from "mocha"; +import type { Suite } from "mocha"; import { CosmosClient, OperationType } from "../../../src"; import { endpoint } from "../common/_testConfig"; import { masterKey } from "../common/_fakeTestSecrets"; diff --git a/sdk/cosmosdb/cosmos/test/public/functional/endpointComponent/NonStreamingOrderByDistinctEndpointComponent.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/endpointComponent/NonStreamingOrderByDistinctEndpointComponent.spec.ts index 4134a95cccc4..7ed548541db2 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/endpointComponent/NonStreamingOrderByDistinctEndpointComponent.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/endpointComponent/NonStreamingOrderByDistinctEndpointComponent.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { ExecutionContext } from "../../../../src/queryExecutionContext"; +import type { ExecutionContext } from "../../../../src/queryExecutionContext"; import { NonStreamingOrderByDistinctEndpointComponent } from "../../../../src/queryExecutionContext/EndpointComponent/NonStreamingOrderByDistinctEndpointComponent"; -import { QueryInfo } from "../../../../src/request/ErrorResponse"; +import type { QueryInfo } from "../../../../src/request/ErrorResponse"; describe("NonStreamingOrderByDistinctEndpointComponent", () => { it("should initialize correctly with sort orders and priority queue buffer size", () => { diff --git a/sdk/cosmosdb/cosmos/test/public/functional/endpointComponent/NonStreamingOrderByEndpointComponent.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/endpointComponent/NonStreamingOrderByEndpointComponent.spec.ts index 86f63be48599..9f074e1f4def 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/endpointComponent/NonStreamingOrderByEndpointComponent.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/endpointComponent/NonStreamingOrderByEndpointComponent.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { ExecutionContext } from "../../../../src/queryExecutionContext"; +import type { ExecutionContext } from "../../../../src/queryExecutionContext"; import { NonStreamingOrderByEndpointComponent } from "../../../../src/queryExecutionContext/EndpointComponent/NonStreamingOrderByEndpointComponent"; describe("NonStreamingOrderByEndpointComponent", () => { diff --git a/sdk/cosmosdb/cosmos/test/public/functional/item/batch.item.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/item/batch.item.spec.ts index 213edbe5f9ec..6c7c9a89c894 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/item/batch.item.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/item/batch.item.spec.ts @@ -2,16 +2,11 @@ // Licensed under the MIT License. import assert from "assert"; -import { - Container, - CosmosClient, - OperationResponse, - OperationType, - PatchOperationType, - ResourceType, -} from "../../../../src"; +import type { Container, OperationResponse } from "../../../../src"; +import { CosmosClient, OperationType, PatchOperationType, ResourceType } from "../../../../src"; import { addEntropy, testForDiagnostics } from "../../common/TestHelpers"; -import { BulkOperationType, OperationInput } from "../../../../src"; +import type { OperationInput } from "../../../../src"; +import { BulkOperationType } from "../../../../src"; import { PartitionKeyKind } from "../../../../src/documents"; import { endpoint } from "../../common/_testConfig"; import { masterKey } from "../../common/_fakeTestSecrets"; diff --git a/sdk/cosmosdb/cosmos/test/public/functional/item/bulk.item.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/item/bulk.item.spec.ts index 93c55782a492..47421b8ef298 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/item/bulk.item.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/item/bulk.item.spec.ts @@ -2,28 +2,28 @@ // Licensed under the MIT License. import assert from "assert"; -import { - Constants, +import type { BulkOptions, Container, ContainerRequest, - CosmosClient, OperationResponse, + PluginConfig, +} from "../../../../src"; +import { + Constants, + CosmosClient, PatchOperationType, CosmosDbDiagnosticLevel, - PluginConfig, PluginOn, StatusCodes, ErrorResponse, } from "../../../../src"; import { addEntropy, getTestContainer, testForDiagnostics } from "../../common/TestHelpers"; -import { BulkOperationType, OperationInput } from "../../../../src"; +import type { OperationInput } from "../../../../src"; +import { BulkOperationType } from "../../../../src"; import { generateOperationOfSize } from "../../../internal/unit/utils/batch.spec"; -import { - PartitionKey, - PartitionKeyDefinitionVersion, - PartitionKeyKind, -} from "../../../../src/documents"; +import type { PartitionKey } from "../../../../src/documents"; +import { PartitionKeyDefinitionVersion, PartitionKeyKind } from "../../../../src/documents"; import { endpoint } from "../../common/_testConfig"; import { masterKey } from "../../common/_fakeTestSecrets"; import { getCurrentTimestampInMs } from "../../../../src/utils/time"; diff --git a/sdk/cosmosdb/cosmos/test/public/functional/item/item.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/item/item.spec.ts index 4f947904a28d..afdace989037 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/item/item.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/item/item.spec.ts @@ -1,16 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; -import { +import type { Suite } from "mocha"; +import type { Container, ContainerDefinition, ContainerRequest, - CosmosClient, PatchOperation, RequestOptions, } from "../../../../src"; -import { ItemDefinition } from "../../../../src"; +import { CosmosClient } from "../../../../src"; +import type { ItemDefinition } from "../../../../src"; import { bulkDeleteItems, bulkInsertItems, @@ -27,12 +27,8 @@ import { } from "../../common/TestHelpers"; import { endpoint } from "../../common/_testConfig"; import { masterKey } from "../../common/_fakeTestSecrets"; -import { - PartitionKey, - PartitionKeyDefinition, - PartitionKeyDefinitionVersion, - PartitionKeyKind, -} from "../../../../src/documents"; +import type { PartitionKey, PartitionKeyDefinition } from "../../../../src/documents"; +import { PartitionKeyDefinitionVersion, PartitionKeyKind } from "../../../../src/documents"; import { PriorityLevel } from "../../../../src/documents/PriorityLevel"; import { getCurrentTimestampInMs } from "../../../../src/utils/time"; diff --git a/sdk/cosmosdb/cosmos/test/public/functional/item/itemIdEncoding.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/item/itemIdEncoding.spec.ts index 5b2a253929a5..25572e24a183 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/item/itemIdEncoding.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/item/itemIdEncoding.spec.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; -import { Container, CosmosClient } from "../../../../src"; +import type { Suite } from "mocha"; +import type { Container, CosmosClient } from "../../../../src"; import { getTestContainer, removeAllDatabases, diff --git a/sdk/cosmosdb/cosmos/test/public/functional/npcontainer.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/npcontainer.spec.ts index d20065c50744..87b3b155c8c5 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/npcontainer.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/npcontainer.spec.ts @@ -2,15 +2,8 @@ // Licensed under the MIT License. /* eslint-disable no-unused-expressions */ import assert from "assert"; -import { - CosmosClient, - Constants, - Container, - PluginConfig, - CosmosClientOptions, - OperationInput, - PatchOperationType, -} from "../../../src"; +import type { Container, PluginConfig, CosmosClientOptions, OperationInput } from "../../../src"; +import { CosmosClient, Constants, PatchOperationType } from "../../../src"; import { getTestContainer, removeAllDatabases } from "../common/TestHelpers"; import { endpoint } from "../common/_testConfig"; import { masterKey } from "../common/_fakeTestSecrets"; diff --git a/sdk/cosmosdb/cosmos/test/public/functional/offer.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/offer.spec.ts index 095a90e7c580..0638eaef8b05 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/offer.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/offer.spec.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Context } from "mocha"; -import { Suite } from "mocha"; +import type { Context } from "mocha"; +import type { Suite } from "mocha"; import { Constants, CosmosClient } from "../../../src"; import { endpoint } from "../common/_testConfig"; import { masterKey } from "../common/_fakeTestSecrets"; diff --git a/sdk/cosmosdb/cosmos/test/public/functional/permission.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/permission.spec.ts index 3cf486188ee0..1bc7e1477698 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/permission.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/permission.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; +import type { Suite } from "mocha"; import { PermissionMode } from "../../../src"; -import { PermissionDefinition } from "../../../src"; +import type { PermissionDefinition } from "../../../src"; import { createOrUpsertPermission, getTestContainer, diff --git a/sdk/cosmosdb/cosmos/test/public/functional/plugin.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/plugin.spec.ts index be806fb0a8f4..5f79d1d7d70c 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/plugin.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/plugin.spec.ts @@ -1,12 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. /* eslint-disable no-unused-expressions */ -import { CosmosClient, CosmosClientOptions } from "../../../src"; -import { RequestContext } from "../../../src"; -import { Plugin, Next, PluginConfig } from "../../../src"; +import type { CosmosClientOptions } from "../../../src"; +import { CosmosClient } from "../../../src"; +import type { RequestContext } from "../../../src"; +import type { Plugin, Next, PluginConfig } from "../../../src"; import * as assert from "assert"; -import { DiagnosticNodeInternal } from "../../../src/diagnostics/DiagnosticNodeInternal"; +import type { DiagnosticNodeInternal } from "../../../src/diagnostics/DiagnosticNodeInternal"; import { expect } from "chai"; import { getEmptyCosmosDiagnostics } from "../../../src/utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/test/public/functional/query.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/query.spec.ts index 5268613ca25f..063116a9dc8e 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/query.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/query.spec.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; -import { ContainerDefinition, CosmosClient } from "../../../src"; -import { Container } from "../../../src/"; +import type { Suite } from "mocha"; +import type { ContainerDefinition } from "../../../src"; +import { CosmosClient } from "../../../src"; +import type { Container } from "../../../src/"; import { endpoint } from "../common/_testConfig"; import { masterKey } from "../common/_fakeTestSecrets"; import { diff --git a/sdk/cosmosdb/cosmos/test/public/functional/queryIterator.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/queryIterator.spec.ts index a59165650870..764cd6fcb3f1 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/queryIterator.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/queryIterator.spec.ts @@ -3,7 +3,8 @@ // Import the required modules import assert from "assert"; -import { Container, CosmosClient, FeedOptions, OperationType, ResourceType } from "../../../src"; +import type { Container, FeedOptions } from "../../../src"; +import { CosmosClient, OperationType, ResourceType } from "../../../src"; import { endpoint } from "../../public/common/_testConfig"; import { masterKey } from "../../public/common/_fakeTestSecrets"; import { diff --git a/sdk/cosmosdb/cosmos/test/public/functional/spatial.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/spatial.spec.ts index 29d4ac65806d..cb4e9f0c69ce 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/spatial.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/spatial.spec.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; -import { Database, DataType, IndexKind } from "../../../src"; +import type { Suite } from "mocha"; +import type { Database } from "../../../src"; +import { DataType, IndexKind } from "../../../src"; import { createOrUpsertItem, getTestDatabase, removeAllDatabases } from "../common/TestHelpers"; describe("Spatial Indexes", function (this: Suite) { diff --git a/sdk/cosmosdb/cosmos/test/public/functional/sproc.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/sproc.spec.ts index 45aa7b76f230..1cdd72b10614 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/sproc.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/sproc.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Context } from "mocha"; -import { Suite } from "mocha"; +import type { Context } from "mocha"; +import type { Suite } from "mocha"; import { Constants } from "../../../src"; -import { Container, StoredProcedureDefinition } from "../../../src/"; +import type { Container, StoredProcedureDefinition } from "../../../src/"; import { PartitionKeyDefinitionVersion, PartitionKeyKind } from "../../../src/documents"; import { bulkInsertItems, diff --git a/sdk/cosmosdb/cosmos/test/public/functional/trigger.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/trigger.spec.ts index ec6fb7e2b000..da7f0e0d552f 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/trigger.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/trigger.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; +import type { Suite } from "mocha"; import { TriggerOperation, TriggerType } from "../../../src"; -import { TriggerDefinition, Container } from "../../../src"; +import type { TriggerDefinition, Container } from "../../../src"; import { getTestContainer, removeAllDatabases } from "../common/TestHelpers"; const notFoundErrorCode = 404; diff --git a/sdk/cosmosdb/cosmos/test/public/functional/ttl.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/ttl.spec.ts index 552fe469fedd..8f2709554863 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/ttl.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/ttl.spec.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; -import { Container, ContainerDefinition, Database } from "../../../src"; +import type { Suite } from "mocha"; +import type { Container, ContainerDefinition, Database } from "../../../src"; import { getTestDatabase, removeAllDatabases } from "../common/TestHelpers"; import { StatusCodes } from "../../../src"; diff --git a/sdk/cosmosdb/cosmos/test/public/functional/udf.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/udf.spec.ts index 005f4d556f24..8e755cc51cc3 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/udf.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/udf.spec.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; -import { UserDefinedFunctionDefinition, Container } from "../../../src"; +import type { Suite } from "mocha"; +import type { UserDefinedFunctionDefinition, Container } from "../../../src"; import { removeAllDatabases, getTestContainer } from "../common/TestHelpers"; describe("User Defined Function", function (this: Suite) { diff --git a/sdk/cosmosdb/cosmos/test/public/functional/user.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/user.spec.ts index eb9c3f948c42..d3f5f57a7c06 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/user.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/user.spec.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; -import { UserDefinition } from "../../../src"; +import type { Suite } from "mocha"; +import type { UserDefinition } from "../../../src"; import { createOrUpsertUser, getTestDatabase, removeAllDatabases } from "../common/TestHelpers"; describe("NodeJS CRUD Tests", function (this: Suite) { diff --git a/sdk/cosmosdb/cosmos/test/public/functional/vectorEmbeddingPolicy.spec.ts b/sdk/cosmosdb/cosmos/test/public/functional/vectorEmbeddingPolicy.spec.ts index a0d08d6cf561..689a24b2f4fb 100644 --- a/sdk/cosmosdb/cosmos/test/public/functional/vectorEmbeddingPolicy.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/functional/vectorEmbeddingPolicy.spec.ts @@ -1,16 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; +import type { IndexingPolicy, VectorEmbeddingPolicy } from "../../../src/documents"; import { - IndexingPolicy, VectorEmbeddingDataType, VectorEmbeddingDistanceFunction, - VectorEmbeddingPolicy, VectorIndexType, } from "../../../src/documents"; import { getTestDatabase } from "../common/TestHelpers"; -import { Database } from "../../../src/client/Database/Database"; -import { Container } from "../../../src/client"; +import type { Database } from "../../../src/client/Database/Database"; +import type { Container } from "../../../src/client"; // Skipping these tests as they are not supported by public emulator describe("Vector search feature", async () => { diff --git a/sdk/cosmosdb/cosmos/test/public/indexMetrics.spec.ts b/sdk/cosmosdb/cosmos/test/public/indexMetrics.spec.ts index bd4eb74cf9b7..6610fa3e50ac 100644 --- a/sdk/cosmosdb/cosmos/test/public/indexMetrics.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/indexMetrics.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; +import type { Suite } from "mocha"; import { IndexMetricWriter, IndexUtilizationInfo } from "../../src/indexMetrics"; describe("Test Index Metrics Writer", function (this: Suite) { this.timeout(process.env.MOCHA_TIMEOUT || 20000); diff --git a/sdk/cosmosdb/cosmos/test/public/integration/aggregateQuery.spec.ts b/sdk/cosmosdb/cosmos/test/public/integration/aggregateQuery.spec.ts index 8ca2dbf66e51..e0aa7d812602 100644 --- a/sdk/cosmosdb/cosmos/test/public/integration/aggregateQuery.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/integration/aggregateQuery.spec.ts @@ -1,12 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; -import { Container, ContainerDefinition, IndexingMode } from "../../../src"; +import type { Suite } from "mocha"; +import type { Container, ContainerDefinition } from "../../../src"; +import { IndexingMode } from "../../../src"; import { DataType, IndexKind } from "../../../src"; -import { QueryIterator } from "../../../src"; -import { SqlQuerySpec } from "../../../src"; -import { FeedOptions } from "../../../src"; +import type { QueryIterator } from "../../../src"; +import type { SqlQuerySpec } from "../../../src"; +import type { FeedOptions } from "../../../src"; import { TestData } from "../common/TestData"; import { bulkInsertItems, getTestContainer, removeAllDatabases } from "../common/TestHelpers"; import { expect } from "chai"; diff --git a/sdk/cosmosdb/cosmos/test/public/integration/aggregates/groupBy.spec.ts b/sdk/cosmosdb/cosmos/test/public/integration/aggregates/groupBy.spec.ts index daa5b88f2ca0..030a22fe515e 100644 --- a/sdk/cosmosdb/cosmos/test/public/integration/aggregates/groupBy.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/integration/aggregates/groupBy.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Container, ContainerDefinition } from "../../../../src"; +import type { Container, ContainerDefinition } from "../../../../src"; import { bulkInsertItems, getTestContainer, removeAllDatabases } from "../../common/TestHelpers"; import assert from "assert"; import groupBySnapshot from "./groupBy.snapshot"; -import { Context } from "mocha"; +import type { Context } from "mocha"; const options = { maxItemCount: 100, diff --git a/sdk/cosmosdb/cosmos/test/public/integration/authorization.spec.ts b/sdk/cosmosdb/cosmos/test/public/integration/authorization.spec.ts index 93b048751fa9..e4439435f685 100644 --- a/sdk/cosmosdb/cosmos/test/public/integration/authorization.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/integration/authorization.spec.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; -import { Container, CosmosClient, PermissionMode } from "../../../src"; -import { Database } from "../../../src"; +import type { Suite } from "mocha"; +import type { Container } from "../../../src"; +import { CosmosClient, PermissionMode } from "../../../src"; +import type { Database } from "../../../src"; import { endpoint } from "../common/_testConfig"; import { getTestContainer, removeAllDatabases } from "../common/TestHelpers"; diff --git a/sdk/cosmosdb/cosmos/test/public/integration/changeFeed.spec.ts b/sdk/cosmosdb/cosmos/test/public/integration/changeFeed.spec.ts index 190e1290af29..badc024d7fd3 100644 --- a/sdk/cosmosdb/cosmos/test/public/integration/changeFeed.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/integration/changeFeed.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; -import { RequestOptions } from "../../../src"; -import { Container, ContainerDefinition } from "../../../src"; +import type { Suite } from "mocha"; +import type { RequestOptions } from "../../../src"; +import type { Container, ContainerDefinition } from "../../../src"; import { PartitionKeyDefinitionVersion, PartitionKeyKind } from "../../../src/documents"; import { getTestContainer, removeAllDatabases } from "../common/TestHelpers"; diff --git a/sdk/cosmosdb/cosmos/test/public/integration/changeFeedIterator.spec.ts b/sdk/cosmosdb/cosmos/test/public/integration/changeFeedIterator.spec.ts index 58b08be908b5..56a6924c2046 100644 --- a/sdk/cosmosdb/cosmos/test/public/integration/changeFeedIterator.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/integration/changeFeedIterator.spec.ts @@ -1,16 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; +import type { Suite } from "mocha"; +import type { ChangeFeedIteratorOptions, RequestOptions } from "../../../src"; import { - ChangeFeedIteratorOptions, ChangeFeedStartFrom, - RequestOptions, ChangeFeedRetentionTimeSpan, ChangeFeedPolicy, ChangeFeedMode, } from "../../../src"; -import { Container, ContainerDefinition } from "../../../src"; +import type { Container, ContainerDefinition } from "../../../src"; import { PartitionKeyDefinitionVersion, PartitionKeyKind } from "../../../src/documents"; import { getTestContainer, diff --git a/sdk/cosmosdb/cosmos/test/public/integration/client.retry.spec.ts b/sdk/cosmosdb/cosmos/test/public/integration/client.retry.spec.ts index 6cb9ced689b8..b85f41622865 100644 --- a/sdk/cosmosdb/cosmos/test/public/integration/client.retry.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/integration/client.retry.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { CosmosClient, RequestContext } from "../../../src"; +import type { RequestContext } from "../../../src"; +import { CosmosClient } from "../../../src"; import { masterKey } from "../common/_fakeTestSecrets"; import { PluginOn } from "../../../src"; import { TimeoutErrorCode } from "../../../src/request/TimeoutError"; diff --git a/sdk/cosmosdb/cosmos/test/public/integration/crossPartition.spec.ts b/sdk/cosmosdb/cosmos/test/public/integration/crossPartition.spec.ts index 74a9d124cfd3..279bdd014879 100644 --- a/sdk/cosmosdb/cosmos/test/public/integration/crossPartition.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/integration/crossPartition.spec.ts @@ -1,19 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; +import type { Suite } from "mocha"; import * as util from "util"; -import { Container, ContainerDefinition } from "../../../src"; +import type { Container, ContainerDefinition } from "../../../src"; import { DataType, IndexKind } from "../../../src"; -import { SqlQuerySpec } from "../../../src"; -import { QueryIterator } from "../../../src"; +import type { SqlQuerySpec } from "../../../src"; +import type { QueryIterator } from "../../../src"; import { bulkInsertItems, getTestContainer, removeAllDatabases, generateDocuments, } from "../common/TestHelpers"; -import { FeedResponse, FeedOptions } from "../../../src"; +import type { FeedResponse, FeedOptions } from "../../../src"; function compare(key: string) { return function (a: any, b: any): number { diff --git a/sdk/cosmosdb/cosmos/test/public/integration/encoding.spec.ts b/sdk/cosmosdb/cosmos/test/public/integration/encoding.spec.ts index dd291e8399d4..b3b10c578a8a 100644 --- a/sdk/cosmosdb/cosmos/test/public/integration/encoding.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/integration/encoding.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; +import type { Suite } from "mocha"; import { IndexingMode } from "../../../src"; import { getTestDatabase, removeAllDatabases } from "../common/TestHelpers"; diff --git a/sdk/cosmosdb/cosmos/test/public/integration/failover.spec.ts b/sdk/cosmosdb/cosmos/test/public/integration/failover.spec.ts index a2ca6f4d4f64..a863342ec983 100644 --- a/sdk/cosmosdb/cosmos/test/public/integration/failover.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/integration/failover.spec.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. /* eslint-disable no-unused-expressions */ import { expect } from "chai"; -import { CosmosClient, PluginOn, CosmosClientOptions, PluginConfig } from "../../../src"; +import type { CosmosClientOptions, PluginConfig } from "../../../src"; +import { CosmosClient, PluginOn } from "../../../src"; import { masterKey } from "../common/_fakeTestSecrets"; import assert from "assert"; import { getEmptyCosmosDiagnostics } from "../../../src/utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/test/public/integration/multiregion.spec.ts b/sdk/cosmosdb/cosmos/test/public/integration/multiregion.spec.ts index a4caa0dcfdfe..c4b6cf06eb6a 100644 --- a/sdk/cosmosdb/cosmos/test/public/integration/multiregion.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/integration/multiregion.spec.ts @@ -2,11 +2,12 @@ // Licensed under the MIT License. /* eslint-disable no-unused-expressions */ import assert from "assert"; -import { Suite } from "mocha"; +import type { Suite } from "mocha"; import { CosmosClient } from "../../../src"; import { masterKey } from "../common/_fakeTestSecrets"; -import { PluginOn, PluginConfig, CosmosClientOptions } from "../../../src"; +import type { PluginConfig, CosmosClientOptions } from "../../../src"; +import { PluginOn } from "../../../src"; import { expect } from "chai"; import { getEmptyCosmosDiagnostics } from "../../../src/utils/diagnostics"; diff --git a/sdk/cosmosdb/cosmos/test/public/integration/nonStreamingOrderBy/nonStreamingDistinctOrderBy.spec.ts b/sdk/cosmosdb/cosmos/test/public/integration/nonStreamingOrderBy/nonStreamingDistinctOrderBy.spec.ts index 7e99a5a6ba1c..0a6e9bcfde0e 100644 --- a/sdk/cosmosdb/cosmos/test/public/integration/nonStreamingOrderBy/nonStreamingDistinctOrderBy.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/integration/nonStreamingOrderBy/nonStreamingDistinctOrderBy.spec.ts @@ -2,11 +2,12 @@ // Licensed under the MIT License. import assert from "assert"; -import { Container, CosmosClient } from "../../../../src"; +import type { Container } from "../../../../src"; +import { CosmosClient } from "../../../../src"; import { endpoint } from "../../common/_testConfig"; import { masterKey } from "../../common/_fakeTestSecrets"; import { getTestContainer, removeAllDatabases } from "../../common/TestHelpers"; -import { IndexingPolicy, VectorEmbeddingPolicy } from "../../../../src"; +import type { IndexingPolicy, VectorEmbeddingPolicy } from "../../../../src"; import { VectorEmbeddingDataType, VectorEmbeddingDistanceFunction, diff --git a/sdk/cosmosdb/cosmos/test/public/integration/nonStreamingOrderBy/nonStreamingOrderBy.spec.ts b/sdk/cosmosdb/cosmos/test/public/integration/nonStreamingOrderBy/nonStreamingOrderBy.spec.ts index ecafcf9ca3f3..3face617dec2 100644 --- a/sdk/cosmosdb/cosmos/test/public/integration/nonStreamingOrderBy/nonStreamingOrderBy.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/integration/nonStreamingOrderBy/nonStreamingOrderBy.spec.ts @@ -2,11 +2,12 @@ // Licensed under the MIT License. import assert from "assert"; -import { Container, CosmosClient } from "../../../../src"; +import type { Container } from "../../../../src"; +import { CosmosClient } from "../../../../src"; import { endpoint } from "../../common/_testConfig"; import { masterKey } from "../../common/_fakeTestSecrets"; import { getTestContainer, removeAllDatabases } from "../../common/TestHelpers"; -import { IndexingPolicy, VectorEmbeddingPolicy } from "../../../../src"; +import type { IndexingPolicy, VectorEmbeddingPolicy } from "../../../../src"; import { VectorEmbeddingDataType, VectorEmbeddingDistanceFunction, diff --git a/sdk/cosmosdb/cosmos/test/public/integration/query.spec.ts b/sdk/cosmosdb/cosmos/test/public/integration/query.spec.ts index c8ebe0a8be7d..b2c1747ad21e 100644 --- a/sdk/cosmosdb/cosmos/test/public/integration/query.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/integration/query.spec.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import assert from "assert"; -import { Suite } from "mocha"; -import { Container, FeedOptions } from "../../../src"; +import type { Suite } from "mocha"; +import type { Container, FeedOptions } from "../../../src"; import { getTestContainer, getTestDatabase, removeAllDatabases } from "../common/TestHelpers"; const doc = { id: "myId", pk: "pk" }; diff --git a/sdk/cosmosdb/cosmos/test/public/integration/split.spec.ts b/sdk/cosmosdb/cosmos/test/public/integration/split.spec.ts index 60750367d0ef..5021a5fbbd11 100644 --- a/sdk/cosmosdb/cosmos/test/public/integration/split.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/integration/split.spec.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. /* eslint-disable no-unused-expressions */ -import { Container } from "../../../src"; +import type { Container } from "../../../src"; import { bulkInsertItems, getTestContainer, removeAllDatabases } from "../common/TestHelpers"; -import { Constants, CosmosClient, PluginOn, CosmosClientOptions, PluginConfig } from "../../../src"; +import type { CosmosClientOptions, PluginConfig } from "../../../src"; +import { Constants, CosmosClient, PluginOn } from "../../../src"; import { endpoint } from "../common/_testConfig"; import { masterKey } from "../common/_fakeTestSecrets"; import { SubStatusCodes } from "../../../src/common"; diff --git a/sdk/cosmosdb/cosmos/test/public/integration/timeout.spec.ts b/sdk/cosmosdb/cosmos/test/public/integration/timeout.spec.ts index 14465b386fc7..577e5ec3ac27 100644 --- a/sdk/cosmosdb/cosmos/test/public/integration/timeout.spec.ts +++ b/sdk/cosmosdb/cosmos/test/public/integration/timeout.spec.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. /* eslint-disable no-unused-expressions */ import assert from "assert"; -import { Container, CosmosClient } from "../../../src"; +import type { Container } from "../../../src"; +import { CosmosClient } from "../../../src"; import { addEntropy, removeAllDatabases } from "../common/TestHelpers"; import { endpoint } from "../common/_testConfig"; import { masterKey } from "../common/_fakeTestSecrets"; diff --git a/sdk/devcenter/developer-devcenter-rest/review/developer-devcenter.api.md b/sdk/devcenter/developer-devcenter-rest/review/developer-devcenter.api.md index 3f1844eab623..1a1623300616 100644 --- a/sdk/devcenter/developer-devcenter-rest/review/developer-devcenter.api.md +++ b/sdk/devcenter/developer-devcenter-rest/review/developer-devcenter.api.md @@ -4,22 +4,22 @@ ```ts -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'; -import { ErrorModel } from '@azure-rest/core-client'; -import { ErrorResponse } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { OperationState } from '@azure/core-lro'; -import { Paged } from '@azure/core-paging'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { AbortSignalLike } from '@azure/abort-controller'; +import type { CancelOnProgress } from '@azure/core-lro'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { CreateHttpPollerOptions } from '@azure/core-lro'; +import type { ErrorModel } from '@azure-rest/core-client'; +import type { ErrorResponse } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { OperationState } from '@azure/core-lro'; +import type { Paged } from '@azure/core-paging'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export type AzureDeveloperDevCenterClient = Client & { diff --git a/sdk/devcenter/developer-devcenter-rest/src/azureDeveloperDevCenter.ts b/sdk/devcenter/developer-devcenter-rest/src/azureDeveloperDevCenter.ts index 1d5f41d2b4b7..5cee288a02cf 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/azureDeveloperDevCenter.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/azureDeveloperDevCenter.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "./logger.js"; -import { TokenCredential } from "@azure/core-auth"; -import { AzureDeveloperDevCenterClient } from "./clientDefinitions.js"; +import type { TokenCredential } from "@azure/core-auth"; +import type { AzureDeveloperDevCenterClient } from "./clientDefinitions.js"; /** * Initialize a new instance of `AzureDeveloperDevCenterClient` diff --git a/sdk/devcenter/developer-devcenter-rest/src/clientDefinitions.ts b/sdk/devcenter/developer-devcenter-rest/src/clientDefinitions.ts index fac949c46fab..65d113c45e61 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/clientDefinitions.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ListProjectsParameters, GetProjectParameters, GetParameters, @@ -36,7 +36,7 @@ import { GetEnvironmentDefinitionParameters, ListEnvironmentTypesParameters, } from "./parameters.js"; -import { +import type { ListProjects200Response, ListProjectsDefaultResponse, GetProject200Response, @@ -107,7 +107,7 @@ import { ListEnvironmentTypes200Response, ListEnvironmentTypesDefaultResponse, } from "./responses.js"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface ListProjects { /** Lists all projects. */ diff --git a/sdk/devcenter/developer-devcenter-rest/src/isUnexpected.ts b/sdk/devcenter/developer-devcenter-rest/src/isUnexpected.ts index 9930a5fd8e3c..4053404afc4b 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/isUnexpected.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ListProjects200Response, ListProjectsDefaultResponse, GetProject200Response, diff --git a/sdk/devcenter/developer-devcenter-rest/src/outputModels.ts b/sdk/devcenter/developer-devcenter-rest/src/outputModels.ts index dd6cb01925a9..2ee29c1db672 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/outputModels.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/outputModels.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Paged } from "@azure/core-paging"; -import { ErrorModel } from "@azure-rest/core-client"; +import type { Paged } from "@azure/core-paging"; +import type { ErrorModel } from "@azure-rest/core-client"; /** Project details. */ export interface ProjectOutput { diff --git a/sdk/devcenter/developer-devcenter-rest/src/paginateHelper.ts b/sdk/devcenter/developer-devcenter-rest/src/paginateHelper.ts index e27846d32a90..5d541b4e406d 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/paginateHelper.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/devcenter/developer-devcenter-rest/src/parameters.ts b/sdk/devcenter/developer-devcenter-rest/src/parameters.ts index 06be85e5a51e..4a119290acb1 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/parameters.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { DevBox, Environment } from "./models.js"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { DevBox, Environment } from "./models.js"; export type ListProjectsParameters = RequestParameters; export type GetProjectParameters = RequestParameters; diff --git a/sdk/devcenter/developer-devcenter-rest/src/pollingHelper.ts b/sdk/devcenter/developer-devcenter-rest/src/pollingHelper.ts index 56eafc377726..38886106e479 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/pollingHelper.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/pollingHelper.ts @@ -1,17 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { CancelOnProgress, CreateHttpPollerOptions, RunningOperation, OperationResponse, OperationState, - createHttpPoller, } from "@azure/core-lro"; -import { +import { createHttpPoller } from "@azure/core-lro"; +import type { CreateDevBox200Response, CreateDevBox201Response, CreateDevBoxDefaultResponse, diff --git a/sdk/devcenter/developer-devcenter-rest/src/responses.ts b/sdk/devcenter/developer-devcenter-rest/src/responses.ts index 23422f15adbd..ae0df4406c6f 100644 --- a/sdk/devcenter/developer-devcenter-rest/src/responses.ts +++ b/sdk/devcenter/developer-devcenter-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; +import type { PagedProjectOutput, ProjectOutput, OperationStatusOutput, diff --git a/sdk/devcenter/developer-devcenter-rest/test/public/devBoxesTest.spec.ts b/sdk/devcenter/developer-devcenter-rest/test/public/devBoxesTest.spec.ts index d1b6be7c42a9..1379b7fcd994 100644 --- a/sdk/devcenter/developer-devcenter-rest/test/public/devBoxesTest.spec.ts +++ b/sdk/devcenter/developer-devcenter-rest/test/public/devBoxesTest.spec.ts @@ -1,15 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { env, isPlaybackMode, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import { createRecordedClient, createRecorder } from "./utils/recordedClient.js"; import { describe, it, beforeEach, afterEach, expect, assert } from "vitest"; -import { +import type { AzureDeveloperDevCenterClient, - getLongRunningPoller, - isUnexpected, PoolOutput, - paginate, DevBoxOutput, DevBoxActionOutput, ScheduleOutput, @@ -17,6 +15,7 @@ import { DevBoxActionDelayResultOutput, CreateDevBoxParameters, } from "../../src/index.js"; +import { getLongRunningPoller, isUnexpected, paginate } from "../../src/index.js"; const testPollingOptions = { intervalInMs: isPlaybackMode() ? 0 : undefined, diff --git a/sdk/devcenter/developer-devcenter-rest/test/public/devCenterTests.spec.ts b/sdk/devcenter/developer-devcenter-rest/test/public/devCenterTests.spec.ts index af16bda5facf..46b50490e8c5 100644 --- a/sdk/devcenter/developer-devcenter-rest/test/public/devCenterTests.spec.ts +++ b/sdk/devcenter/developer-devcenter-rest/test/public/devCenterTests.spec.ts @@ -1,15 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { env, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { createRecordedClient, createRecorder } from "./utils/recordedClient.js"; import { describe, it, beforeEach, afterEach, expect } from "vitest"; -import { - AzureDeveloperDevCenterClient, - ProjectOutput, - isUnexpected, - paginate, -} from "../../src/index.js"; +import type { AzureDeveloperDevCenterClient, ProjectOutput } from "../../src/index.js"; +import { isUnexpected, paginate } from "../../src/index.js"; describe("DevCenter Project Operations Tests", function () { let recorder: Recorder; diff --git a/sdk/devcenter/developer-devcenter-rest/test/public/environmentsTest.spec.ts b/sdk/devcenter/developer-devcenter-rest/test/public/environmentsTest.spec.ts index 126366e6118e..843b29befcbd 100644 --- a/sdk/devcenter/developer-devcenter-rest/test/public/environmentsTest.spec.ts +++ b/sdk/devcenter/developer-devcenter-rest/test/public/environmentsTest.spec.ts @@ -1,20 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { env, isPlaybackMode, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import { createRecordedClient, createRecorder } from "./utils/recordedClient.js"; import { describe, it, beforeEach, afterEach, expect, assert } from "vitest"; -import { +import type { AzureDeveloperDevCenterClient, CatalogOutput, EnvironmentDefinitionOutput, EnvironmentTypeOutput, CreateOrReplaceEnvironmentParameters, - isUnexpected, - paginate, - getLongRunningPoller, EnvironmentOutput, } from "../../src/index.js"; +import { isUnexpected, paginate, getLongRunningPoller } from "../../src/index.js"; const testPollingOptions = { intervalInMs: isPlaybackMode() ? 0 : undefined, diff --git a/sdk/devcenter/developer-devcenter-rest/test/public/utils/recordedClient.ts b/sdk/devcenter/developer-devcenter-rest/test/public/utils/recordedClient.ts index 4af8bcf47a7d..b7b4220b4e91 100644 --- a/sdk/devcenter/developer-devcenter-rest/test/public/utils/recordedClient.ts +++ b/sdk/devcenter/developer-devcenter-rest/test/public/utils/recordedClient.ts @@ -2,10 +2,11 @@ // Licensed under the MIT License. import { type TaskContext } from "vitest"; -import { isPlaybackMode, Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { isPlaybackMode, Recorder } from "@azure-tools/test-recorder"; import "./env"; -import { AzureDeveloperDevCenterClient } from "../../../src/clientDefinitions.js"; -import { ClientOptions } from "@azure-rest/core-client"; +import type { AzureDeveloperDevCenterClient } from "../../../src/clientDefinitions.js"; +import type { ClientOptions } from "@azure-rest/core-client"; import { AzurePowerShellCredential } from "@azure/identity"; import createClient from "../../../src/index.js"; import { createTestCredential } from "@azure-tools/test-credential"; diff --git a/sdk/deviceupdate/iot-device-update-rest/review/iot-device-update.api.md b/sdk/deviceupdate/iot-device-update-rest/review/iot-device-update.api.md index c7694b9b430f..ec5f81427ab7 100644 --- a/sdk/deviceupdate/iot-device-update-rest/review/iot-device-update.api.md +++ b/sdk/deviceupdate/iot-device-update-rest/review/iot-device-update.api.md @@ -4,19 +4,19 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { LroEngineOptions } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { LroEngineOptions } from '@azure/core-lro'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { PollerLike } from '@azure/core-lro'; +import type { PollOperationState } from '@azure/core-lro'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface CloudInitiatedRollbackPolicy { diff --git a/sdk/deviceupdate/iot-device-update-rest/src/clientDefinitions.ts b/sdk/deviceupdate/iot-device-update-rest/src/clientDefinitions.ts index 423d43931ad9..f665b7aee198 100644 --- a/sdk/deviceupdate/iot-device-update-rest/src/clientDefinitions.ts +++ b/sdk/deviceupdate/iot-device-update-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { DeviceUpdateListUpdatesParameters, DeviceUpdateImportUpdateParameters, DeviceUpdateGetUpdateParameters, @@ -53,7 +53,7 @@ import { DeviceManagementGetLogCollectionDetailedStatusParameters, DeviceManagementListHealthOfDevicesParameters, } from "./parameters"; -import { +import type { DeviceUpdateListUpdates200Response, DeviceUpdateListUpdatesdefaultResponse, DeviceUpdateImportUpdate200Response, @@ -160,7 +160,7 @@ import { DeviceManagementListHealthOfDevices200Response, DeviceManagementListHealthOfDevicesdefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface DeviceUpdateListUpdates { /** Get a list of all updates that have been imported to Device Update for IoT Hub. */ diff --git a/sdk/deviceupdate/iot-device-update-rest/src/deviceUpdate.ts b/sdk/deviceupdate/iot-device-update-rest/src/deviceUpdate.ts index feb854cec238..ec7312ec1d98 100644 --- a/sdk/deviceupdate/iot-device-update-rest/src/deviceUpdate.ts +++ b/sdk/deviceupdate/iot-device-update-rest/src/deviceUpdate.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { DeviceUpdateClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { DeviceUpdateClient } from "./clientDefinitions"; export default function createClient( endpoint: string, diff --git a/sdk/deviceupdate/iot-device-update-rest/src/isUnexpected.ts b/sdk/deviceupdate/iot-device-update-rest/src/isUnexpected.ts index 1a7ad2bb2046..a118e7acd9d2 100644 --- a/sdk/deviceupdate/iot-device-update-rest/src/isUnexpected.ts +++ b/sdk/deviceupdate/iot-device-update-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { DeviceUpdateListUpdates200Response, DeviceUpdateListUpdatesdefaultResponse, DeviceUpdateImportUpdate200Response, diff --git a/sdk/deviceupdate/iot-device-update-rest/src/paginateHelper.ts b/sdk/deviceupdate/iot-device-update-rest/src/paginateHelper.ts index e27846d32a90..5d541b4e406d 100644 --- a/sdk/deviceupdate/iot-device-update-rest/src/paginateHelper.ts +++ b/sdk/deviceupdate/iot-device-update-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/deviceupdate/iot-device-update-rest/src/parameters.ts b/sdk/deviceupdate/iot-device-update-rest/src/parameters.ts index 4a67d6e8976a..f3e6c0a33773 100644 --- a/sdk/deviceupdate/iot-device-update-rest/src/parameters.ts +++ b/sdk/deviceupdate/iot-device-update-rest/src/parameters.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; -import { RequestParameters } from "@azure-rest/core-client"; -import { ImportUpdateInputItem, PatchBody, Deployment, LogCollection } from "./models"; +import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { ImportUpdateInputItem, PatchBody, Deployment, LogCollection } from "./models"; export interface DeviceUpdateListUpdatesQueryParamProperties { /** Request updates matching a free-text search expression. */ diff --git a/sdk/deviceupdate/iot-device-update-rest/src/pollingHelper.ts b/sdk/deviceupdate/iot-device-update-rest/src/pollingHelper.ts index 31ecd85a0307..2bce93c987fa 100644 --- a/sdk/deviceupdate/iot-device-update-rest/src/pollingHelper.ts +++ b/sdk/deviceupdate/iot-device-update-rest/src/pollingHelper.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { LongRunningOperation, - LroEngine, LroEngineOptions, LroResponse, PollerLike, PollOperationState, } from "@azure/core-lro"; +import { LroEngine } from "@azure/core-lro"; /** * Helper function that builds a Poller object to help polling a long running operation. diff --git a/sdk/deviceupdate/iot-device-update-rest/src/responses.ts b/sdk/deviceupdate/iot-device-update-rest/src/responses.ts index b882610a0777..e0d2165b64d6 100644 --- a/sdk/deviceupdate/iot-device-update-rest/src/responses.ts +++ b/sdk/deviceupdate/iot-device-update-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse } from "@azure-rest/core-client"; +import type { UpdateListOutput, ErrorResponseOutput, UpdateOutput, diff --git a/sdk/deviceupdate/iot-device-update-rest/test/public/management.spec.ts b/sdk/deviceupdate/iot-device-update-rest/test/public/management.spec.ts index a99a72d187b5..4789c48136b9 100644 --- a/sdk/deviceupdate/iot-device-update-rest/test/public/management.spec.ts +++ b/sdk/deviceupdate/iot-device-update-rest/test/public/management.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DeviceUpdateClient, isUnexpected } from "../../src"; -import { Context } from "mocha"; +import type { DeviceUpdateClient } from "../../src"; +import { isUnexpected } from "../../src"; +import type { Context } from "mocha"; import { assert } from "chai"; import { Recorder } from "@azure-tools/test-recorder"; import { createRecordedClient, startRecorder } from "./utils/recordedClient"; diff --git a/sdk/deviceupdate/iot-device-update-rest/test/public/update.spec.ts b/sdk/deviceupdate/iot-device-update-rest/test/public/update.spec.ts index 24b5dda11fe6..6d1332d03fd4 100644 --- a/sdk/deviceupdate/iot-device-update-rest/test/public/update.spec.ts +++ b/sdk/deviceupdate/iot-device-update-rest/test/public/update.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DeviceUpdateClient, isUnexpected } from "../../src"; -import { Context } from "mocha"; +import type { DeviceUpdateClient } from "../../src"; +import { isUnexpected } from "../../src"; +import type { Context } from "mocha"; import { assert } from "chai"; import { Recorder } from "@azure-tools/test-recorder"; import { createRecordedClient, startRecorder } from "./utils/recordedClient"; diff --git a/sdk/deviceupdate/iot-device-update-rest/test/public/utils/recordedClient.ts b/sdk/deviceupdate/iot-device-update-rest/test/public/utils/recordedClient.ts index 0124cf90730b..26ba2922348c 100644 --- a/sdk/deviceupdate/iot-device-update-rest/test/public/utils/recordedClient.ts +++ b/sdk/deviceupdate/iot-device-update-rest/test/public/utils/recordedClient.ts @@ -2,8 +2,10 @@ // Licensed under the MIT License. import { createTestCredential } from "@azure-tools/test-credential"; -import DeviceUpdate, { DeviceUpdateClient } from "../../../src"; -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { DeviceUpdateClient } from "../../../src"; +import DeviceUpdate from "../../../src"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; export function createRecordedClient(recorder: Recorder): DeviceUpdateClient { const credential = createTestCredential(); diff --git a/sdk/digitaltwins/digital-twins-core/review/digital-twins-core.api.md b/sdk/digitaltwins/digital-twins-core/review/digital-twins-core.api.md index 273517cadb88..9c1b294c8988 100644 --- a/sdk/digitaltwins/digital-twins-core/review/digital-twins-core.api.md +++ b/sdk/digitaltwins/digital-twins-core/review/digital-twins-core.api.md @@ -4,11 +4,11 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; +import type { CommonClientOptions } from '@azure/core-client'; import * as coreClient from '@azure/core-client'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { TokenCredential } from '@azure/core-auth'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { TokenCredential } from '@azure/core-auth'; // @public export type DigitalTwinModelsAddResponse = DigitalTwinsModelData[]; diff --git a/sdk/digitaltwins/digital-twins-core/src/digitalTwinsClient.ts b/sdk/digitaltwins/digital-twins-core/src/digitalTwinsClient.ts index c8fbe057c4db..a26a61e605a7 100644 --- a/sdk/digitaltwins/digital-twins-core/src/digitalTwinsClient.ts +++ b/sdk/digitaltwins/digital-twins-core/src/digitalTwinsClient.ts @@ -2,16 +2,16 @@ // Licensed under the MIT License. /* eslint-disable @azure/azure-sdk/ts-naming-options */ -import { +import type { OperationOptions, InternalClientPipelineOptions, CommonClientOptions, } from "@azure/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { TokenCredential } from "@azure/core-auth"; +import type { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; import { v4 as generateUuid } from "uuid"; import { AzureDigitalTwinsAPI as GeneratedClient } from "./generated/azureDigitalTwinsAPI"; -import { +import type { DigitalTwinsGetByIdResponse, DigitalTwinsAddOptionalParams, DigitalTwinsAddResponse, @@ -34,6 +34,8 @@ import { EventRoutesGetByIdResponse, EventRoute, QueryQueryTwinsResponse, +} from "./generated/models"; +import { DigitalTwinModelsGetByIdOptionalParams as GetModelOptions, DigitalTwinModelsListOptionalParams as ListModelsOptions, QueryQueryTwinsOptionalParams as QueryTwinsOptions, diff --git a/sdk/digitaltwins/digital-twins-core/test/public/testComponents.spec.ts b/sdk/digitaltwins/digital-twins-core/test/public/testComponents.spec.ts index 35c5ba272aed..38d41f91a556 100644 --- a/sdk/digitaltwins/digital-twins-core/test/public/testComponents.spec.ts +++ b/sdk/digitaltwins/digital-twins-core/test/public/testComponents.spec.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DigitalTwinsClient, DigitalTwinsUpdateComponentOptionalParams } from "../../src"; +import type { DigitalTwinsClient, DigitalTwinsUpdateComponentOptionalParams } from "../../src"; import { authenticate } from "../utils/testAuthentication"; -import { isLiveMode, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isLiveMode } from "@azure-tools/test-recorder"; import chai from "chai"; import { isRestError } from "@azure/core-rest-pipeline"; diff --git a/sdk/digitaltwins/digital-twins-core/test/public/testDigitalTwins.spec.ts b/sdk/digitaltwins/digital-twins-core/test/public/testDigitalTwins.spec.ts index b5f04773337c..470c6f3bd515 100644 --- a/sdk/digitaltwins/digital-twins-core/test/public/testDigitalTwins.spec.ts +++ b/sdk/digitaltwins/digital-twins-core/test/public/testDigitalTwins.spec.ts @@ -1,14 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { DigitalTwinsClient, DigitalTwinsAddOptionalParams, DigitalTwinsDeleteOptionalParams, DigitalTwinsUpdateOptionalParams, } from "../../src"; import { authenticate } from "../utils/testAuthentication"; -import { isLiveMode, isPlaybackMode, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; import { delay } from "@azure/core-util"; import chai from "chai"; import { isRestError } from "@azure/core-rest-pipeline"; diff --git a/sdk/digitaltwins/digital-twins-core/test/public/testEventRoutes.spec.ts b/sdk/digitaltwins/digital-twins-core/test/public/testEventRoutes.spec.ts index 836ad7b742fd..ed9d4d2e3ad6 100644 --- a/sdk/digitaltwins/digital-twins-core/test/public/testEventRoutes.spec.ts +++ b/sdk/digitaltwins/digital-twins-core/test/public/testEventRoutes.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DigitalTwinsClient } from "../../src"; +import type { DigitalTwinsClient } from "../../src"; import { authenticate } from "../utils/testAuthentication"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import chai from "chai"; const assert: typeof chai.assert = chai.assert; diff --git a/sdk/digitaltwins/digital-twins-core/test/public/testModels.spec.ts b/sdk/digitaltwins/digital-twins-core/test/public/testModels.spec.ts index 552efa0ad3c7..d077498b04f7 100644 --- a/sdk/digitaltwins/digital-twins-core/test/public/testModels.spec.ts +++ b/sdk/digitaltwins/digital-twins-core/test/public/testModels.spec.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DigitalTwinsClient } from "../../src"; +import type { DigitalTwinsClient } from "../../src"; import { authenticate } from "../utils/testAuthentication"; -import { isLiveMode, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isLiveMode } from "@azure-tools/test-recorder"; import chai from "chai"; import { delay } from "@azure/core-util"; import { isRestError } from "@azure/core-rest-pipeline"; diff --git a/sdk/digitaltwins/digital-twins-core/test/public/testRelationships.spec.ts b/sdk/digitaltwins/digital-twins-core/test/public/testRelationships.spec.ts index ce6f738c837b..4d0df43885b8 100644 --- a/sdk/digitaltwins/digital-twins-core/test/public/testRelationships.spec.ts +++ b/sdk/digitaltwins/digital-twins-core/test/public/testRelationships.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DigitalTwinsClient, DigitalTwinsAddRelationshipOptionalParams } from "../../src"; +import type { DigitalTwinsClient, DigitalTwinsAddRelationshipOptionalParams } from "../../src"; import { authenticate } from "../utils/testAuthentication"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import chai from "chai"; import { isRestError } from "@azure/core-rest-pipeline"; diff --git a/sdk/documentintelligence/ai-document-intelligence-rest/review/ai-document-intelligence.api.md b/sdk/documentintelligence/ai-document-intelligence-rest/review/ai-document-intelligence.api.md index 7f33e9b12484..385a79d2ddbe 100644 --- a/sdk/documentintelligence/ai-document-intelligence-rest/review/ai-document-intelligence.api.md +++ b/sdk/documentintelligence/ai-document-intelligence-rest/review/ai-document-intelligence.api.md @@ -4,22 +4,22 @@ ```ts -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'; -import { HttpResponse } from '@azure-rest/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationState } from '@azure/core-lro'; -import { Paged } from '@azure/core-paging'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { AbortSignalLike } from '@azure/abort-controller'; +import type { CancelOnProgress } from '@azure/core-lro'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { CreateHttpPollerOptions } from '@azure/core-lro'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationState } from '@azure/core-lro'; +import type { Paged } from '@azure/core-paging'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AddressValueOutput { diff --git a/sdk/documentintelligence/ai-document-intelligence-rest/src/clientDefinitions.ts b/sdk/documentintelligence/ai-document-intelligence-rest/src/clientDefinitions.ts index 063816f42e4f..c336ff164be1 100644 --- a/sdk/documentintelligence/ai-document-intelligence-rest/src/clientDefinitions.ts +++ b/sdk/documentintelligence/ai-document-intelligence-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ListOperationsParameters, GetDocumentModelBuildOperationParameters, GetDocumentModelComposeOperationParameters, @@ -34,7 +34,7 @@ import { AuthorizeClassifierCopyParameters, CopyClassifierToParameters, } from "./parameters.js"; -import { +import type { ListOperations200Response, ListOperationsDefaultResponse, GetDocumentModelBuildOperation200Response, @@ -98,7 +98,7 @@ import { CopyClassifierTo202Response, CopyClassifierToDefaultResponse, } from "./responses.js"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface ListOperations { /** Lists all operations. */ diff --git a/sdk/documentintelligence/ai-document-intelligence-rest/src/documentIntelligence.ts b/sdk/documentintelligence/ai-document-intelligence-rest/src/documentIntelligence.ts index 2ec732f8d18c..53884360f1cd 100644 --- a/sdk/documentintelligence/ai-document-intelligence-rest/src/documentIntelligence.ts +++ b/sdk/documentintelligence/ai-document-intelligence-rest/src/documentIntelligence.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "./logger.js"; -import { TokenCredential, KeyCredential } from "@azure/core-auth"; -import { DocumentIntelligenceClient } from "./clientDefinitions.js"; +import type { TokenCredential, KeyCredential } from "@azure/core-auth"; +import type { DocumentIntelligenceClient } from "./clientDefinitions.js"; /** The optional parameters for the client */ export interface DocumentIntelligenceClientOptions extends ClientOptions { diff --git a/sdk/documentintelligence/ai-document-intelligence-rest/src/isUnexpected.ts b/sdk/documentintelligence/ai-document-intelligence-rest/src/isUnexpected.ts index c9c7a5e84046..472c444bfbc9 100644 --- a/sdk/documentintelligence/ai-document-intelligence-rest/src/isUnexpected.ts +++ b/sdk/documentintelligence/ai-document-intelligence-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ListOperations200Response, ListOperationsDefaultResponse, GetDocumentModelBuildOperation200Response, diff --git a/sdk/documentintelligence/ai-document-intelligence-rest/src/outputModels.ts b/sdk/documentintelligence/ai-document-intelligence-rest/src/outputModels.ts index f0fa1aa5333d..8273ae8968f4 100644 --- a/sdk/documentintelligence/ai-document-intelligence-rest/src/outputModels.ts +++ b/sdk/documentintelligence/ai-document-intelligence-rest/src/outputModels.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Paged } from "@azure/core-paging"; +import type { Paged } from "@azure/core-paging"; /** Operation info. */ export interface OperationDetailsOutputParent { diff --git a/sdk/documentintelligence/ai-document-intelligence-rest/src/paginateHelper.ts b/sdk/documentintelligence/ai-document-intelligence-rest/src/paginateHelper.ts index e27846d32a90..5d541b4e406d 100644 --- a/sdk/documentintelligence/ai-document-intelligence-rest/src/paginateHelper.ts +++ b/sdk/documentintelligence/ai-document-intelligence-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/documentintelligence/ai-document-intelligence-rest/src/parameters.ts b/sdk/documentintelligence/ai-document-intelligence-rest/src/parameters.ts index b57b38addb54..cd76fb6850be 100644 --- a/sdk/documentintelligence/ai-document-intelligence-rest/src/parameters.ts +++ b/sdk/documentintelligence/ai-document-intelligence-rest/src/parameters.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { StringIndexType, DocumentAnalysisFeature, ContentFormat, diff --git a/sdk/documentintelligence/ai-document-intelligence-rest/src/pollingHelper.ts b/sdk/documentintelligence/ai-document-intelligence-rest/src/pollingHelper.ts index 9fa3aad7a3ae..026a853d89c2 100644 --- a/sdk/documentintelligence/ai-document-intelligence-rest/src/pollingHelper.ts +++ b/sdk/documentintelligence/ai-document-intelligence-rest/src/pollingHelper.ts @@ -1,17 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { CancelOnProgress, CreateHttpPollerOptions, RunningOperation, OperationResponse, OperationState, - createHttpPoller, } from "@azure/core-lro"; -import { +import { createHttpPoller } from "@azure/core-lro"; +import type { AnalyzeDocumentFromStream202Response, AnalyzeDocumentFromStreamDefaultResponse, AnalyzeDocumentFromStreamLogicalResponse, @@ -37,7 +37,7 @@ import { CopyClassifierToDefaultResponse, CopyClassifierToLogicalResponse, } from "./responses.js"; -import { AnalyzeBatchResultOperationOutput } from "./outputModels.js"; +import type { AnalyzeBatchResultOperationOutput } from "./outputModels.js"; /** * A simple poller that can be used to poll a long running operation. diff --git a/sdk/documentintelligence/ai-document-intelligence-rest/src/responses.ts b/sdk/documentintelligence/ai-document-intelligence-rest/src/responses.ts index 12f251cdf383..0ebe9b71afb3 100644 --- a/sdk/documentintelligence/ai-document-intelligence-rest/src/responses.ts +++ b/sdk/documentintelligence/ai-document-intelligence-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse } from "@azure-rest/core-client"; +import type { PagedOperationDetailsOutput, ErrorResponseOutput, DocumentModelBuildOperationDetailsOutput, diff --git a/sdk/documentintelligence/ai-document-intelligence-rest/test/public/analysis.spec.ts b/sdk/documentintelligence/ai-document-intelligence-rest/test/public/analysis.spec.ts index 3dabc0975119..8d086d962058 100644 --- a/sdk/documentintelligence/ai-document-intelligence-rest/test/public/analysis.spec.ts +++ b/sdk/documentintelligence/ai-document-intelligence-rest/test/public/analysis.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { createRecorder, testPollingOptions } from "./utils/recorderUtils.js"; import DocumentIntelligence from "../../src/documentIntelligence.js"; import { assert, describe, beforeEach, afterEach, it } from "vitest"; @@ -14,16 +15,15 @@ import { } from "./utils/utils.js"; import path from "path"; import fs from "fs"; -import { DocumentIntelligenceClient } from "../../src/clientDefinitions.js"; -import { +import type { DocumentIntelligenceClient } from "../../src/clientDefinitions.js"; +import type { AnalyzeResultOperationOutput, DocumentBarcodeOutput, DocumentModelBuildOperationDetailsOutput, DocumentModelDetailsOutput, DocumentTableOutput, - getLongRunningPoller, - isUnexpected, } from "../../src/index.js"; +import { getLongRunningPoller, isUnexpected } from "../../src/index.js"; describe("DocumentIntelligenceClient", () => { let recorder: Recorder; diff --git a/sdk/documentintelligence/ai-document-intelligence-rest/test/public/classifiers.spec.ts b/sdk/documentintelligence/ai-document-intelligence-rest/test/public/classifiers.spec.ts index 01d35f9c3d42..b20f9fe8696f 100644 --- a/sdk/documentintelligence/ai-document-intelligence-rest/test/public/classifiers.spec.ts +++ b/sdk/documentintelligence/ai-document-intelligence-rest/test/public/classifiers.spec.ts @@ -1,19 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { createRecorder, testPollingOptions } from "./utils/recorderUtils.js"; import DocumentIntelligence from "../../src/documentIntelligence.js"; -import { assert, describe, beforeEach, afterEach, it, Context } from "vitest"; +import type { Context } from "vitest"; +import { assert, describe, beforeEach, afterEach, it } from "vitest"; import { ASSET_PATH, getRandomNumber, makeTestUrl } from "./utils/utils.js"; -import { DocumentIntelligenceClient } from "../../src/clientDefinitions.js"; -import { +import type { DocumentIntelligenceClient } from "../../src/clientDefinitions.js"; +import type { AnalyzeResultOperationOutput, DocumentClassifierBuildOperationDetailsOutput, DocumentClassifierDetailsOutput, - getLongRunningPoller, - isUnexpected, } from "../../src/index.js"; +import { getLongRunningPoller, isUnexpected } from "../../src/index.js"; import path from "path"; import fs from "fs"; diff --git a/sdk/documentintelligence/ai-document-intelligence-rest/test/public/documentIntelligence.spec.ts b/sdk/documentintelligence/ai-document-intelligence-rest/test/public/documentIntelligence.spec.ts index e0c6f85a5741..775859daa37a 100644 --- a/sdk/documentintelligence/ai-document-intelligence-rest/test/public/documentIntelligence.spec.ts +++ b/sdk/documentintelligence/ai-document-intelligence-rest/test/public/documentIntelligence.spec.ts @@ -1,18 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { createTestCredential } from "@azure-tools/test-credential"; import { createRecorder } from "./utils/recorderUtils.js"; import DocumentIntelligence from "../../src/documentIntelligence.js"; import { assert, describe, beforeEach, afterEach, it } from "vitest"; import { getRandomNumber, containerSasUrl } from "./utils/utils.js"; -import { DocumentIntelligenceClient } from "../../src/clientDefinitions.js"; -import { - DocumentClassifierBuildOperationDetailsOutput, - getLongRunningPoller, - isUnexpected, -} from "../../src/index.js"; +import type { DocumentIntelligenceClient } from "../../src/clientDefinitions.js"; +import type { DocumentClassifierBuildOperationDetailsOutput } from "../../src/index.js"; +import { getLongRunningPoller, isUnexpected } from "../../src/index.js"; describe("DocumentIntelligenceClient", () => { let recorder: Recorder; diff --git a/sdk/documentintelligence/ai-document-intelligence-rest/test/public/training.spec.ts b/sdk/documentintelligence/ai-document-intelligence-rest/test/public/training.spec.ts index 1a31d84b74ce..8542ee730cc2 100644 --- a/sdk/documentintelligence/ai-document-intelligence-rest/test/public/training.spec.ts +++ b/sdk/documentintelligence/ai-document-intelligence-rest/test/public/training.spec.ts @@ -1,27 +1,22 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - Recorder, - assertEnvironmentVariable, - testPollingOptions, -} from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable, testPollingOptions } from "@azure-tools/test-recorder"; import { createRecorder } from "./utils/recorderUtils.js"; import DocumentIntelligence from "../../src/documentIntelligence.js"; import { assert, describe, beforeEach, afterEach, it, Context } from "vitest"; import { getRandomNumber, containerSasUrl } from "./utils/utils.js"; -import { DocumentIntelligenceClient } from "../../src/clientDefinitions.js"; -import { +import type { DocumentIntelligenceClient } from "../../src/clientDefinitions.js"; +import type { AnalyzeResultOperationOutput, DocumentModelBuildOperationDetailsOutput, DocumentModelComposeOperationDetailsOutput, DocumentModelCopyToOperationDetailsOutput, DocumentModelDetailsOutput, DocumentTypeDetails, - getLongRunningPoller, - isUnexpected, - paginate, } from "../../src/index.js"; +import { getLongRunningPoller, isUnexpected, paginate } from "../../src/index.js"; describe("model management", () => { let recorder: Recorder; diff --git a/sdk/documentintelligence/ai-document-intelligence-rest/test/public/utils/recorderUtils.ts b/sdk/documentintelligence/ai-document-intelligence-rest/test/public/utils/recorderUtils.ts index 41c2157acbf5..b9a1b77e8662 100644 --- a/sdk/documentintelligence/ai-document-intelligence-rest/test/public/utils/recorderUtils.ts +++ b/sdk/documentintelligence/ai-document-intelligence-rest/test/public/utils/recorderUtils.ts @@ -1,13 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - Recorder, - RecorderStartOptions, - TestInfo, - env, - isPlaybackMode, -} from "@azure-tools/test-recorder"; +import type { RecorderStartOptions, TestInfo } from "@azure-tools/test-recorder"; +import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; const envSetupForPlayback: { [k: string]: string } = { AZURE_CLIENT_ID: "azure_client_id", diff --git a/sdk/documenttranslator/ai-document-translator-rest/review/ai-document-translator.api.md b/sdk/documenttranslator/ai-document-translator-rest/review/ai-document-translator.api.md index c4f34e7b33a4..d6e761ff1da9 100644 --- a/sdk/documenttranslator/ai-document-translator-rest/review/ai-document-translator.api.md +++ b/sdk/documenttranslator/ai-document-translator-rest/review/ai-document-translator.api.md @@ -4,13 +4,13 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface BatchRequest { @@ -104,7 +104,6 @@ export interface DocumentStatus { // @public (undocumented) function DocumentTranslator(endpoint: string, credentials: TokenCredential | KeyCredential, options?: ClientOptions): DocumentTranslatorClient; - export default DocumentTranslator; // @public (undocumented) @@ -739,5 +738,4 @@ export interface TranslationStatus { summary: StatusSummary; } - ``` diff --git a/sdk/documenttranslator/ai-document-translator-rest/src/documentTranslator.ts b/sdk/documenttranslator/ai-document-translator-rest/src/documentTranslator.ts index fc4f90099ee9..3cf8624df91f 100644 --- a/sdk/documenttranslator/ai-document-translator-rest/src/documentTranslator.ts +++ b/sdk/documenttranslator/ai-document-translator-rest/src/documentTranslator.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CancelTranslation200Response, CancelTranslation401Response, CancelTranslation404Response, @@ -52,7 +52,7 @@ import { StartTranslation500Response, StartTranslation503Response, } from "./responses"; -import { +import type { CancelTranslationParameters, GetDocumentStatusParameters, GetDocumentsStatusParameters, @@ -63,8 +63,9 @@ import { GetTranslationsStatusParameters, StartTranslationParameters, } from "./parameters"; -import { Client, ClientOptions, getClient } from "@azure-rest/core-client"; -import { KeyCredential, TokenCredential } from "@azure/core-auth"; +import type { Client, ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; export interface GetTranslationsStatus { /** diff --git a/sdk/documenttranslator/ai-document-translator-rest/src/parameters.ts b/sdk/documenttranslator/ai-document-translator-rest/src/parameters.ts index 618d88a29896..39615d78aeed 100644 --- a/sdk/documenttranslator/ai-document-translator-rest/src/parameters.ts +++ b/sdk/documenttranslator/ai-document-translator-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { StartTranslationDetails } from "./models"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { StartTranslationDetails } from "./models"; export interface StartTranslationBodyParam { body: StartTranslationDetails; diff --git a/sdk/documenttranslator/ai-document-translator-rest/src/responses.ts b/sdk/documenttranslator/ai-document-translator-rest/src/responses.ts index 20982140f731..309b6cf7b712 100644 --- a/sdk/documenttranslator/ai-document-translator-rest/src/responses.ts +++ b/sdk/documenttranslator/ai-document-translator-rest/src/responses.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { TranslationErrorResponse, TranslationsStatus, DocumentStatus, @@ -10,8 +10,8 @@ import { SupportedFileFormats, SupportedStorageSources, } from "./models"; -import { HttpResponse } from "@azure-rest/core-client"; -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse } from "@azure-rest/core-client"; +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; export interface StartTranslation202Headers { /** Location of batch the operation */ diff --git a/sdk/documenttranslator/ai-document-translator-rest/test/public/listFormats.spec.ts b/sdk/documenttranslator/ai-document-translator-rest/test/public/listFormats.spec.ts index 1006d336c56f..9b74273846f1 100644 --- a/sdk/documenttranslator/ai-document-translator-rest/test/public/listFormats.spec.ts +++ b/sdk/documenttranslator/ai-document-translator-rest/test/public/listFormats.spec.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { DocumentTranslatorClient } from "../../src"; +import type { Context } from "mocha"; +import type { DocumentTranslatorClient } from "../../src"; import { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createClient } from "./utils/recordedClient"; diff --git a/sdk/documenttranslator/ai-document-translator-rest/test/public/utils/recordedClient.ts b/sdk/documenttranslator/ai-document-translator-rest/test/public/utils/recordedClient.ts index 2ab578f5dbc4..cbb9f60cceeb 100644 --- a/sdk/documenttranslator/ai-document-translator-rest/test/public/utils/recordedClient.ts +++ b/sdk/documenttranslator/ai-document-translator-rest/test/public/utils/recordedClient.ts @@ -3,10 +3,12 @@ /// -import DocumentTranslator, { DocumentTranslatorClient } from "../../../src"; -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { DocumentTranslatorClient } from "../../../src"; +import DocumentTranslator from "../../../src"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; -import { ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; const envSetupForPlayback: { [k: string]: string } = { DOCUMENT_TRANSLATOR_API_KEY: "api_key", diff --git a/sdk/easm/defender-easm-rest/review/defender-easm.api.md b/sdk/easm/defender-easm-rest/review/defender-easm.api.md index f19625e56a04..446ea26ef674 100644 --- a/sdk/easm/defender-easm-rest/review/defender-easm.api.md +++ b/sdk/easm/defender-easm-rest/review/defender-easm.api.md @@ -4,17 +4,17 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { ErrorResponse } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { Paged } from '@azure/core-paging'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { ErrorResponse } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { Paged } from '@azure/core-paging'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface AlexaInfoOutput { diff --git a/sdk/easm/defender-easm-rest/src/clientDefinitions.ts b/sdk/easm/defender-easm-rest/src/clientDefinitions.ts index 4c10d7a6899e..4b2442abba77 100644 --- a/sdk/easm/defender-easm-rest/src/clientDefinitions.ts +++ b/sdk/easm/defender-easm-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ListAssetResourceParameters, UpdateAssetsParameters, GetAssetResourceParameters, @@ -29,7 +29,7 @@ import { GetTaskParameters, CancelTaskParameters, } from "./parameters"; -import { +import type { ListAssetResource200Response, ListAssetResourceDefaultResponse, UpdateAssets200Response, @@ -83,7 +83,7 @@ import { CancelTask200Response, CancelTaskDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface ListAssetResource { /** Retrieve a list of assets for the provided search parameters. */ diff --git a/sdk/easm/defender-easm-rest/src/easm.ts b/sdk/easm/defender-easm-rest/src/easm.ts index 23aa9d0d6917..44f34cf9f496 100644 --- a/sdk/easm/defender-easm-rest/src/easm.ts +++ b/sdk/easm/defender-easm-rest/src/easm.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "./logger"; -import { TokenCredential } from "@azure/core-auth"; -import { EasmClient } from "./clientDefinitions"; +import type { TokenCredential } from "@azure/core-auth"; +import type { EasmClient } from "./clientDefinitions"; /** * Initialize a new instance of `EasmClient` diff --git a/sdk/easm/defender-easm-rest/src/isUnexpected.ts b/sdk/easm/defender-easm-rest/src/isUnexpected.ts index bfcbd97f71c7..e64622b82295 100644 --- a/sdk/easm/defender-easm-rest/src/isUnexpected.ts +++ b/sdk/easm/defender-easm-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ListAssetResource200Response, ListAssetResourceDefaultResponse, UpdateAssets200Response, diff --git a/sdk/easm/defender-easm-rest/src/outputModels.ts b/sdk/easm/defender-easm-rest/src/outputModels.ts index 76d44153ce80..357d4129e989 100644 --- a/sdk/easm/defender-easm-rest/src/outputModels.ts +++ b/sdk/easm/defender-easm-rest/src/outputModels.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Paged } from "@azure/core-paging"; +import type { Paged } from "@azure/core-paging"; /** The items in the current page of results. */ export interface AssetResourceOutputParent { diff --git a/sdk/easm/defender-easm-rest/src/paginateHelper.ts b/sdk/easm/defender-easm-rest/src/paginateHelper.ts index e27846d32a90..5d541b4e406d 100644 --- a/sdk/easm/defender-easm-rest/src/paginateHelper.ts +++ b/sdk/easm/defender-easm-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/easm/defender-easm-rest/src/parameters.ts b/sdk/easm/defender-easm-rest/src/parameters.ts index bcdf6a8b8fbd..1f8dd2ded8dd 100644 --- a/sdk/easm/defender-easm-rest/src/parameters.ts +++ b/sdk/easm/defender-easm-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RequestParameters } from "@azure-rest/core-client"; +import type { AssetUpdateData, DataConnectionData, DiscoGroupData, diff --git a/sdk/easm/defender-easm-rest/src/responses.ts b/sdk/easm/defender-easm-rest/src/responses.ts index 8442e872dc06..79424f905fba 100644 --- a/sdk/easm/defender-easm-rest/src/responses.ts +++ b/sdk/easm/defender-easm-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; +import type { PagedAssetResourceOutput, TaskOutput, AssetResourceOutput, diff --git a/sdk/easm/defender-easm-rest/test/public/assetsTest.spec.ts b/sdk/easm/defender-easm-rest/test/public/assetsTest.spec.ts index 130265d662a4..f8d4d4e56d0f 100644 --- a/sdk/easm/defender-easm-rest/test/public/assetsTest.spec.ts +++ b/sdk/easm/defender-easm-rest/test/public/assetsTest.spec.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; -import EasmDefender, { EasmClient, isUnexpected } from "../../src"; +import type { Context } from "mocha"; +import type { EasmClient } from "../../src"; +import EasmDefender, { isUnexpected } from "../../src"; import { createTestCredential } from "@azure-tools/test-credential"; describe("Assets Test", () => { diff --git a/sdk/easm/defender-easm-rest/test/public/dataConnectionsTest.spec.ts b/sdk/easm/defender-easm-rest/test/public/dataConnectionsTest.spec.ts index b346240c91f8..85932a3d82b9 100644 --- a/sdk/easm/defender-easm-rest/test/public/dataConnectionsTest.spec.ts +++ b/sdk/easm/defender-easm-rest/test/public/dataConnectionsTest.spec.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; -import EasmDefender, { EasmClient, isUnexpected } from "../../src"; +import type { Context } from "mocha"; +import type { EasmClient } from "../../src"; +import EasmDefender, { isUnexpected } from "../../src"; import { createTestCredential } from "@azure-tools/test-credential"; describe("Data Connections Test", () => { diff --git a/sdk/easm/defender-easm-rest/test/public/discoGroupsTest.spec.ts b/sdk/easm/defender-easm-rest/test/public/discoGroupsTest.spec.ts index a73062b75bee..46c4b828cf21 100644 --- a/sdk/easm/defender-easm-rest/test/public/discoGroupsTest.spec.ts +++ b/sdk/easm/defender-easm-rest/test/public/discoGroupsTest.spec.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; -import EasmDefender, { DiscoSource, EasmClient, isUnexpected } from "../../src"; +import type { Context } from "mocha"; +import type { DiscoSource, EasmClient } from "../../src"; +import EasmDefender, { isUnexpected } from "../../src"; import { createTestCredential } from "@azure-tools/test-credential"; describe("Discovery Groups Test", () => { diff --git a/sdk/easm/defender-easm-rest/test/public/discoTemplatesTest.spec.ts b/sdk/easm/defender-easm-rest/test/public/discoTemplatesTest.spec.ts index 79287d5b6a57..07e0d884f5b3 100644 --- a/sdk/easm/defender-easm-rest/test/public/discoTemplatesTest.spec.ts +++ b/sdk/easm/defender-easm-rest/test/public/discoTemplatesTest.spec.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; -import EasmDefender, { EasmClient, isUnexpected } from "../../src"; +import type { Context } from "mocha"; +import type { EasmClient } from "../../src"; +import EasmDefender, { isUnexpected } from "../../src"; import { createTestCredential } from "@azure-tools/test-credential"; describe("Discovery Templates Test", () => { diff --git a/sdk/easm/defender-easm-rest/test/public/reportsTest.spec.ts b/sdk/easm/defender-easm-rest/test/public/reportsTest.spec.ts index 5a4f7432dfa9..0ab4ac911948 100644 --- a/sdk/easm/defender-easm-rest/test/public/reportsTest.spec.ts +++ b/sdk/easm/defender-easm-rest/test/public/reportsTest.spec.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; -import EasmDefender, { EasmClient, isUnexpected } from "../../src"; +import type { Context } from "mocha"; +import type { EasmClient } from "../../src"; +import EasmDefender, { isUnexpected } from "../../src"; import { createTestCredential } from "@azure-tools/test-credential"; describe("Reports Test", () => { diff --git a/sdk/easm/defender-easm-rest/test/public/sampleTest.spec.ts b/sdk/easm/defender-easm-rest/test/public/sampleTest.spec.ts index 78de635beb5d..707dd944309e 100644 --- a/sdk/easm/defender-easm-rest/test/public/sampleTest.spec.ts +++ b/sdk/easm/defender-easm-rest/test/public/sampleTest.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("My test", () => { let recorder: Recorder; diff --git a/sdk/easm/defender-easm-rest/test/public/savedFiltersTest.spec.ts b/sdk/easm/defender-easm-rest/test/public/savedFiltersTest.spec.ts index 5365d1675ef5..93aa99c9e2d5 100644 --- a/sdk/easm/defender-easm-rest/test/public/savedFiltersTest.spec.ts +++ b/sdk/easm/defender-easm-rest/test/public/savedFiltersTest.spec.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; -import EasmDefender, { EasmClient, isUnexpected } from "../../src"; +import type { Context } from "mocha"; +import type { EasmClient } from "../../src"; +import EasmDefender, { isUnexpected } from "../../src"; import { createTestCredential } from "@azure-tools/test-credential"; describe("Saved Filters Test", () => { diff --git a/sdk/easm/defender-easm-rest/test/public/tasksTest.spec.ts b/sdk/easm/defender-easm-rest/test/public/tasksTest.spec.ts index 23787587f802..e8c5a8dde1d2 100644 --- a/sdk/easm/defender-easm-rest/test/public/tasksTest.spec.ts +++ b/sdk/easm/defender-easm-rest/test/public/tasksTest.spec.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; -import EasmDefender, { EasmClient, isUnexpected } from "../../src"; +import type { Context } from "mocha"; +import type { EasmClient } from "../../src"; +import EasmDefender, { isUnexpected } from "../../src"; import { createTestCredential } from "@azure-tools/test-credential"; describe("Tasks Test", () => { diff --git a/sdk/easm/defender-easm-rest/test/public/utils/recordedClient.ts b/sdk/easm/defender-easm-rest/test/public/utils/recordedClient.ts index 04442b4633da..4d35f33a14d9 100644 --- a/sdk/easm/defender-easm-rest/test/public/utils/recordedClient.ts +++ b/sdk/easm/defender-easm-rest/test/public/utils/recordedClient.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder } from "@azure-tools/test-recorder"; import "./env"; const envSetupForPlayback: Record = { diff --git a/sdk/entra/functions-authentication-events/src/tokenIssuanceStart/actions.ts b/sdk/entra/functions-authentication-events/src/tokenIssuanceStart/actions.ts index 0e792b44e6c1..30153de9c3ad 100644 --- a/sdk/entra/functions-authentication-events/src/tokenIssuanceStart/actions.ts +++ b/sdk/entra/functions-authentication-events/src/tokenIssuanceStart/actions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenIssuanceStartAction } from "./context"; +import type { TokenIssuanceStartAction } from "./context"; /** * An Interface for the Provide Claims for token action. diff --git a/sdk/entra/functions-authentication-events/src/tokenIssuanceStart/context.ts b/sdk/entra/functions-authentication-events/src/tokenIssuanceStart/context.ts index 70494c158229..d946ad0a9d48 100644 --- a/sdk/entra/functions-authentication-events/src/tokenIssuanceStart/context.ts +++ b/sdk/entra/functions-authentication-events/src/tokenIssuanceStart/context.ts @@ -4,7 +4,7 @@ /** * Container file for all interfaces that pertain to the OnTokenIssuanceStart event API schema version 10-01-2021-preview. */ -import { +import type { ActionableCloudEventResponse, AuthenticationEventAction, AuthenticationEventData, diff --git a/sdk/entra/functions-authentication-events/test/internal/payloadTests.spec.ts b/sdk/entra/functions-authentication-events/test/internal/payloadTests.spec.ts index 45de4517134b..bc9c9374f18d 100644 --- a/sdk/entra/functions-authentication-events/test/internal/payloadTests.spec.ts +++ b/sdk/entra/functions-authentication-events/test/internal/payloadTests.spec.ts @@ -7,7 +7,7 @@ import { RequestConstants, ResponseConstants, } from "./constants"; -import { +import type { ProvideClaimsForToken, TokenIssuanceStartRequest, } from "@azure/functions-authentication-events"; diff --git a/sdk/entra/functions-authentication-events/test/internal/payloads.ts b/sdk/entra/functions-authentication-events/test/internal/payloads.ts index f5a3ac8abbc8..51e8b2ce8e00 100644 --- a/sdk/entra/functions-authentication-events/test/internal/payloads.ts +++ b/sdk/entra/functions-authentication-events/test/internal/payloads.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenIssuanceStartRequest } from "@azure/functions-authentication-events"; +import type { TokenIssuanceStartRequest } from "@azure/functions-authentication-events"; export const request: TokenIssuanceStartRequest = { response: { diff --git a/sdk/eventgrid/eventgrid-namespaces/review/eventgrid-namespaces.api.md b/sdk/eventgrid/eventgrid-namespaces/review/eventgrid-namespaces.api.md index e90f5da9a3df..3e01d457ad41 100644 --- a/sdk/eventgrid/eventgrid-namespaces/review/eventgrid-namespaces.api.md +++ b/sdk/eventgrid/eventgrid-namespaces/review/eventgrid-namespaces.api.md @@ -5,10 +5,10 @@ ```ts import { AzureKeyCredential } from '@azure/core-auth'; -import { ClientOptions } from '@azure-rest/core-client'; -import { ErrorModel } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { ErrorModel } from '@azure-rest/core-client'; import { OperationOptions } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface AcknowledgeEventsOptionalParams extends OperationOptions { @@ -88,7 +88,7 @@ export interface FailedLockToken { } // @public -export const enum KnownReleaseDelay { +export enum KnownReleaseDelay { NoDelay = "0", OneHour = "3600", OneMinute = "60", diff --git a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/EventGridClient.ts b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/EventGridClient.ts index c36f0d9f064d..a84b8f70558d 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/EventGridClient.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/EventGridClient.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential, KeyCredential } from "@azure/core-auth"; -import { Pipeline } from "@azure/core-rest-pipeline"; -import { +import type { TokenCredential, KeyCredential } from "@azure/core-auth"; +import type { Pipeline } from "@azure/core-rest-pipeline"; +import type { CloudEvent, PublishResult, ReceiveResult, @@ -12,7 +12,7 @@ import { RejectResult, RenewLocksResult, } from "./models/models"; -import { +import type { PublishCloudEventOptionalParams, PublishCloudEventsOptionalParams, ReceiveCloudEventsOptionalParams, @@ -21,10 +21,9 @@ import { RejectCloudEventsOptionalParams, RenewCloudEventLocksOptionalParams, } from "./models/options"; +import type { EventGridClientOptions, EventGridContext } from "./api/index"; import { createEventGrid, - EventGridClientOptions, - EventGridContext, publishCloudEvent, publishCloudEvents, receiveCloudEvents, diff --git a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/api/EventGridContext.ts b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/api/EventGridContext.ts index dcde33d82407..0a24b1b04955 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/api/EventGridContext.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/api/EventGridContext.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential, KeyCredential } from "@azure/core-auth"; -import { ClientOptions } from "@azure-rest/core-client"; -import { EventGridContext } from "../rest/index"; +import type { TokenCredential, KeyCredential } from "@azure/core-auth"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { EventGridContext } from "../rest/index"; import getClient from "../rest/index"; export interface EventGridClientOptions extends ClientOptions { diff --git a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/api/operations.ts b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/api/operations.ts index 4f01a004cd5a..94eb0feaafa0 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/api/operations.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/api/operations.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CloudEvent, PublishResult, ReceiveResult, @@ -10,8 +10,7 @@ import { RejectResult, RenewLocksResult, } from "../models/models"; -import { - isUnexpected, +import type { EventGridContext as Client, AcknowledgeCloudEvents200Response, AcknowledgeCloudEventsDefaultResponse, @@ -28,13 +27,11 @@ import { RenewCloudEventLocks200Response, RenewCloudEventLocksDefaultResponse, } from "../rest/index"; -import { - StreamableMethod, - operationOptionsToRequestParameters, - createRestError, -} from "@azure-rest/core-client"; +import { isUnexpected } from "../rest/index"; +import type { StreamableMethod } from "@azure-rest/core-client"; +import { operationOptionsToRequestParameters, createRestError } from "@azure-rest/core-client"; import { uint8ArrayToString, stringToUint8Array } from "@azure/core-util"; -import { +import type { PublishCloudEventOptionalParams, PublishCloudEventsOptionalParams, ReceiveCloudEventsOptionalParams, diff --git a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/models/models.ts b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/models/models.ts index 47c7b2096302..f8f15f43c263 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/models/models.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/models/models.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ErrorModel } from "@azure-rest/core-client"; +import type { ErrorModel } from "@azure-rest/core-client"; /** Properties of an event published to an Azure Messaging EventGrid Namespace topic using the CloudEvent 1.0 Schema. */ export interface CloudEvent { diff --git a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/models/options.ts b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/models/options.ts index 0b1bdd94d387..ec3177bf7c96 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/models/options.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/models/options.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure-rest/core-client"; -import { ReleaseDelay } from "./models"; +import type { OperationOptions } from "@azure-rest/core-client"; +import type { ReleaseDelay } from "./models"; export interface PublishCloudEventOptionalParams extends OperationOptions { /** content type */ diff --git a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/clientDefinitions.ts b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/clientDefinitions.ts index 55a7c375d7c6..386e9f6c9e61 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/clientDefinitions.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PublishCloudEventParameters, PublishCloudEventsParameters, ReceiveCloudEventsParameters, @@ -10,7 +10,7 @@ import { RejectCloudEventsParameters, RenewCloudEventLocksParameters, } from "./parameters"; -import { +import type { PublishCloudEvent200Response, PublishCloudEventDefaultResponse, PublishCloudEvents200Response, @@ -26,7 +26,7 @@ import { RenewCloudEventLocks200Response, RenewCloudEventLocksDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface PublishCloudEvent { /** Publish a single Cloud Event to a namespace topic. */ diff --git a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/eventGridClient.ts b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/eventGridClient.ts index 825235bb7bb1..57cac5333054 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/eventGridClient.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/eventGridClient.ts @@ -1,10 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "../logger"; -import { TokenCredential, KeyCredential, isKeyCredential } from "@azure/core-auth"; -import { EventGridContext } from "./clientDefinitions"; +import type { TokenCredential, KeyCredential } from "@azure/core-auth"; +import { isKeyCredential } from "@azure/core-auth"; +import type { EventGridContext } from "./clientDefinitions"; /** * Initialize a new instance of `EventGridContext` diff --git a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/isUnexpected.ts b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/isUnexpected.ts index 40cfa2d6522a..b9ca1d7bf73b 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/isUnexpected.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PublishCloudEvent200Response, PublishCloudEventDefaultResponse, PublishCloudEvents200Response, diff --git a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/outputModels.ts b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/outputModels.ts index edd3a13bd15a..26337472ee99 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/outputModels.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/outputModels.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ErrorModel } from "@azure-rest/core-client"; +import type { ErrorModel } from "@azure-rest/core-client"; /** Properties of an event published to an Azure Messaging EventGrid Namespace topic using the CloudEvent 1.0 Schema. */ export interface CloudEventOutput { diff --git a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/parameters.ts b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/parameters.ts index c03919869034..15f695258d90 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/parameters.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { CloudEvent, ReleaseDelay } from "./models"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { CloudEvent, ReleaseDelay } from "./models"; export interface PublishCloudEventBodyParam { /** Single Cloud Event being published. */ diff --git a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/responses.ts b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/responses.ts index 07e2c5e3f0b7..92d6b9bf79e9 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/responses.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/cadl-generated/rest/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; +import type { PublishResultOutput, ReceiveResultOutput, AcknowledgeResultOutput, diff --git a/sdk/eventgrid/eventgrid-namespaces/src/cloudEventDistrubtedTracingEnricherPolicy.ts b/sdk/eventgrid/eventgrid-namespaces/src/cloudEventDistrubtedTracingEnricherPolicy.ts index 2619e3045983..717819a99ec8 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/cloudEventDistrubtedTracingEnricherPolicy.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/cloudEventDistrubtedTracingEnricherPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelineResponse, PipelineRequest, SendRequest, diff --git a/sdk/eventgrid/eventgrid-namespaces/src/consumer.ts b/sdk/eventgrid/eventgrid-namespaces/src/consumer.ts index 7936a86ec10f..ce940b8aaf22 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/consumer.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/consumer.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { createSerializer } from "@azure/core-client"; -import { CloudEvent, cloudEventReservedPropertyNames } from "./models"; +import type { CloudEvent } from "./models"; +import { cloudEventReservedPropertyNames } from "./models"; import { CloudEvent as CloudEventMapper, parseAndWrap, validateCloudEventEvent } from "./util"; const serializer = createSerializer(); diff --git a/sdk/eventgrid/eventgrid-namespaces/src/eventGridNamespacesPublishBinaryMode.ts b/sdk/eventgrid/eventgrid-namespaces/src/eventGridNamespacesPublishBinaryMode.ts index 4c4c978aab7c..f298e96814c0 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/eventGridNamespacesPublishBinaryMode.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/eventGridNamespacesPublishBinaryMode.ts @@ -1,18 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - isUnexpected, +import type { EventGridContext as Client, PublishCloudEvent200Response, PublishCloudEventDefaultResponse, } from "./cadl-generated/rest/index"; -import { StreamableMethod, operationOptionsToRequestParameters } from "@azure-rest/core-client"; -import { PublishCloudEventOptionalParams } from "./cadl-generated/models/options"; -import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +import { isUnexpected } from "./cadl-generated/rest/index"; +import type { StreamableMethod } from "@azure-rest/core-client"; +import { operationOptionsToRequestParameters } from "@azure-rest/core-client"; +import type { PublishCloudEventOptionalParams } from "./cadl-generated/models/options"; +import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; // eslint-disable-next-line @typescript-eslint/no-redeclare import { Buffer } from "buffer"; -import { CloudEvent } from "./cadl-generated"; +import type { CloudEvent } from "./cadl-generated"; export async function publishCloudEventInBinaryMode( context: Client, diff --git a/sdk/eventgrid/eventgrid-namespaces/src/eventGridReceiverClient.ts b/sdk/eventgrid/eventgrid-namespaces/src/eventGridReceiverClient.ts index 12f65e1e8228..cff3baf7e3fc 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/eventGridReceiverClient.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/eventGridReceiverClient.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureKeyCredential, TokenCredential } from "@azure/core-auth"; -import { +import type { AzureKeyCredential, TokenCredential } from "@azure/core-auth"; +import type { AcknowledgeResult, ReleaseResult, RejectResult, RenewLocksResult, } from "./cadl-generated/models"; import { EventGridClient as EventGridClientGenerated } from "./cadl-generated/EventGridClient"; -import { +import type { CloudEvent, ReceiveResult, AcknowledgeEventsOptions, diff --git a/sdk/eventgrid/eventgrid-namespaces/src/eventGridSenderClient.ts b/sdk/eventgrid/eventgrid-namespaces/src/eventGridSenderClient.ts index 66e187728cdc..bc17ae7f0f41 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/eventGridSenderClient.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/eventGridSenderClient.ts @@ -1,16 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureKeyCredential, TokenCredential } from "@azure/core-auth"; -import { CloudEvent as CloudEventWireModel } from "./cadl-generated/models"; +import type { AzureKeyCredential, TokenCredential } from "@azure/core-auth"; +import type { CloudEvent as CloudEventWireModel } from "./cadl-generated/models"; import { randomUUID } from "@azure/core-util"; import { EventGridClient as EventGridClientGenerated } from "./cadl-generated/EventGridClient"; -import { - SendEventsOptions, - CloudEvent, - cloudEventReservedPropertyNames, - EventGridSenderClientOptions, -} from "./models"; +import type { SendEventsOptions, CloudEvent, EventGridSenderClientOptions } from "./models"; +import { cloudEventReservedPropertyNames } from "./models"; import { cloudEventDistributedTracingEnricherPolicy } from "./cloudEventDistrubtedTracingEnricherPolicy"; import { tracingPolicyName } from "@azure/core-rest-pipeline"; diff --git a/sdk/eventgrid/eventgrid-namespaces/src/models.ts b/sdk/eventgrid/eventgrid-namespaces/src/models.ts index fa3d3ac1cc1b..a8977f76f80c 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/models.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/models.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure-rest/core-client"; -import { +import type { OperationOptions } from "@azure-rest/core-client"; +import type { BrokerProperties, PublishCloudEventOptionalParams, ReceiveCloudEventsOptionalParams, @@ -50,7 +50,7 @@ export interface RejectEventsOptions extends RejectCloudEventsOptionalParams {} export interface RenewEventLocksOptions extends RenewCloudEventLocksOptionalParams {} /** Known values of {@link ReleaseDelay} that the service accepts. */ -export const enum KnownReleaseDelay { +export enum KnownReleaseDelay { /** Ten Minutes */ TenMinutes = "600", diff --git a/sdk/eventgrid/eventgrid-namespaces/src/util.ts b/sdk/eventgrid/eventgrid-namespaces/src/util.ts index 674e8b8f165e..3a1140596f68 100644 --- a/sdk/eventgrid/eventgrid-namespaces/src/util.ts +++ b/sdk/eventgrid/eventgrid-namespaces/src/util.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyCredential } from "@azure/core-auth"; -import { CompositeMapper } from "@azure/core-client"; +import type { KeyCredential } from "@azure/core-auth"; +import type { CompositeMapper } from "@azure/core-client"; /** * Stringifies a Date object in the format expected by the Event Grid service, for use in a Shared Access Signiture. diff --git a/sdk/eventgrid/eventgrid-namespaces/test/public/eventGridNamespacesClient.spec.ts b/sdk/eventgrid/eventgrid-namespaces/test/public/eventGridNamespacesClient.spec.ts index 3ca400a8a7d9..99142ea1b6ce 100644 --- a/sdk/eventgrid/eventgrid-namespaces/test/public/eventGridNamespacesClient.spec.ts +++ b/sdk/eventgrid/eventgrid-namespaces/test/public/eventGridNamespacesClient.spec.ts @@ -1,17 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Suite, Context } from "mocha"; +import type { Suite, Context } from "mocha"; import { assert } from "@azure-tools/test-utils"; -import { Recorder, env } from "@azure-tools/test-recorder"; -import { +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; +import type { EventGridSenderClient, EventGridReceiverClient, CloudEvent, ReceiveResult, RejectResult, RenewLocksResult, - EventGridDeserializer, } from "../../src"; +import { EventGridDeserializer } from "../../src"; import { createRecordedClient } from "./utils/recordedClient"; // eslint-disable-next-line @typescript-eslint/no-redeclare import { Buffer } from "buffer"; diff --git a/sdk/eventgrid/eventgrid-namespaces/test/public/utils/recordedClient.ts b/sdk/eventgrid/eventgrid-namespaces/test/public/utils/recordedClient.ts index 8293b7a40af1..20953fcba781 100644 --- a/sdk/eventgrid/eventgrid-namespaces/test/public/utils/recordedClient.ts +++ b/sdk/eventgrid/eventgrid-namespaces/test/public/utils/recordedClient.ts @@ -1,17 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Test } from "mocha"; +import type { Test } from "mocha"; -import { - assertEnvironmentVariable, - Recorder, - RecorderStartOptions, -} from "@azure-tools/test-recorder"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable, Recorder } from "@azure-tools/test-recorder"; import { EventGridSenderClient, EventGridReceiverClient } from "../../../src"; import { createTestCredential } from "@azure-tools/test-credential"; -import { AdditionalPolicyConfig } from "@azure/core-client"; +import type { AdditionalPolicyConfig } from "@azure/core-client"; export interface RecordedV2Client { senderClient: EventGridSenderClient; diff --git a/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/SystemEventsClient.ts b/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/SystemEventsClient.ts index 7866c259d92b..db130f23d9bc 100644 --- a/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/SystemEventsClient.ts +++ b/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/SystemEventsClient.ts @@ -1,13 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Pipeline } from "@azure/core-rest-pipeline"; +import type { Pipeline } from "@azure/core-rest-pipeline"; import "./models/options"; -import { - createSystemEvents, - SystemEventsClientOptionalParams, - SystemEventsContext, -} from "./api/index"; +import type { SystemEventsClientOptionalParams, SystemEventsContext } from "./api/index"; +import { createSystemEvents } from "./api/index"; export { SystemEventsClientOptionalParams } from "./api/systemEventsContext"; diff --git a/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/api/systemEventsContext.ts b/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/api/systemEventsContext.ts index b57fa33f596b..f9de9b96eea8 100644 --- a/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/api/systemEventsContext.ts +++ b/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/api/systemEventsContext.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientOptions } from "@azure-rest/core-client"; -import { SystemEventsContext } from "../rest/index"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { SystemEventsContext } from "../rest/index"; import getClient from "../rest/index"; /** Optional parameters for the client. */ diff --git a/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/rest/clientDefinitions.ts b/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/rest/clientDefinitions.ts index 62945bba839e..4ebaa97883c7 100644 --- a/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/rest/clientDefinitions.ts +++ b/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/rest/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client } from "@azure-rest/core-client"; +import type { Client } from "@azure-rest/core-client"; export interface Routes {} diff --git a/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/rest/systemEventsClient.ts b/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/rest/systemEventsClient.ts index 839efd6d4dbe..6cb57eaaf83b 100644 --- a/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/rest/systemEventsClient.ts +++ b/sdk/eventgrid/eventgrid-system-events/src/cadl-generated/rest/systemEventsClient.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "../logger"; -import { SystemEventsContext } from "./clientDefinitions"; +import type { SystemEventsContext } from "./clientDefinitions"; /** The optional parameters for the client */ export interface SystemEventsContextOptions extends ClientOptions {} diff --git a/sdk/eventgrid/eventgrid-system-events/src/predicates.ts b/sdk/eventgrid/eventgrid-system-events/src/predicates.ts index 68783b1e00da..df95814c1128 100644 --- a/sdk/eventgrid/eventgrid-system-events/src/predicates.ts +++ b/sdk/eventgrid/eventgrid-system-events/src/predicates.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { KeyVaultCertificateNewVersionCreatedEventData, KeyVaultCertificateNearExpiryEventData, KeyVaultCertificateExpiredEventData, @@ -14,7 +14,7 @@ import { KeyVaultSecretExpiredEventData, } from "./models"; -import { +import type { AcsChatMessageDeletedEventData, AcsChatMessageDeletedInThreadEventData, AcsChatMessageEditedEventData, @@ -214,7 +214,7 @@ import { AcsRouterWorkerUpdatedEventData, } from "./cadl-generated/models"; -import { CloudEvent, EventGridEvent } from "./models"; +import type { CloudEvent, EventGridEvent } from "./models"; /** * The Event Types for all System Events. These may be used with `isSystemEvent` to determine if an diff --git a/sdk/eventgrid/eventgrid-system-events/test/public/events.spec.ts b/sdk/eventgrid/eventgrid-system-events/test/public/events.spec.ts index 5b2c60c76423..90452d211213 100644 --- a/sdk/eventgrid/eventgrid-system-events/test/public/events.spec.ts +++ b/sdk/eventgrid/eventgrid-system-events/test/public/events.spec.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Suite } from "mocha"; +import type { Suite } from "mocha"; import { isSystemEvent } from "../../src"; import { assert } from "chai"; diff --git a/sdk/eventgrid/eventgrid/review/eventgrid.api.md b/sdk/eventgrid/eventgrid/review/eventgrid.api.md index 51711c884db6..dbfb5ff31c49 100644 --- a/sdk/eventgrid/eventgrid/review/eventgrid.api.md +++ b/sdk/eventgrid/eventgrid/review/eventgrid.api.md @@ -6,11 +6,11 @@ import { AzureKeyCredential } from '@azure/core-auth'; import { AzureSASCredential } from '@azure/core-auth'; -import { CommonClientOptions } from '@azure/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationOptions } from '@azure/core-client'; -import { SASCredential } from '@azure/core-auth'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationOptions } from '@azure/core-client'; +import type { SASCredential } from '@azure/core-auth'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AcsChatEventBase { diff --git a/sdk/eventgrid/eventgrid/src/cloudEventDistrubtedTracingEnricherPolicy.ts b/sdk/eventgrid/eventgrid/src/cloudEventDistrubtedTracingEnricherPolicy.ts index 2619e3045983..717819a99ec8 100644 --- a/sdk/eventgrid/eventgrid/src/cloudEventDistrubtedTracingEnricherPolicy.ts +++ b/sdk/eventgrid/eventgrid/src/cloudEventDistrubtedTracingEnricherPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelineResponse, PipelineRequest, SendRequest, diff --git a/sdk/eventgrid/eventgrid/src/consumer.ts b/sdk/eventgrid/eventgrid/src/consumer.ts index 4e72cff9823d..bd217c94bf3b 100644 --- a/sdk/eventgrid/eventgrid/src/consumer.ts +++ b/sdk/eventgrid/eventgrid/src/consumer.ts @@ -2,8 +2,9 @@ // Licensed under the MIT License. import { createSerializer } from "@azure/core-client"; -import { CloudEvent as WireCloudEvent } from "./generated/models"; -import { CloudEvent, EventGridEvent, cloudEventReservedPropertyNames } from "./models"; +import type { CloudEvent as WireCloudEvent } from "./generated/models"; +import type { CloudEvent, EventGridEvent } from "./models"; +import { cloudEventReservedPropertyNames } from "./models"; import { EventGridEvent as EventGridEventMapper, CloudEvent as CloudEventMapper, diff --git a/sdk/eventgrid/eventgrid/src/eventGridAuthenticationPolicy.ts b/sdk/eventgrid/eventgrid/src/eventGridAuthenticationPolicy.ts index 654b9b879566..2565b7308cfd 100644 --- a/sdk/eventgrid/eventgrid/src/eventGridAuthenticationPolicy.ts +++ b/sdk/eventgrid/eventgrid/src/eventGridAuthenticationPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyCredential, SASCredential } from "@azure/core-auth"; -import { +import type { KeyCredential, SASCredential } from "@azure/core-auth"; +import type { PipelineResponse, PipelineRequest, SendRequest, diff --git a/sdk/eventgrid/eventgrid/src/eventGridClient.ts b/sdk/eventgrid/eventgrid/src/eventGridClient.ts index d2d1950ef9c2..13cc16452eda 100644 --- a/sdk/eventgrid/eventgrid/src/eventGridClient.ts +++ b/sdk/eventgrid/eventgrid/src/eventGridClient.ts @@ -1,18 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { isTokenCredential, KeyCredential, SASCredential } from "@azure/core-auth"; -import { OperationOptions, CommonClientOptions } from "@azure/core-client"; +import type { KeyCredential, SASCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { OperationOptions, CommonClientOptions } from "@azure/core-client"; import { eventGridCredentialPolicy } from "./eventGridAuthenticationPolicy"; import { DEFAULT_EVENTGRID_SCOPE } from "./constants"; -import { - SendCloudEventInput, - SendEventGridEventInput, - cloudEventReservedPropertyNames, -} from "./models"; +import type { SendCloudEventInput, SendEventGridEventInput } from "./models"; +import { cloudEventReservedPropertyNames } from "./models"; import { GeneratedClient } from "./generated/generatedClient"; -import { +import type { CloudEvent as CloudEventWireModel, EventGridEvent as EventGridEventWireModel, GeneratedClientPublishCloudEventEventsOptionalParams, @@ -20,7 +18,7 @@ import { import { cloudEventDistributedTracingEnricherPolicy } from "./cloudEventDistrubtedTracingEnricherPolicy"; import { tracingClient } from "./tracing"; import { v4 as uuidv4 } from "uuid"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { bearerTokenAuthenticationPolicy, tracingPolicyName } from "@azure/core-rest-pipeline"; /** diff --git a/sdk/eventgrid/eventgrid/src/generateSharedAccessSignature.ts b/sdk/eventgrid/eventgrid/src/generateSharedAccessSignature.ts index 5e22d4c5cafd..78144f8a46f2 100644 --- a/sdk/eventgrid/eventgrid/src/generateSharedAccessSignature.ts +++ b/sdk/eventgrid/eventgrid/src/generateSharedAccessSignature.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyCredential } from "@azure/core-auth"; +import type { KeyCredential } from "@azure/core-auth"; import { DEFAULT_API_VERSION } from "./constants"; import { sha256Hmac } from "./cryptoHelpers"; import { dateToServiceTimeString } from "./util"; diff --git a/sdk/eventgrid/eventgrid/src/predicates.ts b/sdk/eventgrid/eventgrid/src/predicates.ts index 5d58de11f24d..dda8eedd8baa 100644 --- a/sdk/eventgrid/eventgrid/src/predicates.ts +++ b/sdk/eventgrid/eventgrid/src/predicates.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AcsChatMessageDeletedEventData, AcsChatMessageDeletedInThreadEventData, AcsChatMessageEditedEventData, @@ -214,7 +214,7 @@ import { AcsChatThreadPropertiesUpdatedEventData, } from "./generated/models"; -import { CloudEvent, EventGridEvent } from "./models"; +import type { CloudEvent, EventGridEvent } from "./models"; /** * The Event Types for all System Events. These may be used with `isSystemEvent` to determine if an diff --git a/sdk/eventgrid/eventgrid/src/util.ts b/sdk/eventgrid/eventgrid/src/util.ts index 97f8f39ef2f5..a4bb627c1e55 100644 --- a/sdk/eventgrid/eventgrid/src/util.ts +++ b/sdk/eventgrid/eventgrid/src/util.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyCredential } from "@azure/core-auth"; +import type { KeyCredential } from "@azure/core-auth"; /** * Stringifies a Date object in the format expected by the Event Grid service, for use in a Shared Access Signiture. diff --git a/sdk/eventgrid/eventgrid/test/internal/cloudEventDistributedTracingEnricherPolicy.spec.ts b/sdk/eventgrid/eventgrid/test/internal/cloudEventDistributedTracingEnricherPolicy.spec.ts index 09459129b8b2..a18aefc728fc 100644 --- a/sdk/eventgrid/eventgrid/test/internal/cloudEventDistributedTracingEnricherPolicy.spec.ts +++ b/sdk/eventgrid/eventgrid/test/internal/cloudEventDistributedTracingEnricherPolicy.spec.ts @@ -3,12 +3,8 @@ import { assert } from "chai"; import { cloudEventDistributedTracingEnricherPolicy } from "../../src/cloudEventDistrubtedTracingEnricherPolicy"; -import { - PipelineRequest, - PipelineResponse, - createPipelineRequest, - SendRequest, -} from "@azure/core-rest-pipeline"; +import type { PipelineRequest, PipelineResponse, SendRequest } from "@azure/core-rest-pipeline"; +import { createPipelineRequest } from "@azure/core-rest-pipeline"; const CloudEventBatchContentType = "application/cloudevents-batch+json; charset=utf-8"; diff --git a/sdk/eventgrid/eventgrid/test/public/eventGridClient.spec.ts b/sdk/eventgrid/eventgrid/test/public/eventGridClient.spec.ts index c5925eb1921e..95f61333efc8 100644 --- a/sdk/eventgrid/eventgrid/test/public/eventGridClient.spec.ts +++ b/sdk/eventgrid/eventgrid/test/public/eventGridClient.spec.ts @@ -2,16 +2,16 @@ // Licensed under the MIT License. import { assert } from "@azure-tools/test-utils"; -import { Suite, Context } from "mocha"; +import type { Suite, Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { createRecordedClient } from "./utils/recordedClient"; -import { EventGridPublisherClient } from "../../src"; +import type { EventGridPublisherClient } from "../../src"; -import { RestError } from "@azure/core-rest-pipeline"; -import { AdditionalPolicyConfig } from "@azure/core-client"; +import type { RestError } from "@azure/core-rest-pipeline"; +import type { AdditionalPolicyConfig } from "@azure/core-client"; import { getRandomNumber } from "./utils/testUtils"; import { TraceParentHeaderName, diff --git a/sdk/eventgrid/eventgrid/test/public/utils/recordedClient.ts b/sdk/eventgrid/eventgrid/test/public/utils/recordedClient.ts index d2669840edd8..89b432fcae6e 100644 --- a/sdk/eventgrid/eventgrid/test/public/utils/recordedClient.ts +++ b/sdk/eventgrid/eventgrid/test/public/utils/recordedClient.ts @@ -1,18 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Test } from "mocha"; +import type { Test } from "mocha"; -import { - assertEnvironmentVariable, - Recorder, - RecorderStartOptions, -} from "@azure-tools/test-recorder"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable, Recorder } from "@azure-tools/test-recorder"; -import { EventGridPublisherClient, InputSchema } from "../../../src"; +import type { InputSchema } from "../../../src"; +import { EventGridPublisherClient } from "../../../src"; import { createTestCredential } from "@azure-tools/test-credential"; -import { AdditionalPolicyConfig } from "@azure/core-client"; -import { FindReplaceSanitizer } from "@azure-tools/test-recorder/types/src/utils/utils"; +import type { AdditionalPolicyConfig } from "@azure/core-client"; +import type { FindReplaceSanitizer } from "@azure-tools/test-recorder/types/src/utils/utils"; export interface RecordedClient { client: EventGridPublisherClient; diff --git a/sdk/eventhub/event-hubs/review/event-hubs.api.md b/sdk/eventhub/event-hubs/review/event-hubs.api.md index 7b529eb18f63..90947663b97d 100644 --- a/sdk/eventhub/event-hubs/review/event-hubs.api.md +++ b/sdk/eventhub/event-hubs/review/event-hubs.api.md @@ -4,15 +4,15 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; +import type { AbortSignalLike } from '@azure/abort-controller'; import { AmqpAnnotatedMessage } from '@azure/core-amqp'; -import { AzureLogger } from '@azure/logger'; +import type { AzureLogger } from '@azure/logger'; import { MessagingError } from '@azure/core-amqp'; -import { NamedKeyCredential } from '@azure/core-auth'; -import { OperationTracingOptions } from '@azure/core-tracing'; +import type { NamedKeyCredential } from '@azure/core-auth'; +import type { OperationTracingOptions } from '@azure/core-tracing'; import { RetryMode } from '@azure/core-amqp'; import { RetryOptions } from '@azure/core-amqp'; -import { SASCredential } from '@azure/core-auth'; +import type { SASCredential } from '@azure/core-auth'; import { TokenCredential } from '@azure/core-auth'; import { WebSocketImpl } from 'rhea-promise'; import { WebSocketOptions } from '@azure/core-amqp'; diff --git a/sdk/eventhub/event-hubs/samples-express/src/asyncBatchingProducer.ts b/sdk/eventhub/event-hubs/samples-express/src/asyncBatchingProducer.ts index 820b25496987..9f4c18fe1cc1 100644 --- a/sdk/eventhub/event-hubs/samples-express/src/asyncBatchingProducer.ts +++ b/sdk/eventhub/event-hubs/samples-express/src/asyncBatchingProducer.ts @@ -12,7 +12,7 @@ between sending batches. */ -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; +import { delay } from "@azure/core-util"; import { EventData, EventDataBatch, EventHubProducerClient } from "@azure/event-hubs"; export interface AsyncBatchingProducerOptions { @@ -69,7 +69,7 @@ export class AsyncBatchingProducer { // Wait for either the next event, or for the allotted time to pass. const event = await Promise.race([ futureEvent, - wait(maximumTimeToWaitForEvent, abortSignal) + delay(maximumTimeToWaitForEvent, { abortSignal }) ]); if (!event) { @@ -120,36 +120,6 @@ export class AsyncBatchingProducer { } } -/** - * This function returns a promise that resolves after the specified amount of time. - * It also supports cancellation via passing in an `abortSignal`. - * @param timeInMs - The amount of time in milliseconds the function should wait before resolving. - * @param abortSignal - Used to support rejecting the promise immediately. - */ -function wait(timeInMs: number, abortSignal: AbortSignalLike): Promise { - return new Promise((resolve, reject) => { - // Cancel quickly if the provided abortSignal has already been aborted. - if (abortSignal.aborted) { - return reject(new AbortError("The operation was cancelled.")); - } - // Create an abort event listener that rejects the promise with an AbortError. - // It also clears the existing setTimeout and removes itself from the abortSignal. - const abortListener = () => { - clearTimeout(tid); - reject(new AbortError("This operation was cancelled.")); - abortSignal.removeEventListener("abort", abortListener); - }; - // Create the timer that will resolve the promise. - // It also ensures that abort event listener is removed from the abortSignal. - const tid = setTimeout(() => { - abortSignal.removeEventListener("abort", abortListener); - resolve(); - }, timeInMs); - // Add an abort listener so that the promise can be rejected if the user cancels their operation. - abortSignal.addEventListener("abort", abortListener); - }); -} - /** * `AwaitableQueue` stores items in the order that they are received. * diff --git a/sdk/eventhub/event-hubs/samples/v5/express/package.json b/sdk/eventhub/event-hubs/samples/v5/express/package.json index 7ba1fe1706e1..414b58c4dc21 100644 --- a/sdk/eventhub/event-hubs/samples/v5/express/package.json +++ b/sdk/eventhub/event-hubs/samples/v5/express/package.json @@ -27,13 +27,15 @@ "start": "node ./dist/index.js" }, "dependencies": { + "@azure/core-util": "^1.11.0", "@azure/event-hubs": "^5.12.0", "@azure/identity": "^4.3.0", - "express": "^4.17.1", + "dotenv": "^16.4.5", + "express": "^4.19.2", "uuid": "^8.3.1" }, "devDependencies": { - "@types/express": "^4.17.9", + "@types/express": "^4.17.21", "@types/node": "^18.0.0", "rimraf": "^5.0.5", "typescript": "~5.6.2" diff --git a/sdk/eventhub/event-hubs/samples/v5/express/src/asyncBatchingProducer.ts b/sdk/eventhub/event-hubs/samples/v5/express/src/asyncBatchingProducer.ts index 85a516d6e674..9f4c18fe1cc1 100644 --- a/sdk/eventhub/event-hubs/samples/v5/express/src/asyncBatchingProducer.ts +++ b/sdk/eventhub/event-hubs/samples/v5/express/src/asyncBatchingProducer.ts @@ -12,7 +12,7 @@ between sending batches. */ -import { AbortController, AbortError, AbortSignalLike } from "@azure/abort-controller"; +import { delay } from "@azure/core-util"; import { EventData, EventDataBatch, EventHubProducerClient } from "@azure/event-hubs"; export interface AsyncBatchingProducerOptions { @@ -69,7 +69,7 @@ export class AsyncBatchingProducer { // Wait for either the next event, or for the allotted time to pass. const event = await Promise.race([ futureEvent, - wait(maximumTimeToWaitForEvent, abortSignal) + delay(maximumTimeToWaitForEvent, { abortSignal }) ]); if (!event) { @@ -120,36 +120,6 @@ export class AsyncBatchingProducer { } } -/** - * This function returns a promise that resolves after the specified amount of time. - * It also supports cancellation via passing in an `abortSignal`. - * @param timeInMs - The amount of time in milliseconds the function should wait before resolving. - * @param abortSignal - Used to support rejecting the promise immediately. - */ -function wait(timeInMs: number, abortSignal: AbortSignalLike): Promise { - return new Promise((resolve, reject) => { - // Cancel quickly if the provided abortSignal has already been aborted. - if (abortSignal.aborted) { - return reject(new AbortError("The operation was cancelled.")); - } - // Create an abort event listener that rejects the promise with an AbortError. - // It also clears the existing setTimeout and removes itself from the abortSignal. - const abortListener = () => { - clearTimeout(tid); - reject(new AbortError("This operation was cancelled.")); - abortSignal.removeEventListener("abort", abortListener); - }; - // Create the timer that will resolve the promise. - // It also ensures that abort event listener is removed from the abortSignal. - const tid = setTimeout(() => { - abortSignal.removeEventListener("abort", abortListener); - resolve(); - }, timeInMs); - // Add an abort listener so that the promise can be rejected if the user cancels their operation. - abortSignal.addEventListener("abort", abortListener); - }); -} - /** * `AwaitableQueue` stores items in the order that they are received. * diff --git a/sdk/eventhub/event-hubs/samples/v5/javascript/README.md b/sdk/eventhub/event-hubs/samples/v5/javascript/README.md index f9b455a0ba96..bb6ec2c37d5c 100644 --- a/sdk/eventhub/event-hubs/samples/v5/javascript/README.md +++ b/sdk/eventhub/event-hubs/samples/v5/javascript/README.md @@ -56,7 +56,7 @@ node sendBufferedEvents.js Alternatively, run a single sample with the correct environment variables set (setting up the `.env` file is not required if you do this), for example (cross-platform): ```bash -npx cross-env EVENTHUB_FQDN="" EVENTHUB_NAME="" node sendBufferedEvents.js +npx cross-env EVENTHUB_FQDN="" EVENTHUB_NAME="" node sendBufferedEvents.js ``` ## Next Steps diff --git a/sdk/eventhub/event-hubs/samples/v5/javascript/iothubConnectionString.js b/sdk/eventhub/event-hubs/samples/v5/javascript/iothubConnectionString.js index 13200bac658e..c07c35de103b 100644 --- a/sdk/eventhub/event-hubs/samples/v5/javascript/iothubConnectionString.js +++ b/sdk/eventhub/event-hubs/samples/v5/javascript/iothubConnectionString.js @@ -18,10 +18,19 @@ const { Connection, ReceiverEvents, parseConnectionString } = require("rhea-prom const rheaPromise = require("rhea-promise"); const { EventHubConsumerClient, earliestEventPosition } = require("@azure/event-hubs"); const { ErrorNameConditionMapper: AMQPError } = require("@azure/core-amqp"); +const { SecretClient } = require("@azure/keyvault-secrets"); +const { DefaultAzureCredential } = require("@azure/identity"); // Load the .env file if it exists require("dotenv/config"); +const consumerGroup = process.env["EVENTHUB_CONSUMER_GROUP_NAME"] || ""; +// IoT Hub connection string is stored in Key Vault. +const keyvaultUri = process.env["KEYVAULT_URI"] || ""; +// IoT Hub connection string name in Key Vault. +const iotHubConnectionStringName = + process.env["IOTHUB_CONNECTION_STRING_SECRET_NAME"] || ""; + /** * Type guard for AmqpError. * @param err - An unknown error. @@ -30,8 +39,6 @@ function isAmqpError(err) { return rheaPromise.isAmqpError(err); } -const consumerGroup = process.env["EVENTHUB_CONSUMER_GROUP_NAME"] || ""; - // This code is modified from https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-security#security-tokens. function generateSasToken(resourceUri, signingKey, policyName, expiresInMins) { resourceUri = encodeURIComponent(resourceUri); @@ -126,9 +133,14 @@ async function convertIotHubToEventHubsConnectionString(connectionString) { async function main() { console.log(`Running iothubConnectionString sample`); - const eventHubsConnectionString = await convertIotHubToEventHubsConnectionString( - "HostName=.azure-devices.net;SharedAccessKeyName=;SharedAccessKey=", - ); + const kvClient = new SecretClient(keyvaultUri, new DefaultAzureCredential()); + const { value: iotHubConnectionString } = await kvClient.getSecret(iotHubConnectionStringName); + if (!iotHubConnectionString) { + throw new Error(`Failed to retrieve the IotHub connection string from Key Vault.`); + } + + const eventHubsConnectionString = + await convertIotHubToEventHubsConnectionString(iotHubConnectionString); const consumerClient = new EventHubConsumerClient(consumerGroup, eventHubsConnectionString); diff --git a/sdk/eventhub/event-hubs/samples/v5/javascript/iothubConnectionStringWebsockets.js b/sdk/eventhub/event-hubs/samples/v5/javascript/iothubConnectionStringWebsockets.js index ab80c9cfcaa8..cabafeb8d79c 100644 --- a/sdk/eventhub/event-hubs/samples/v5/javascript/iothubConnectionStringWebsockets.js +++ b/sdk/eventhub/event-hubs/samples/v5/javascript/iothubConnectionStringWebsockets.js @@ -17,6 +17,8 @@ const { Buffer } = require("buffer"); const { Connection, ReceiverEvents, parseConnectionString } = require("rhea-promise"); const rheaPromise = require("rhea-promise"); const { EventHubConsumerClient, earliestEventPosition } = require("@azure/event-hubs"); +const { SecretClient } = require("@azure/keyvault-secrets"); +const { DefaultAzureCredential } = require("@azure/identity"); const WebSocket = require("ws"); // Load the .env file if it exists @@ -31,6 +33,11 @@ function isAmqpError(err) { } const consumerGroup = process.env["EVENTHUB_CONSUMER_GROUP_NAME"] || ""; +// IoT Hub connection string is stored in Key Vault. +const keyvaultUri = process.env["KEYVAULT_URI"] || ""; +// IoT Hub connection string name in Key Vault. +const iotHubConnectionStringName = + process.env["IOTHUB_CONNECTION_STRING_SECRET_NAME"] || ""; // This code is modified from https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-security#security-tokens. function generateSasToken(resourceUri, signingKey, policyName, expiresInMins) { @@ -126,9 +133,14 @@ async function convertIotHubToEventHubsConnectionString(connectionString) { async function main() { console.log(`Running iothubConnectionString sample`); - const eventHubsConnectionString = await convertIotHubToEventHubsConnectionString( - "HostName=.azure-devices.net;SharedAccessKeyName=;SharedAccessKey=", - ); + const kvClient = new SecretClient(keyvaultUri, new DefaultAzureCredential()); + const { value: iotHubConnectionString } = await kvClient.getSecret(iotHubConnectionStringName); + if (!iotHubConnectionString) { + throw new Error(`Failed to retrieve the IotHub connection string from Key Vault.`); + } + + const eventHubsConnectionString = + await convertIotHubToEventHubsConnectionString(iotHubConnectionString); const consumerClient = new EventHubConsumerClient(consumerGroup, eventHubsConnectionString); diff --git a/sdk/eventhub/event-hubs/samples/v5/javascript/sample.env b/sdk/eventhub/event-hubs/samples/v5/javascript/sample.env index 08cc8612d704..a9e46755c13f 100644 --- a/sdk/eventhub/event-hubs/samples/v5/javascript/sample.env +++ b/sdk/eventhub/event-hubs/samples/v5/javascript/sample.env @@ -1,7 +1,16 @@ -# Used in most samples. Retrieve these values from an Event Hub in the Azure Portal. +# Retrieve these values from an Event Hub in the Azure Portal. EVENTHUB_FQDN=.servicebus.windows.net EVENTHUB_NAME= EVENTHUB_CONSUMER_GROUP_NAME= +# Key Vault is used to store secrets. Retrieve this value from the Azure Portal. +KEYVAULT_URI= + +# Retrieve the connection string for the Event Hub from the Azure Portal and store it in the Key Vault. +EVENTHUB_CONNECTION_STRING_SECRET_NAME= + +# Retrieve the connection string for Iot Hub from the Azure Portal and store it in the Key Vault. +IOTHUB_CONNECTION_STRING_SECRET_NAME= + # Used in the useWithIotHub sample. Retrieve this value from an IoT Hub's built-in endpoints in the Azure Portal. -IOTHUB_EH_COMPATIBLE_CONNECTION_STRING= \ No newline at end of file +IOTHUB_EH_COMPATIBLE_CONNECTION_STRING= \ No newline at end of file diff --git a/sdk/eventhub/event-hubs/samples/v5/typescript/README.md b/sdk/eventhub/event-hubs/samples/v5/typescript/README.md index 3c321e1e7745..c3a2a1151ab8 100644 --- a/sdk/eventhub/event-hubs/samples/v5/typescript/README.md +++ b/sdk/eventhub/event-hubs/samples/v5/typescript/README.md @@ -68,7 +68,7 @@ node dist/sendBufferedEvents.js Alternatively, run a single sample with the correct environment variables set (setting up the `.env` file is not required if you do this), for example (cross-platform): ```bash -npx cross-env EVENTHUB_FQDN="" EVENTHUB_NAME="" node dist/sendBufferedEvents.js +npx cross-env EVENTHUB_FQDN="" EVENTHUB_NAME="" node dist/sendBufferedEvents.js ``` ## Next Steps diff --git a/sdk/eventhub/event-hubs/samples/v5/typescript/sample.env b/sdk/eventhub/event-hubs/samples/v5/typescript/sample.env index 08cc8612d704..a9e46755c13f 100644 --- a/sdk/eventhub/event-hubs/samples/v5/typescript/sample.env +++ b/sdk/eventhub/event-hubs/samples/v5/typescript/sample.env @@ -1,7 +1,16 @@ -# Used in most samples. Retrieve these values from an Event Hub in the Azure Portal. +# Retrieve these values from an Event Hub in the Azure Portal. EVENTHUB_FQDN=.servicebus.windows.net EVENTHUB_NAME= EVENTHUB_CONSUMER_GROUP_NAME= +# Key Vault is used to store secrets. Retrieve this value from the Azure Portal. +KEYVAULT_URI= + +# Retrieve the connection string for the Event Hub from the Azure Portal and store it in the Key Vault. +EVENTHUB_CONNECTION_STRING_SECRET_NAME= + +# Retrieve the connection string for Iot Hub from the Azure Portal and store it in the Key Vault. +IOTHUB_CONNECTION_STRING_SECRET_NAME= + # Used in the useWithIotHub sample. Retrieve this value from an IoT Hub's built-in endpoints in the Azure Portal. -IOTHUB_EH_COMPATIBLE_CONNECTION_STRING= \ No newline at end of file +IOTHUB_EH_COMPATIBLE_CONNECTION_STRING= \ No newline at end of file diff --git a/sdk/eventhub/event-hubs/samples/v5/typescript/src/iothubConnectionString.ts b/sdk/eventhub/event-hubs/samples/v5/typescript/src/iothubConnectionString.ts index 12f3a8dc3556..00506e7e57f1 100644 --- a/sdk/eventhub/event-hubs/samples/v5/typescript/src/iothubConnectionString.ts +++ b/sdk/eventhub/event-hubs/samples/v5/typescript/src/iothubConnectionString.ts @@ -18,10 +18,19 @@ import { AmqpError, Connection, ReceiverEvents, parseConnectionString } from "rh import * as rheaPromise from "rhea-promise"; import { EventHubConsumerClient, earliestEventPosition } from "@azure/event-hubs"; import { ErrorNameConditionMapper as AMQPError } from "@azure/core-amqp"; +import { SecretClient } from "@azure/keyvault-secrets"; +import { DefaultAzureCredential } from "@azure/identity"; // Load the .env file if it exists import "dotenv/config"; +const consumerGroup = process.env["EVENTHUB_CONSUMER_GROUP_NAME"] || ""; +// IoT Hub connection string is stored in Key Vault. +const keyvaultUri = process.env["KEYVAULT_URI"] || ""; +// IoT Hub connection string name in Key Vault. +const iotHubConnectionStringName = + process.env["IOTHUB_CONNECTION_STRING_SECRET_NAME"] || ""; + /** * Type guard for AmqpError. * @param err - An unknown error. @@ -30,8 +39,6 @@ function isAmqpError(err: any): err is AmqpError { return rheaPromise.isAmqpError(err); } -const consumerGroup = process.env["EVENTHUB_CONSUMER_GROUP_NAME"] || ""; - // This code is modified from https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-security#security-tokens. function generateSasToken( resourceUri: string, @@ -134,9 +141,14 @@ async function convertIotHubToEventHubsConnectionString(connectionString: string export async function main() { console.log(`Running iothubConnectionString sample`); - const eventHubsConnectionString = await convertIotHubToEventHubsConnectionString( - "HostName=.azure-devices.net;SharedAccessKeyName=;SharedAccessKey=", - ); + const kvClient = new SecretClient(keyvaultUri, new DefaultAzureCredential()); + const { value: iotHubConnectionString } = await kvClient.getSecret(iotHubConnectionStringName); + if (!iotHubConnectionString) { + throw new Error(`Failed to retrieve the IotHub connection string from Key Vault.`); + } + + const eventHubsConnectionString = + await convertIotHubToEventHubsConnectionString(iotHubConnectionString); const consumerClient = new EventHubConsumerClient(consumerGroup, eventHubsConnectionString); diff --git a/sdk/eventhub/event-hubs/samples/v5/typescript/src/iothubConnectionStringWebsockets.ts b/sdk/eventhub/event-hubs/samples/v5/typescript/src/iothubConnectionStringWebsockets.ts index 070a24fde3ed..6f2ca6e65fc8 100644 --- a/sdk/eventhub/event-hubs/samples/v5/typescript/src/iothubConnectionStringWebsockets.ts +++ b/sdk/eventhub/event-hubs/samples/v5/typescript/src/iothubConnectionStringWebsockets.ts @@ -17,6 +17,8 @@ import { Buffer } from "buffer"; import { AmqpError, Connection, ReceiverEvents, parseConnectionString } from "rhea-promise"; import * as rheaPromise from "rhea-promise"; import { EventHubConsumerClient, earliestEventPosition } from "@azure/event-hubs"; +import { SecretClient } from "@azure/keyvault-secrets"; +import { DefaultAzureCredential } from "@azure/identity"; import WebSocket from "ws"; // Load the .env file if it exists @@ -31,6 +33,11 @@ function isAmqpError(err: any): err is AmqpError { } const consumerGroup = process.env["EVENTHUB_CONSUMER_GROUP_NAME"] || ""; +// IoT Hub connection string is stored in Key Vault. +const keyvaultUri = process.env["KEYVAULT_URI"] || ""; +// IoT Hub connection string name in Key Vault. +const iotHubConnectionStringName = + process.env["IOTHUB_CONNECTION_STRING_SECRET_NAME"] || ""; // This code is modified from https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-security#security-tokens. function generateSasToken( @@ -134,9 +141,14 @@ async function convertIotHubToEventHubsConnectionString(connectionString: string export async function main() { console.log(`Running iothubConnectionString sample`); - const eventHubsConnectionString = await convertIotHubToEventHubsConnectionString( - "HostName=.azure-devices.net;SharedAccessKeyName=;SharedAccessKey=", - ); + const kvClient = new SecretClient(keyvaultUri, new DefaultAzureCredential()); + const { value: iotHubConnectionString } = await kvClient.getSecret(iotHubConnectionStringName); + if (!iotHubConnectionString) { + throw new Error(`Failed to retrieve the IotHub connection string from Key Vault.`); + } + + const eventHubsConnectionString = + await convertIotHubToEventHubsConnectionString(iotHubConnectionString); const consumerClient = new EventHubConsumerClient(consumerGroup, eventHubsConnectionString); diff --git a/sdk/eventhub/event-hubs/src/batchingPartitionChannel.ts b/sdk/eventhub/event-hubs/src/batchingPartitionChannel.ts index 00282067c0b8..30c6a8b0a362 100644 --- a/sdk/eventhub/event-hubs/src/batchingPartitionChannel.ts +++ b/sdk/eventhub/event-hubs/src/batchingPartitionChannel.ts @@ -1,16 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AmqpAnnotatedMessage, delay } from "@azure/core-amqp"; -import { +import type { AmqpAnnotatedMessage } from "@azure/core-amqp"; +import { delay } from "@azure/core-amqp"; +import type { EventData, EventDataBatch, EventHubBufferedProducerClientOptions, EventHubProducerClient, OperationOptions, } from "./index.js"; -import { isDefined, isObjectWithProperties, AbortOptions } from "@azure/core-util"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortOptions } from "@azure/core-util"; +import { isDefined, isObjectWithProperties } from "@azure/core-util"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { AwaitableQueue } from "./impl/awaitableQueue.js"; import { getPromiseParts } from "./util/getPromiseParts.js"; import { logger } from "./logger.js"; diff --git a/sdk/eventhub/event-hubs/src/connectionContext.ts b/sdk/eventhub/event-hubs/src/connectionContext.ts index 26815d804621..44d8b1b754e2 100644 --- a/sdk/eventhub/event-hubs/src/connectionContext.ts +++ b/sdk/eventhub/event-hubs/src/connectionContext.ts @@ -4,36 +4,30 @@ /* eslint-disable @typescript-eslint/no-namespace */ /* eslint-disable no-inner-declarations */ -import { Connection, ConnectionEvents, Dictionary, EventContext, OnAmqpEvent } from "rhea-promise"; +import type { Connection, Dictionary, EventContext, OnAmqpEvent } from "rhea-promise"; +import { ConnectionEvents } from "rhea-promise"; +import type { CreateConnectionContextBaseParameters, SasTokenProvider } from "@azure/core-amqp"; import { ConnectionConfig, ConnectionContextBase, Constants, - CreateConnectionContextBaseParameters, - SasTokenProvider, createSasTokenProvider, } from "@azure/core-amqp"; -import { - EventHubConnectionStringProperties, - parseEventHubConnectionString, -} from "./util/connectionStringUtils.js"; -import { ManagementClient, ManagementClientOptions } from "./managementClient.js"; -import { - NamedKeyCredential, - SASCredential, - TokenCredential, - isNamedKeyCredential, - isSASCredential, -} from "@azure/core-auth"; +import type { EventHubConnectionStringProperties } from "./util/connectionStringUtils.js"; +import { parseEventHubConnectionString } from "./util/connectionStringUtils.js"; +import type { ManagementClientOptions } from "./managementClient.js"; +import { ManagementClient } from "./managementClient.js"; +import type { NamedKeyCredential, SASCredential, TokenCredential } from "@azure/core-auth"; +import { isNamedKeyCredential, isSASCredential } from "@azure/core-auth"; import { logErrorStackTrace, logger } from "./logger.js"; -import { EventHubClientOptions } from "./models/public.js"; +import type { EventHubClientOptions } from "./models/public.js"; import { EventHubConnectionConfig } from "./eventhubConnectionConfig.js"; -import { PartitionReceiver } from "./partitionReceiver.js"; -import { EventHubSender } from "./eventHubSender.js"; +import type { PartitionReceiver } from "./partitionReceiver.js"; +import type { EventHubSender } from "./eventHubSender.js"; import { getRuntimeInfo } from "./util/runtimeInfo.js"; import { isCredential } from "./util/typeGuards.js"; import { packageJsonInfo } from "./util/constants.js"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { createAbortablePromise } from "@azure/core-util"; /** diff --git a/sdk/eventhub/event-hubs/src/diagnostics/instrumentEventData.ts b/sdk/eventhub/event-hubs/src/diagnostics/instrumentEventData.ts index 424508628cfc..487b01292165 100644 --- a/sdk/eventhub/event-hubs/src/diagnostics/instrumentEventData.ts +++ b/sdk/eventhub/event-hubs/src/diagnostics/instrumentEventData.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { EventData, isAmqpAnnotatedMessage } from "../eventData.js"; -import { TracingContext } from "@azure/core-tracing"; -import { AmqpAnnotatedMessage } from "@azure/core-amqp"; -import { OperationOptions } from "../util/operationOptions.js"; -import { MessagingOperationNames, toSpanOptions, tracingClient } from "./tracing.js"; +import type { EventData } from "../eventData.js"; +import { isAmqpAnnotatedMessage } from "../eventData.js"; +import type { TracingContext } from "@azure/core-tracing"; +import type { AmqpAnnotatedMessage } from "@azure/core-amqp"; +import type { OperationOptions } from "../util/operationOptions.js"; +import type { MessagingOperationNames } from "./tracing.js"; +import { toSpanOptions, tracingClient } from "./tracing.js"; /** * @internal diff --git a/sdk/eventhub/event-hubs/src/diagnostics/tracing.ts b/sdk/eventhub/event-hubs/src/diagnostics/tracing.ts index 3681fd321436..b91b67088aa4 100644 --- a/sdk/eventhub/event-hubs/src/diagnostics/tracing.ts +++ b/sdk/eventhub/event-hubs/src/diagnostics/tracing.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { createTracingClient, TracingSpanOptions, TracingSpanKind } from "@azure/core-tracing"; -import { EventHubConnectionConfig } from "../eventhubConnectionConfig.js"; +import type { TracingSpanOptions, TracingSpanKind } from "@azure/core-tracing"; +import { createTracingClient } from "@azure/core-tracing"; +import type { EventHubConnectionConfig } from "../eventhubConnectionConfig.js"; import { packageJsonInfo } from "../util/constants.js"; /** diff --git a/sdk/eventhub/event-hubs/src/eventData.ts b/sdk/eventhub/event-hubs/src/eventData.ts index 95f17a691b3a..8aab37fee326 100644 --- a/sdk/eventhub/event-hubs/src/eventData.ts +++ b/sdk/eventhub/event-hubs/src/eventData.ts @@ -2,18 +2,13 @@ // Licensed under the MIT License. import { AmqpAnnotatedMessage, Constants } from "@azure/core-amqp"; -import { BodyTypes, defaultDataTransformer } from "./dataTransformer.js"; -import { - DeliveryAnnotations, - MessageAnnotations, - Message as RheaMessage, - types, -} from "rhea-promise"; +import type { BodyTypes } from "./dataTransformer.js"; +import { defaultDataTransformer } from "./dataTransformer.js"; +import type { DeliveryAnnotations, MessageAnnotations, Message as RheaMessage } from "rhea-promise"; +import { types } from "rhea-promise"; import { isDefined, isObjectWithProperties, objectHasProperty } from "@azure/core-util"; -import { - idempotentProducerAmqpPropertyNames, - PENDING_PUBLISH_SEQ_NUM_SYMBOL, -} from "./util/constants.js"; +import type { PENDING_PUBLISH_SEQ_NUM_SYMBOL } from "./util/constants.js"; +import { idempotentProducerAmqpPropertyNames } from "./util/constants.js"; import isBuffer from "is-buffer"; /** diff --git a/sdk/eventhub/event-hubs/src/eventDataAdapter.ts b/sdk/eventhub/event-hubs/src/eventDataAdapter.ts index 135242ce7682..9e034674f4e3 100644 --- a/sdk/eventhub/event-hubs/src/eventDataAdapter.ts +++ b/sdk/eventhub/event-hubs/src/eventDataAdapter.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { EventData } from "./eventData.js"; +import type { EventData } from "./eventData.js"; /** * A message with payload and content type fields diff --git a/sdk/eventhub/event-hubs/src/eventDataBatch.ts b/sdk/eventhub/event-hubs/src/eventDataBatch.ts index bffb8f210593..fa6817d7b41f 100644 --- a/sdk/eventhub/event-hubs/src/eventDataBatch.ts +++ b/sdk/eventhub/event-hubs/src/eventDataBatch.ts @@ -1,21 +1,22 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AmqpAnnotatedMessage } from "@azure/core-amqp"; +import type { AmqpAnnotatedMessage } from "@azure/core-amqp"; +import type { EventData } from "./eventData.js"; import { assertIsEventData, - EventData, isAmqpAnnotatedMessage, populateIdempotentMessageAnnotations, toRheaMessage, } from "./eventData.js"; -import { ConnectionContext } from "./connectionContext.js"; -import { MessageAnnotations, message, Message as RheaMessage } from "rhea-promise"; +import type { ConnectionContext } from "./connectionContext.js"; +import type { MessageAnnotations, Message as RheaMessage } from "rhea-promise"; +import { message } from "rhea-promise"; import { isDefined, isObjectWithProperties } from "@azure/core-util"; -import { OperationTracingOptions, TracingContext } from "@azure/core-tracing"; +import type { OperationTracingOptions, TracingContext } from "@azure/core-tracing"; import { instrumentEventData } from "./diagnostics/instrumentEventData.js"; import { throwTypeErrorIfParameterMissing } from "./util/error.js"; -import { PartitionPublishingProperties } from "./models/private.js"; +import type { PartitionPublishingProperties } from "./models/private.js"; /** * The amount of bytes to reserve as overhead for a small message. diff --git a/sdk/eventhub/event-hubs/src/eventHubBufferedProducerClient.ts b/sdk/eventhub/event-hubs/src/eventHubBufferedProducerClient.ts index c4946f32f7f0..a3b2cf166984 100644 --- a/sdk/eventhub/event-hubs/src/eventHubBufferedProducerClient.ts +++ b/sdk/eventhub/event-hubs/src/eventHubBufferedProducerClient.ts @@ -1,21 +1,22 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { EventData } from "./eventData.js"; +import type { EventData } from "./eventData.js"; import { EventHubProducerClient } from "./eventHubProducerClient.js"; -import { OperationOptions } from "./util/operationOptions.js"; -import { +import type { OperationOptions } from "./util/operationOptions.js"; +import type { EventHubClientOptions, GetEventHubPropertiesOptions, GetPartitionIdsOptions, GetPartitionPropertiesOptions, SendBatchOptions, } from "./models/public.js"; -import { EventHubProperties, PartitionProperties } from "./managementClient.js"; -import { NamedKeyCredential, SASCredential, TokenCredential } from "@azure/core-auth"; +import type { EventHubProperties, PartitionProperties } from "./managementClient.js"; +import type { NamedKeyCredential, SASCredential, TokenCredential } from "@azure/core-auth"; import { isDefined } from "@azure/core-util"; import { isCredential } from "./util/typeGuards.js"; -import { AmqpAnnotatedMessage, delay } from "@azure/core-amqp"; +import type { AmqpAnnotatedMessage } from "@azure/core-amqp"; +import { delay } from "@azure/core-amqp"; import { BatchingPartitionChannel } from "./batchingPartitionChannel.js"; import { PartitionAssigner } from "./impl/partitionAssigner.js"; import { logger } from "./logger.js"; diff --git a/sdk/eventhub/event-hubs/src/eventHubConsumerClient.ts b/sdk/eventhub/event-hubs/src/eventHubConsumerClient.ts index bb88fc998463..3ca56fa68faa 100644 --- a/sdk/eventhub/event-hubs/src/eventHubConsumerClient.ts +++ b/sdk/eventhub/event-hubs/src/eventHubConsumerClient.ts @@ -1,18 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CheckpointStore, EventProcessor, FullEventProcessorOptions } from "./eventProcessor.js"; -import { ConnectionContext, createConnectionContext } from "./connectionContext.js"; -import { +import type { CheckpointStore, FullEventProcessorOptions } from "./eventProcessor.js"; +import { EventProcessor } from "./eventProcessor.js"; +import type { ConnectionContext } from "./connectionContext.js"; +import { createConnectionContext } from "./connectionContext.js"; +import type { EventHubConsumerClientOptions, GetEventHubPropertiesOptions, GetPartitionIdsOptions, GetPartitionPropertiesOptions, LoadBalancingOptions, } from "./models/public.js"; -import { EventHubProperties, PartitionProperties } from "./managementClient.js"; -import { NamedKeyCredential, SASCredential, TokenCredential } from "@azure/core-auth"; -import { +import type { EventHubProperties, PartitionProperties } from "./managementClient.js"; +import type { NamedKeyCredential, SASCredential, TokenCredential } from "@azure/core-auth"; +import type { SubscribeOptions, Subscription, SubscriptionEventHandlers, @@ -21,7 +23,7 @@ import { BalancedLoadBalancingStrategy } from "./loadBalancerStrategies/balanced import { Constants } from "@azure/core-amqp"; import { GreedyLoadBalancingStrategy } from "./loadBalancerStrategies/greedyStrategy.js"; import { InMemoryCheckpointStore } from "./inMemoryCheckpointStore.js"; -import { LoadBalancingStrategy } from "./loadBalancerStrategies/loadBalancingStrategy.js"; +import type { LoadBalancingStrategy } from "./loadBalancerStrategies/loadBalancingStrategy.js"; import { PartitionGate } from "./impl/partitionGate.js"; import { UnbalancedLoadBalancingStrategy } from "./loadBalancerStrategies/unbalancedStrategy.js"; import { isCredential } from "./util/typeGuards.js"; diff --git a/sdk/eventhub/event-hubs/src/eventHubConsumerClientModels.ts b/sdk/eventhub/event-hubs/src/eventHubConsumerClientModels.ts index df7ce8735902..911d4b56fe63 100644 --- a/sdk/eventhub/event-hubs/src/eventHubConsumerClientModels.ts +++ b/sdk/eventhub/event-hubs/src/eventHubConsumerClientModels.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CloseReason } from "./models/public.js"; -import { EventPosition } from "./eventPosition.js"; -import { LastEnqueuedEventProperties } from "./partitionReceiver.js"; -import { MessagingError } from "@azure/core-amqp"; -import { OperationTracingOptions } from "@azure/core-tracing"; -import { ReceivedEventData } from "./eventData.js"; +import type { CloseReason } from "./models/public.js"; +import type { EventPosition } from "./eventPosition.js"; +import type { LastEnqueuedEventProperties } from "./partitionReceiver.js"; +import type { MessagingError } from "@azure/core-amqp"; +import type { OperationTracingOptions } from "@azure/core-tracing"; +import type { ReceivedEventData } from "./eventData.js"; /** * @internal diff --git a/sdk/eventhub/event-hubs/src/eventHubProducerClient.ts b/sdk/eventhub/event-hubs/src/eventHubProducerClient.ts index 19e058a74e13..288bdb7ee7fa 100644 --- a/sdk/eventhub/event-hubs/src/eventHubProducerClient.ts +++ b/sdk/eventhub/event-hubs/src/eventHubProducerClient.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ConnectionContext, createConnectionContext } from "./connectionContext.js"; -import { +import type { ConnectionContext } from "./connectionContext.js"; +import { createConnectionContext } from "./connectionContext.js"; +import type { CreateBatchOptions, EventHubClientOptions, GetEventHubPropertiesOptions, @@ -10,11 +11,15 @@ import { GetPartitionPropertiesOptions, SendBatchOptions, } from "./models/public.js"; -import { PartitionPublishingOptions, PartitionPublishingProperties } from "./models/private.js"; -import { EventDataBatch, EventDataBatchImpl, isEventDataBatch } from "./eventDataBatch.js"; -import { EventHubProperties, PartitionProperties } from "./managementClient.js"; -import { TracingContext, TracingSpanLink } from "@azure/core-tracing"; -import { NamedKeyCredential, SASCredential, TokenCredential } from "@azure/core-auth"; +import type { + PartitionPublishingOptions, + PartitionPublishingProperties, +} from "./models/private.js"; +import type { EventDataBatch } from "./eventDataBatch.js"; +import { EventDataBatchImpl, isEventDataBatch } from "./eventDataBatch.js"; +import type { EventHubProperties, PartitionProperties } from "./managementClient.js"; +import type { TracingContext, TracingSpanLink } from "@azure/core-tracing"; +import type { NamedKeyCredential, SASCredential, TokenCredential } from "@azure/core-auth"; import { isDefined } from "@azure/core-util"; import { isCredential } from "./util/typeGuards.js"; import { logErrorStackTrace, logger } from "./logger.js"; @@ -25,10 +30,11 @@ import { throwTypeErrorIfParameterMissing, validateProducerPartitionSettings, } from "./util/error.js"; -import { AmqpAnnotatedMessage } from "@azure/core-amqp"; -import { assertIsEventData, EventData, EventDataInternal } from "./eventData.js"; +import type { AmqpAnnotatedMessage } from "@azure/core-amqp"; +import type { EventData, EventDataInternal } from "./eventData.js"; +import { assertIsEventData } from "./eventData.js"; import { EventHubSender } from "./eventHubSender.js"; -import { OperationOptions } from "./util/operationOptions.js"; +import type { OperationOptions } from "./util/operationOptions.js"; import { toSpanOptions, tracingClient } from "./diagnostics/tracing.js"; import { instrumentEventData } from "./diagnostics/instrumentEventData.js"; import { getRandomName } from "./util/utils.js"; diff --git a/sdk/eventhub/event-hubs/src/eventHubSender.ts b/sdk/eventhub/event-hubs/src/eventHubSender.ts index 172e154b76e6..3b72bd4c3893 100644 --- a/sdk/eventhub/event-hubs/src/eventHubSender.ts +++ b/sdk/eventhub/event-hubs/src/eventHubSender.ts @@ -1,45 +1,38 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AmqpError, AwaitableSender, AwaitableSenderOptions, EventContext, OnAmqpEvent, Message as RheaMessage, - message, - types, } from "rhea-promise"; +import { message, types } from "rhea-promise"; +import type { RetryConfig, RetryOptions } from "@azure/core-amqp"; import { ErrorNameConditionMapper, - RetryConfig, RetryOperationType, - RetryOptions, defaultCancellableLock, delay, retry, translate, } from "@azure/core-amqp"; -import { - EventData, - EventDataInternal, - populateIdempotentMessageAnnotations, - toRheaMessage, -} from "./eventData.js"; -import { EventDataBatch, EventDataBatchImpl, isEventDataBatch } from "./eventDataBatch.js"; -import { - logErrorStackTrace, - createSimpleLogger, - logger, - SimpleLogger, - createSenderLogPrefix, -} from "./logger.js"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { ConnectionContext } from "./connectionContext.js"; -import { EventHubProducerOptions, IdempotentLinkProperties } from "./models/private.js"; -import { SendOptions } from "./models/public.js"; -import { PartitionPublishingOptions, PartitionPublishingProperties } from "./models/private.js"; +import type { EventData, EventDataInternal } from "./eventData.js"; +import { populateIdempotentMessageAnnotations, toRheaMessage } from "./eventData.js"; +import type { EventDataBatch, EventDataBatchImpl } from "./eventDataBatch.js"; +import { isEventDataBatch } from "./eventDataBatch.js"; +import type { SimpleLogger } from "./logger.js"; +import { logErrorStackTrace, createSimpleLogger, logger, createSenderLogPrefix } from "./logger.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { ConnectionContext } from "./connectionContext.js"; +import type { EventHubProducerOptions, IdempotentLinkProperties } from "./models/private.js"; +import type { SendOptions } from "./models/public.js"; +import type { + PartitionPublishingOptions, + PartitionPublishingProperties, +} from "./models/private.js"; import { getRetryAttemptTimeoutInMs } from "./util/retries.js"; import { idempotentProducerAmqpPropertyNames, @@ -48,7 +41,7 @@ import { } from "./util/constants.js"; import { isDefined } from "@azure/core-util"; import { translateError } from "./util/error.js"; -import { TimerLoop } from "./util/timerLoop.js"; +import type { TimerLoop } from "./util/timerLoop.js"; import { withAuth } from "./withAuth.js"; import { getRandomName } from "./util/utils.js"; diff --git a/sdk/eventhub/event-hubs/src/eventProcessor.ts b/sdk/eventhub/event-hubs/src/eventProcessor.ts index 7d840e784947..b2a537cb4e58 100644 --- a/sdk/eventhub/event-hubs/src/eventProcessor.ts +++ b/sdk/eventhub/event-hubs/src/eventProcessor.ts @@ -1,17 +1,21 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; -import { Checkpoint, PartitionProcessor } from "./partitionProcessor.js"; -import { EventPosition, isEventPosition, latestEventPosition } from "./eventPosition.js"; -import { PumpManager, PumpManagerImpl } from "./pumpManager.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; +import type { Checkpoint } from "./partitionProcessor.js"; +import { PartitionProcessor } from "./partitionProcessor.js"; +import type { EventPosition } from "./eventPosition.js"; +import { isEventPosition, latestEventPosition } from "./eventPosition.js"; +import type { PumpManager } from "./pumpManager.js"; +import { PumpManagerImpl } from "./pumpManager.js"; import { logErrorStackTrace, logger } from "./logger.js"; import { CloseReason } from "./models/public.js"; -import { CommonEventProcessorOptions } from "./models/private.js"; -import { ConnectionContext } from "./connectionContext.js"; -import { LoadBalancingStrategy } from "./loadBalancerStrategies/loadBalancingStrategy.js"; -import { OperationOptions } from "./util/operationOptions.js"; -import { SubscriptionEventHandlers } from "./eventHubConsumerClientModels.js"; +import type { CommonEventProcessorOptions } from "./models/private.js"; +import type { ConnectionContext } from "./connectionContext.js"; +import type { LoadBalancingStrategy } from "./loadBalancerStrategies/loadBalancingStrategy.js"; +import type { OperationOptions } from "./util/operationOptions.js"; +import type { SubscriptionEventHandlers } from "./eventHubConsumerClientModels.js"; import { delayWithoutThrow } from "./util/delayWithoutThrow.js"; import { getRandomName } from "./util/utils.js"; import { StandardAbortMessage } from "@azure/core-amqp"; diff --git a/sdk/eventhub/event-hubs/src/impl/awaitableQueue.ts b/sdk/eventhub/event-hubs/src/impl/awaitableQueue.ts index a2d646780849..ad5ef184b3dd 100644 --- a/sdk/eventhub/event-hubs/src/impl/awaitableQueue.ts +++ b/sdk/eventhub/event-hubs/src/impl/awaitableQueue.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortOptions, createAbortablePromise } from "@azure/core-util"; +import type { AbortOptions } from "@azure/core-util"; +import { createAbortablePromise } from "@azure/core-util"; /** * `AwaitableQueue` stores items in the order that they are received. diff --git a/sdk/eventhub/event-hubs/src/inMemoryCheckpointStore.ts b/sdk/eventhub/event-hubs/src/inMemoryCheckpointStore.ts index df7d48bd82c6..08185f8ce776 100644 --- a/sdk/eventhub/event-hubs/src/inMemoryCheckpointStore.ts +++ b/sdk/eventhub/event-hubs/src/inMemoryCheckpointStore.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CheckpointStore, PartitionOwnership } from "./eventProcessor.js"; -import { Checkpoint } from "./partitionProcessor.js"; +import type { CheckpointStore, PartitionOwnership } from "./eventProcessor.js"; +import type { Checkpoint } from "./partitionProcessor.js"; import { throwTypeErrorIfParameterMissing } from "./util/error.js"; import { getRandomName } from "./util/utils.js"; diff --git a/sdk/eventhub/event-hubs/src/loadBalancerStrategies/balancedStrategy.ts b/sdk/eventhub/event-hubs/src/loadBalancerStrategies/balancedStrategy.ts index 284a4e61cdac..e4e94fde9589 100644 --- a/sdk/eventhub/event-hubs/src/loadBalancerStrategies/balancedStrategy.ts +++ b/sdk/eventhub/event-hubs/src/loadBalancerStrategies/balancedStrategy.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { LoadBalancingStrategy, listAvailablePartitions } from "./loadBalancingStrategy.js"; -import { PartitionOwnership } from "../eventProcessor.js"; +import type { LoadBalancingStrategy } from "./loadBalancingStrategy.js"; +import { listAvailablePartitions } from "./loadBalancingStrategy.js"; +import type { PartitionOwnership } from "../eventProcessor.js"; /** * The BalancedLoadBalancerStrategy is meant to be used when the user diff --git a/sdk/eventhub/event-hubs/src/loadBalancerStrategies/greedyStrategy.ts b/sdk/eventhub/event-hubs/src/loadBalancerStrategies/greedyStrategy.ts index 49574fb77768..575102a30992 100644 --- a/sdk/eventhub/event-hubs/src/loadBalancerStrategies/greedyStrategy.ts +++ b/sdk/eventhub/event-hubs/src/loadBalancerStrategies/greedyStrategy.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { LoadBalancingStrategy, listAvailablePartitions } from "./loadBalancingStrategy.js"; -import { PartitionOwnership } from "../eventProcessor.js"; +import type { LoadBalancingStrategy } from "./loadBalancingStrategy.js"; +import { listAvailablePartitions } from "./loadBalancingStrategy.js"; +import type { PartitionOwnership } from "../eventProcessor.js"; /** * @internal diff --git a/sdk/eventhub/event-hubs/src/loadBalancerStrategies/loadBalancingStrategy.ts b/sdk/eventhub/event-hubs/src/loadBalancerStrategies/loadBalancingStrategy.ts index d27acd86e5d3..85349c32bb8c 100644 --- a/sdk/eventhub/event-hubs/src/loadBalancerStrategies/loadBalancingStrategy.ts +++ b/sdk/eventhub/event-hubs/src/loadBalancerStrategies/loadBalancingStrategy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PartitionOwnership } from "../eventProcessor.js"; +import type { PartitionOwnership } from "../eventProcessor.js"; import { logger } from "../logger.js"; /** diff --git a/sdk/eventhub/event-hubs/src/loadBalancerStrategies/unbalancedStrategy.ts b/sdk/eventhub/event-hubs/src/loadBalancerStrategies/unbalancedStrategy.ts index 4d5577050003..d11f164a966c 100644 --- a/sdk/eventhub/event-hubs/src/loadBalancerStrategies/unbalancedStrategy.ts +++ b/sdk/eventhub/event-hubs/src/loadBalancerStrategies/unbalancedStrategy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { LoadBalancingStrategy } from "./loadBalancingStrategy.js"; -import { PartitionOwnership } from "../eventProcessor.js"; +import type { LoadBalancingStrategy } from "./loadBalancingStrategy.js"; +import type { PartitionOwnership } from "../eventProcessor.js"; /** * The UnbalancedLoadBalancingStrategy does no actual load balancing. diff --git a/sdk/eventhub/event-hubs/src/logger.ts b/sdk/eventhub/event-hubs/src/logger.ts index a2c19838e2b5..5bbd42d55738 100644 --- a/sdk/eventhub/event-hubs/src/logger.ts +++ b/sdk/eventhub/event-hubs/src/logger.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureLogger, AzureLogLevel, createClientLogger, Debugger } from "@azure/logger"; +import type { AzureLogger, AzureLogLevel, Debugger } from "@azure/logger"; +import { createClientLogger } from "@azure/logger"; import { isObjectWithProperties } from "@azure/core-util"; /** diff --git a/sdk/eventhub/event-hubs/src/managementClient.ts b/sdk/eventhub/event-hubs/src/managementClient.ts index 8f051ea26999..0b4c4d942461 100644 --- a/sdk/eventhub/event-hubs/src/managementClient.ts +++ b/sdk/eventhub/event-hubs/src/managementClient.ts @@ -1,41 +1,33 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { RetryConfig, RetryOptions, SendRequestOptions } from "@azure/core-amqp"; import { Constants, RequestResponseLink, - RetryConfig, RetryOperationType, - RetryOptions, - SendRequestOptions, defaultCancellableLock, isSasTokenProvider, retry, translate, } from "@azure/core-amqp"; -import { - EventContext, - Message, - ReceiverEvents, - ReceiverOptions, - SenderEvents, - SenderOptions, -} from "rhea-promise"; +import type { EventContext, Message, ReceiverOptions, SenderOptions } from "rhea-promise"; +import { ReceiverEvents, SenderEvents } from "rhea-promise"; +import type { SimpleLogger } from "./logger.js"; import { logErrorStackTrace, createSimpleLogger, logger, - SimpleLogger, createManagementLogPrefix, } from "./logger.js"; import { throwErrorIfConnectionClosed, throwTypeErrorIfParameterMissing } from "./util/error.js"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { AccessToken } from "@azure/core-auth"; -import { ConnectionContext } from "./connectionContext.js"; -import { OperationOptions } from "./util/operationOptions.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { AccessToken } from "@azure/core-auth"; +import type { ConnectionContext } from "./connectionContext.js"; +import type { OperationOptions } from "./util/operationOptions.js"; import { toSpanOptions, tracingClient } from "./diagnostics/tracing.js"; import { getRetryAttemptTimeoutInMs } from "./util/retries.js"; -import { TimerLoop } from "./util/timerLoop.js"; +import type { TimerLoop } from "./util/timerLoop.js"; import { withAuth } from "./withAuth.js"; import { getRandomName } from "./util/utils.js"; diff --git a/sdk/eventhub/event-hubs/src/models/private.ts b/sdk/eventhub/event-hubs/src/models/private.ts index 97b6261a0e35..55667871e230 100644 --- a/sdk/eventhub/event-hubs/src/models/private.ts +++ b/sdk/eventhub/event-hubs/src/models/private.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { LoadBalancingStrategy } from "../loadBalancerStrategies/loadBalancingStrategy.js"; -import { RetryOptions } from "@azure/core-amqp"; -import { Typed } from "rhea-promise"; -import { SubscribeOptions } from "../eventHubConsumerClientModels.js"; -import { idempotentProducerAmqpPropertyNames } from "../util/constants.js"; +import type { LoadBalancingStrategy } from "../loadBalancerStrategies/loadBalancingStrategy.js"; +import type { RetryOptions } from "@azure/core-amqp"; +import type { Typed } from "rhea-promise"; +import type { SubscribeOptions } from "../eventHubConsumerClientModels.js"; +import type { idempotentProducerAmqpPropertyNames } from "../util/constants.js"; /** * The set of options to configure the behavior of an `EventHubProducer`. diff --git a/sdk/eventhub/event-hubs/src/models/public.ts b/sdk/eventhub/event-hubs/src/models/public.ts index d25dc7c9b528..8493ec724aa1 100644 --- a/sdk/eventhub/event-hubs/src/models/public.ts +++ b/sdk/eventhub/event-hubs/src/models/public.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RetryOptions, WebSocketOptions } from "@azure/core-amqp"; -import { OperationOptions } from "../util/operationOptions.js"; +import type { RetryOptions, WebSocketOptions } from "@azure/core-amqp"; +import type { OperationOptions } from "../util/operationOptions.js"; /** * The set of options to configure the behavior of `getEventHubProperties`. diff --git a/sdk/eventhub/event-hubs/src/partitionProcessor.ts b/sdk/eventhub/event-hubs/src/partitionProcessor.ts index 47afe4c9d925..57894752a1fa 100644 --- a/sdk/eventhub/event-hubs/src/partitionProcessor.ts +++ b/sdk/eventhub/event-hubs/src/partitionProcessor.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { BasicPartitionProperties, PartitionContext, SubscriptionEventHandlers, } from "./eventHubConsumerClientModels.js"; -import { CheckpointStore } from "./eventProcessor.js"; -import { CloseReason } from "./models/public.js"; -import { LastEnqueuedEventProperties } from "./partitionReceiver.js"; -import { ReceivedEventData } from "./eventData.js"; +import type { CheckpointStore } from "./eventProcessor.js"; +import type { CloseReason } from "./models/public.js"; +import type { LastEnqueuedEventProperties } from "./partitionReceiver.js"; +import type { ReceivedEventData } from "./eventData.js"; import { logger } from "./logger.js"; /** diff --git a/sdk/eventhub/event-hubs/src/partitionPump.ts b/sdk/eventhub/event-hubs/src/partitionPump.ts index 23b31b4f31c4..06f87355e8fd 100644 --- a/sdk/eventhub/event-hubs/src/partitionPump.ts +++ b/sdk/eventhub/event-hubs/src/partitionPump.ts @@ -1,17 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TracingSpanOptions, TracingSpanLink } from "@azure/core-tracing"; +import type { TracingSpanOptions, TracingSpanLink } from "@azure/core-tracing"; import { logErrorStackTrace, logger } from "./logger.js"; import { CloseReason } from "./models/public.js"; -import { CommonEventProcessorOptions } from "./models/private.js"; -import { ConnectionContext } from "./connectionContext.js"; -import { EventHubConnectionConfig } from "./eventhubConnectionConfig.js"; -import { createReceiver, PartitionReceiver } from "./partitionReceiver.js"; -import { EventPosition } from "./eventPosition.js"; -import { MessagingError } from "@azure/core-amqp"; -import { PartitionProcessor } from "./partitionProcessor.js"; -import { ReceivedEventData } from "./eventData.js"; +import type { CommonEventProcessorOptions } from "./models/private.js"; +import type { ConnectionContext } from "./connectionContext.js"; +import type { EventHubConnectionConfig } from "./eventhubConnectionConfig.js"; +import type { PartitionReceiver } from "./partitionReceiver.js"; +import { createReceiver } from "./partitionReceiver.js"; +import type { EventPosition } from "./eventPosition.js"; +import type { MessagingError } from "@azure/core-amqp"; +import type { PartitionProcessor } from "./partitionProcessor.js"; +import type { ReceivedEventData } from "./eventData.js"; import { toSpanOptions, tracingClient } from "./diagnostics/tracing.js"; import { extractSpanContextFromEventData } from "./diagnostics/instrumentEventData.js"; diff --git a/sdk/eventhub/event-hubs/src/partitionReceiver.ts b/sdk/eventhub/event-hubs/src/partitionReceiver.ts index 0df1c835f81b..c59304ef9fe3 100644 --- a/sdk/eventhub/event-hubs/src/partitionReceiver.ts +++ b/sdk/eventhub/event-hubs/src/partitionReceiver.ts @@ -1,38 +1,40 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; +import type { MessagingError, RetryConfig } from "@azure/core-amqp"; import { Constants, - MessagingError, RetryOperationType, StandardAbortMessage, retry, translate, - RetryConfig, } from "@azure/core-amqp"; -import { +import type { EventContext, Receiver as Link, ReceiverOptions as RheaReceiverOptions, Source, - types, } from "rhea-promise"; -import { EventDataInternal, ReceivedEventData, fromRheaMessage } from "./eventData.js"; -import { EventPosition, getEventPositionFilter } from "./eventPosition.js"; +import { types } from "rhea-promise"; +import type { EventDataInternal, ReceivedEventData } from "./eventData.js"; +import { fromRheaMessage } from "./eventData.js"; +import type { EventPosition } from "./eventPosition.js"; +import { getEventPositionFilter } from "./eventPosition.js"; +import type { SimpleLogger } from "./logger.js"; import { createSimpleLogger, logErrorStackTrace, logObj, logger as azureLogger, - SimpleLogger, createReceiverLogPrefix, } from "./logger.js"; -import { ConnectionContext } from "./connectionContext.js"; -import { PartitionReceiverOptions } from "./models/private.js"; +import type { ConnectionContext } from "./connectionContext.js"; +import type { PartitionReceiverOptions } from "./models/private.js"; import { getRetryAttemptTimeoutInMs } from "./util/retries.js"; import { createAbortablePromise } from "@azure/core-util"; -import { TimerLoop } from "./util/timerLoop.js"; +import type { TimerLoop } from "./util/timerLoop.js"; import { getRandomName } from "./util/utils.js"; import { withAuth } from "./withAuth.js"; import { geoReplication, receiverIdPropertyName } from "./util/constants.js"; diff --git a/sdk/eventhub/event-hubs/src/pumpManager.ts b/sdk/eventhub/event-hubs/src/pumpManager.ts index d92f19ab1fd5..9a92f342fa61 100644 --- a/sdk/eventhub/event-hubs/src/pumpManager.ts +++ b/sdk/eventhub/event-hubs/src/pumpManager.ts @@ -2,12 +2,12 @@ // Licensed under the MIT License. import { logErrorStackTrace, logger } from "./logger.js"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { CloseReason } from "./models/public.js"; -import { CommonEventProcessorOptions } from "./models/private.js"; -import { ConnectionContext } from "./connectionContext.js"; -import { EventPosition } from "./eventPosition.js"; -import { PartitionProcessor } from "./partitionProcessor.js"; +import type { CommonEventProcessorOptions } from "./models/private.js"; +import type { ConnectionContext } from "./connectionContext.js"; +import type { EventPosition } from "./eventPosition.js"; +import type { PartitionProcessor } from "./partitionProcessor.js"; import { PartitionPump } from "./partitionPump.js"; /** diff --git a/sdk/eventhub/event-hubs/src/util/delayWithoutThrow.ts b/sdk/eventhub/event-hubs/src/util/delayWithoutThrow.ts index 3881784eadaf..e0ad42bac1c4 100644 --- a/sdk/eventhub/event-hubs/src/util/delayWithoutThrow.ts +++ b/sdk/eventhub/event-hubs/src/util/delayWithoutThrow.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { delay } from "@azure/core-amqp"; /** diff --git a/sdk/eventhub/event-hubs/src/util/error.ts b/sdk/eventhub/event-hubs/src/util/error.ts index de9847d3df0a..6d33ac4ea6d9 100644 --- a/sdk/eventhub/event-hubs/src/util/error.ts +++ b/sdk/eventhub/event-hubs/src/util/error.ts @@ -2,10 +2,12 @@ // Licensed under the MIT License. import { logErrorStackTrace, logger } from "../logger.js"; -import { ConnectionContext } from "../connectionContext.js"; +import type { ConnectionContext } from "../connectionContext.js"; import { isDefined } from "@azure/core-util"; -import { AmqpError, isAmqpError } from "rhea-promise"; -import { isMessagingError, MessagingError, translate } from "@azure/core-amqp"; +import type { AmqpError } from "rhea-promise"; +import { isAmqpError } from "rhea-promise"; +import type { MessagingError } from "@azure/core-amqp"; +import { isMessagingError, translate } from "@azure/core-amqp"; /** * @internal diff --git a/sdk/eventhub/event-hubs/src/util/operationOptions.ts b/sdk/eventhub/event-hubs/src/util/operationOptions.ts index 1e36cba60959..c82d08af936d 100644 --- a/sdk/eventhub/event-hubs/src/util/operationOptions.ts +++ b/sdk/eventhub/event-hubs/src/util/operationOptions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { OperationTracingOptions } from "@azure/core-tracing"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { OperationTracingOptions } from "@azure/core-tracing"; /** * Options for configuring tracing and the abortSignal. diff --git a/sdk/eventhub/event-hubs/src/util/retries.ts b/sdk/eventhub/event-hubs/src/util/retries.ts index fd548f6e2280..a1008583c35d 100644 --- a/sdk/eventhub/event-hubs/src/util/retries.ts +++ b/sdk/eventhub/event-hubs/src/util/retries.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Constants, RetryOptions } from "@azure/core-amqp"; +import type { RetryOptions } from "@azure/core-amqp"; +import { Constants } from "@azure/core-amqp"; /** * @internal diff --git a/sdk/eventhub/event-hubs/src/util/typeGuards.ts b/sdk/eventhub/event-hubs/src/util/typeGuards.ts index 306a5917a639..071bc6b40dc7 100644 --- a/sdk/eventhub/event-hubs/src/util/typeGuards.ts +++ b/sdk/eventhub/event-hubs/src/util/typeGuards.ts @@ -1,14 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - NamedKeyCredential, - SASCredential, - TokenCredential, - isNamedKeyCredential, - isSASCredential, - isTokenCredential, -} from "@azure/core-auth"; +import type { NamedKeyCredential, SASCredential, TokenCredential } from "@azure/core-auth"; +import { isNamedKeyCredential, isSASCredential, isTokenCredential } from "@azure/core-auth"; /** * Typeguard that checks if the input is a credential type the clients accept. diff --git a/sdk/eventhub/event-hubs/src/withAuth.ts b/sdk/eventhub/event-hubs/src/withAuth.ts index 66afe5259bd5..578fe09e0f45 100644 --- a/sdk/eventhub/event-hubs/src/withAuth.ts +++ b/sdk/eventhub/event-hubs/src/withAuth.ts @@ -1,20 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - Constants, - TokenType, - defaultCancellableLock, - isSasTokenProvider, - SasTokenProvider, - CbsClient, - CbsResponse, -} from "@azure/core-amqp"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { AccessToken, TokenCredential } from "@azure/core-auth"; -import { ConnectionContext } from "./connectionContext.js"; -import { createTimerLoop, TimerLoop } from "./util/timerLoop.js"; -import { SimpleLogger, logObj } from "./logger.js"; +import type { SasTokenProvider, CbsClient, CbsResponse } from "@azure/core-amqp"; +import { Constants, TokenType, defaultCancellableLock, isSasTokenProvider } from "@azure/core-amqp"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { ConnectionContext } from "./connectionContext.js"; +import type { TimerLoop } from "./util/timerLoop.js"; +import { createTimerLoop } from "./util/timerLoop.js"; +import type { SimpleLogger } from "./logger.js"; +import { logObj } from "./logger.js"; /** * diff --git a/sdk/eventhub/event-hubs/test/internal/cancellation.spec.ts b/sdk/eventhub/event-hubs/test/internal/cancellation.spec.ts index d070bca62b2e..12dc6973ca3d 100644 --- a/sdk/eventhub/event-hubs/test/internal/cancellation.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/cancellation.spec.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { createReceiver, PartitionReceiver } from "../../src/partitionReceiver.js"; +import type { PartitionReceiver } from "../../src/partitionReceiver.js"; +import { createReceiver } from "../../src/partitionReceiver.js"; import { EventHubSender } from "../../src/eventHubSender.js"; -import { ConnectionContext } from "../../src/connectionContext.js"; +import type { ConnectionContext } from "../../src/connectionContext.js"; import { createContext } from "../utils/clients.js"; import { expect } from "../utils/chai.js"; import { describe, it, beforeEach, afterEach } from "vitest"; diff --git a/sdk/eventhub/event-hubs/test/internal/cbsSession.spec.ts b/sdk/eventhub/event-hubs/test/internal/cbsSession.spec.ts index 19571170bcda..b8cee5163de4 100644 --- a/sdk/eventhub/event-hubs/test/internal/cbsSession.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/cbsSession.spec.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ConnectionContext } from "../../src/connectionContext.js"; +import type { ConnectionContext } from "../../src/connectionContext.js"; import { openCbsSession } from "../../src/withAuth.js"; -import { CbsClient, StandardAbortMessage } from "@azure/core-amqp"; +import type { CbsClient } from "@azure/core-amqp"; +import { StandardAbortMessage } from "@azure/core-amqp"; import { describe, it, beforeEach, afterEach } from "vitest"; import { createContext } from "../utils/clients.js"; import { assert } from "../utils/chai.js"; diff --git a/sdk/eventhub/event-hubs/test/internal/eventHubConsumerClientUnitTests.spec.ts b/sdk/eventhub/event-hubs/test/internal/eventHubConsumerClientUnitTests.spec.ts index e4aae7b4e803..40a158fa8e30 100644 --- a/sdk/eventhub/event-hubs/test/internal/eventHubConsumerClientUnitTests.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/eventHubConsumerClientUnitTests.spec.ts @@ -1,15 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CheckpointStore, SubscriptionEventHandlers } from "../../src/index.js"; -import { EventHubConsumerClient, isCheckpointStore } from "../../src/eventHubConsumerClient.js"; -import { EventProcessor, FullEventProcessorOptions } from "../../src/eventProcessor.js"; -import { BalancedLoadBalancingStrategy } from "../../src/loadBalancerStrategies/balancedStrategy.js"; -import { ConnectionContext } from "../../src/connectionContext.js"; -import { GreedyLoadBalancingStrategy } from "../../src/loadBalancerStrategies/greedyStrategy.js"; +import type { CheckpointStore, SubscriptionEventHandlers } from "../../src/index.js"; +import type { EventHubConsumerClient } from "../../src/eventHubConsumerClient.js"; +import { isCheckpointStore } from "../../src/eventHubConsumerClient.js"; +import type { EventProcessor, FullEventProcessorOptions } from "../../src/eventProcessor.js"; +import type { BalancedLoadBalancingStrategy } from "../../src/loadBalancerStrategies/balancedStrategy.js"; +import type { ConnectionContext } from "../../src/connectionContext.js"; +import type { GreedyLoadBalancingStrategy } from "../../src/loadBalancerStrategies/greedyStrategy.js"; import { InMemoryCheckpointStore } from "../../src/inMemoryCheckpointStore.js"; import { should, expect } from "../utils/chai.js"; -import { describe, it, beforeEach, vi, MockInstance, afterEach } from "vitest"; +import type { MockInstance } from "vitest"; +import { describe, it, beforeEach, vi, afterEach } from "vitest"; import { createConsumer } from "../utils/clients.js"; import { PartitionGate } from "../../src/impl/partitionGate.js"; diff --git a/sdk/eventhub/event-hubs/test/internal/eventProcessor.spec.ts b/sdk/eventhub/event-hubs/test/internal/eventProcessor.spec.ts index e2bc9280ff03..72cac4f130df 100644 --- a/sdk/eventhub/event-hubs/test/internal/eventProcessor.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/eventProcessor.spec.ts @@ -1,33 +1,32 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CheckpointStore, - CloseReason, EventData, EventHubConsumerClient, EventHubProducerClient, PartitionOwnership, ReceivedEventData, SubscriptionEventHandlers, - earliestEventPosition, - latestEventPosition, } from "../../src/index.js"; -import { Dictionary } from "rhea-promise"; +import { CloseReason, earliestEventPosition, latestEventPosition } from "../../src/index.js"; +import type { Dictionary } from "rhea-promise"; import { loopUntil } from "../utils/testUtils.js"; -import { EventProcessor, FullEventProcessorOptions } from "../../src/eventProcessor.js"; +import type { EventProcessor, FullEventProcessorOptions } from "../../src/eventProcessor.js"; import { SubscriptionHandlerForTests, sendOneMessagePerPartition, } from "../utils/subscriptionHandlerForTests.js"; import { BalancedLoadBalancingStrategy } from "../../src/loadBalancerStrategies/balancedStrategy.js"; -import { Checkpoint } from "../../src/partitionProcessor.js"; +import type { Checkpoint } from "../../src/partitionProcessor.js"; import { FakeSubscriptionEventHandlers } from "../utils/fakeSubscriptionEventHandlers.js"; import { GreedyLoadBalancingStrategy } from "../../src/loadBalancerStrategies/greedyStrategy.js"; import { InMemoryCheckpointStore } from "../../src/inMemoryCheckpointStore.js"; -import { PartitionContext } from "../../src/eventHubConsumerClientModels.js"; +import type { PartitionContext } from "../../src/eventHubConsumerClientModels.js"; import debugModule from "debug"; -import { delay, MessagingError } from "@azure/core-amqp"; +import type { MessagingError } from "@azure/core-amqp"; +import { delay } from "@azure/core-amqp"; import { isLatestPosition } from "../../src/eventPosition.js"; import { loggerForTest } from "../utils/logHelpers.js"; import { getRandomName } from "../../src/util/utils.js"; diff --git a/sdk/eventhub/event-hubs/test/internal/eventdata.spec.ts b/sdk/eventhub/event-hubs/test/internal/eventdata.spec.ts index decb6a1c82d1..2c21a283805d 100644 --- a/sdk/eventhub/event-hubs/test/internal/eventdata.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/eventdata.spec.ts @@ -1,20 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - EventData, - ReceivedEventData, - fromRheaMessage, - toRheaMessage, -} from "../../src/eventData.js"; +import type { EventData, ReceivedEventData } from "../../src/eventData.js"; +import { fromRheaMessage, toRheaMessage } from "../../src/eventData.js"; import { assert, should } from "../utils/chai.js"; import { dataSectionTypeCode, sequenceSectionTypeCode, valueSectionTypeCode, } from "../../src/dataTransformer.js"; -import { AmqpAnnotatedMessage } from "@azure/core-amqp"; -import { Message } from "rhea-promise"; +import type { AmqpAnnotatedMessage } from "@azure/core-amqp"; +import type { Message } from "rhea-promise"; import { describe, it } from "vitest"; const testAnnotations = { diff --git a/sdk/eventhub/event-hubs/test/internal/loadBalancingStrategy.spec.ts b/sdk/eventhub/event-hubs/test/internal/loadBalancingStrategy.spec.ts index d869ad8710fe..e0d2fb95fee4 100644 --- a/sdk/eventhub/event-hubs/test/internal/loadBalancingStrategy.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/loadBalancingStrategy.spec.ts @@ -3,7 +3,7 @@ import { BalancedLoadBalancingStrategy } from "../../src/loadBalancerStrategies/balancedStrategy.js"; import { GreedyLoadBalancingStrategy } from "../../src/loadBalancerStrategies/greedyStrategy.js"; -import { PartitionOwnership } from "../../src/index.js"; +import type { PartitionOwnership } from "../../src/index.js"; import { UnbalancedLoadBalancingStrategy } from "../../src/loadBalancerStrategies/unbalancedStrategy.js"; import { should } from "../utils/chai.js"; import { describe, it } from "vitest"; diff --git a/sdk/eventhub/event-hubs/test/internal/misc.spec.ts b/sdk/eventhub/event-hubs/test/internal/misc.spec.ts index 64a714c1deb1..c48dec396238 100644 --- a/sdk/eventhub/event-hubs/test/internal/misc.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/misc.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { EventData, EventHubConsumerClient, EventHubProducerClient, diff --git a/sdk/eventhub/event-hubs/test/internal/node/disconnect.spec.ts b/sdk/eventhub/event-hubs/test/internal/node/disconnect.spec.ts index 8983a33fa44f..afc8a2a7a165 100644 --- a/sdk/eventhub/event-hubs/test/internal/node/disconnect.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/node/disconnect.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { latestEventPosition } from "../../../src/index.js"; -import { WritableReceiver } from "../../../src/partitionReceiver.js"; +import type { WritableReceiver } from "../../../src/partitionReceiver.js"; import { EventHubSender } from "../../../src/eventHubSender.js"; import { MessagingError } from "@azure/core-amqp"; import { should } from "../../utils/chai.js"; diff --git a/sdk/eventhub/event-hubs/test/internal/node/waitForEvents.spec.ts b/sdk/eventhub/event-hubs/test/internal/node/waitForEvents.spec.ts index 39ead7a689ea..3f6f5f8edb32 100644 --- a/sdk/eventhub/event-hubs/test/internal/node/waitForEvents.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/node/waitForEvents.spec.ts @@ -4,7 +4,7 @@ import { assert } from "../../utils/chai.js"; import EventEmitter from "events"; import { waitForEvents } from "../../../src/partitionReceiver.js"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { afterAll, beforeAll, describe, it, vi } from "vitest"; function assertWaitForEvents(inputs: { diff --git a/sdk/eventhub/event-hubs/test/internal/partitionPump.spec.ts b/sdk/eventhub/event-hubs/test/internal/partitionPump.spec.ts index ca768ee04498..e67bcc99ae4a 100644 --- a/sdk/eventhub/event-hubs/test/internal/partitionPump.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/partitionPump.spec.ts @@ -3,7 +3,7 @@ import { toProcessingSpanOptions } from "../../src/partitionPump.js"; import { tracingClient } from "../../src/diagnostics/tracing.js"; -import { TracingContext } from "@azure/core-tracing"; +import type { TracingContext } from "@azure/core-tracing"; import { TRACEPARENT_PROPERTY } from "../../src/diagnostics/instrumentEventData.js"; import { assert } from "../utils/chai.js"; import { describe, it, vi } from "vitest"; diff --git a/sdk/eventhub/event-hubs/test/internal/receiveBatch.spec.ts b/sdk/eventhub/event-hubs/test/internal/receiveBatch.spec.ts index a4b7820ae26f..cb980468e7ea 100644 --- a/sdk/eventhub/event-hubs/test/internal/receiveBatch.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/receiveBatch.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { EventData, EventHubConsumerClient, EventHubProducerClient, diff --git a/sdk/eventhub/event-hubs/test/internal/sender.spec.ts b/sdk/eventhub/event-hubs/test/internal/sender.spec.ts index 8a539de236ac..1848da2d22ab 100644 --- a/sdk/eventhub/event-hubs/test/internal/sender.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/sender.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { EventData, EventHubConsumerClient, EventHubProducerClient, @@ -9,7 +9,7 @@ import { ReceivedEventData, SendBatchOptions, } from "../../src/index.js"; -import { EventDataBatchImpl } from "../../src/eventDataBatch.js"; +import type { EventDataBatchImpl } from "../../src/eventDataBatch.js"; import { expect, should } from "../utils/chai.js"; import { SubscriptionHandlerForTests } from "../utils/subscriptionHandlerForTests.js"; import { getStartingPositionsForTests } from "../utils/testUtils.js"; diff --git a/sdk/eventhub/event-hubs/test/internal/tracing.spec.ts b/sdk/eventhub/event-hubs/test/internal/tracing.spec.ts index 3c97af1d2af6..48942c485782 100644 --- a/sdk/eventhub/event-hubs/test/internal/tracing.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/tracing.spec.ts @@ -1,13 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - createMockTracingContext, - MockInstrumenter, - MockTracingSpan, -} from "@azure-tools/test-utils-vitest"; +import type { MockTracingSpan } from "@azure-tools/test-utils-vitest"; +import { createMockTracingContext, MockInstrumenter } from "@azure-tools/test-utils-vitest"; import { afterEach, beforeEach, describe, it, vi } from "vitest"; -import { EventData, EventHubConsumerClient, EventHubProducerClient } from "../../src/index.js"; +import type { EventData, EventHubConsumerClient, EventHubProducerClient } from "../../src/index.js"; import { createBufferedProducer, createConsumer, createProducer } from "../utils/clients.js"; import { toSpanOptions, tracingClient } from "../../src/diagnostics/tracing.js"; import { diff --git a/sdk/eventhub/event-hubs/test/internal/transformEventsForSend.spec.ts b/sdk/eventhub/event-hubs/test/internal/transformEventsForSend.spec.ts index 7142dfac7d29..c10d53e0bab9 100644 --- a/sdk/eventhub/event-hubs/test/internal/transformEventsForSend.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/transformEventsForSend.spec.ts @@ -2,16 +2,17 @@ // Licensed under the MIT License. import { Buffer } from "buffer"; -import { EventData, EventDataBatch } from "../../src/index.js"; -import { PartitionPublishingProperties } from "../../src/models/private.js"; +import type { EventData, EventDataBatch } from "../../src/index.js"; +import type { PartitionPublishingProperties } from "../../src/models/private.js"; import { transformEventsForSend } from "../../src/eventHubSender.js"; -import { EventDataInternal } from "../../src/eventData.js"; +import type { EventDataInternal } from "../../src/eventData.js"; import { idempotentProducerAmqpPropertyNames, PENDING_PUBLISH_SEQ_NUM_SYMBOL, } from "../../src/util/constants.js"; -import { message, Message } from "rhea-promise"; +import type { Message } from "rhea-promise"; +import { message } from "rhea-promise"; import { TRACEPARENT_PROPERTY } from "../../src/diagnostics/instrumentEventData.js"; import { describe, it, beforeEach } from "vitest"; import { should } from "../utils/chai.js"; diff --git a/sdk/eventhub/event-hubs/test/public/amqpAnnotatedMessage.spec.ts b/sdk/eventhub/event-hubs/test/public/amqpAnnotatedMessage.spec.ts index 3d07b58d34ed..200f92e26f02 100644 --- a/sdk/eventhub/event-hubs/test/public/amqpAnnotatedMessage.spec.ts +++ b/sdk/eventhub/event-hubs/test/public/amqpAnnotatedMessage.spec.ts @@ -2,15 +2,15 @@ // Licensed under the MIT License. import { getStartingPositionsForTests } from "../utils/testUtils.js"; -import { +import type { EventHubConsumerClient, EventHubProducerClient, EventPosition, ReceivedEventData, Subscription, } from "../../src/index.js"; -import { AmqpAnnotatedMessage } from "@azure/core-amqp"; -import { BodyTypes } from "../../src/dataTransformer.js"; +import type { AmqpAnnotatedMessage } from "@azure/core-amqp"; +import type { BodyTypes } from "../../src/dataTransformer.js"; import { Buffer } from "buffer"; import { randomUUID } from "@azure/core-util"; import { should, assert } from "../utils/chai.js"; diff --git a/sdk/eventhub/event-hubs/test/public/cancellation.spec.ts b/sdk/eventhub/event-hubs/test/public/cancellation.spec.ts index b375cdea16a5..a4e7d46fcd38 100644 --- a/sdk/eventhub/event-hubs/test/public/cancellation.spec.ts +++ b/sdk/eventhub/event-hubs/test/public/cancellation.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { EventHubConsumerClient, EventHubProducerClient } from "../../src/index.js"; +import type { EventHubConsumerClient, EventHubProducerClient } from "../../src/index.js"; import { describe, it, beforeEach, afterEach } from "vitest"; import { createConsumer, createProducer } from "../utils/clients.js"; import { expect } from "../utils/chai.js"; diff --git a/sdk/eventhub/event-hubs/test/public/eventData.spec.ts b/sdk/eventhub/event-hubs/test/public/eventData.spec.ts index 3fabd280641a..a9175ca79b25 100644 --- a/sdk/eventhub/event-hubs/test/public/eventData.spec.ts +++ b/sdk/eventhub/event-hubs/test/public/eventData.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { getStartingPositionsForTests } from "../utils/testUtils.js"; -import { +import type { EventData, EventHubConsumerClient, EventHubProducerClient, diff --git a/sdk/eventhub/event-hubs/test/public/eventHubBufferedProducerClient.spec.ts b/sdk/eventhub/event-hubs/test/public/eventHubBufferedProducerClient.spec.ts index 3043a6a39440..ff75e5244cbc 100644 --- a/sdk/eventhub/event-hubs/test/public/eventHubBufferedProducerClient.spec.ts +++ b/sdk/eventhub/event-hubs/test/public/eventHubBufferedProducerClient.spec.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { EventData, EventHubBufferedProducerClient, OnSendEventsErrorContext, OnSendEventsSuccessContext, } from "../../src/index.js"; -import { AmqpAnnotatedMessage } from "@azure/core-amqp"; +import type { AmqpAnnotatedMessage } from "@azure/core-amqp"; import { assert } from "../utils/chai.js"; import { createBufferedProducer } from "../utils/clients.js"; import { describe, it, afterEach } from "vitest"; diff --git a/sdk/eventhub/event-hubs/test/public/eventHubConsumerClient.spec.ts b/sdk/eventhub/event-hubs/test/public/eventHubConsumerClient.spec.ts index ec7af57cb197..09f703cb5d2f 100644 --- a/sdk/eventhub/event-hubs/test/public/eventHubConsumerClient.spec.ts +++ b/sdk/eventhub/event-hubs/test/public/eventHubConsumerClient.spec.ts @@ -1,8 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - CloseReason, +import type { EventData, EventHubConsumerClient, EventHubProducerClient, @@ -10,6 +9,9 @@ import { ReceivedEventData, Subscription, SubscriptionEventHandlers, +} from "../../src/index.js"; +import { + CloseReason, earliestEventPosition, latestEventPosition, logger, diff --git a/sdk/eventhub/event-hubs/test/public/hubruntime.spec.ts b/sdk/eventhub/event-hubs/test/public/hubruntime.spec.ts index 4c113e319ef9..16a0829766db 100644 --- a/sdk/eventhub/event-hubs/test/public/hubruntime.spec.ts +++ b/sdk/eventhub/event-hubs/test/public/hubruntime.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { EventHubProducerClient, MessagingError } from "../../src/index.js"; +import type { EventHubProducerClient, MessagingError } from "../../src/index.js"; import { should } from "../utils/chai.js"; import debugModule from "debug"; import { describe, it, beforeEach, afterEach } from "vitest"; diff --git a/sdk/eventhub/event-hubs/test/public/node/disconnects.spec.ts b/sdk/eventhub/event-hubs/test/public/node/disconnects.spec.ts index 23f1c90c8ba3..0a045a5203aa 100644 --- a/sdk/eventhub/event-hubs/test/public/node/disconnects.spec.ts +++ b/sdk/eventhub/event-hubs/test/public/node/disconnects.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Subscription } from "../../../src/index.js"; +import type { Subscription } from "../../../src/index.js"; import { should } from "../../utils/chai.js"; import { describe, it } from "vitest"; import { createConsumer, createProducer } from "../../utils/clients.js"; diff --git a/sdk/eventhub/event-hubs/test/public/receiver.spec.ts b/sdk/eventhub/event-hubs/test/public/receiver.spec.ts index 720d4c50fa73..37a859b2688f 100644 --- a/sdk/eventhub/event-hubs/test/public/receiver.spec.ts +++ b/sdk/eventhub/event-hubs/test/public/receiver.spec.ts @@ -1,15 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { EventData, EventHubConsumerClient, EventHubProducerClient, ReceivedEventData, Subscription, - earliestEventPosition, - latestEventPosition, } from "../../src/index.js"; +import { earliestEventPosition, latestEventPosition } from "../../src/index.js"; import debugModule from "debug"; import { should } from "../utils/chai.js"; import { describe, it, afterEach, beforeEach } from "vitest"; diff --git a/sdk/eventhub/event-hubs/test/utils/clients.ts b/sdk/eventhub/event-hubs/test/utils/clients.ts index 349a046fbd5c..6c568aa581fa 100644 --- a/sdk/eventhub/event-hubs/test/utils/clients.ts +++ b/sdk/eventhub/event-hubs/test/utils/clients.ts @@ -1,6 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { CheckpointStore, SubscriptionEventHandlers, EventPosition } from "../../src/index.js"; import { EventHubConsumerClient, type EventHubConsumerClientOptions, @@ -9,24 +10,21 @@ import { type TokenCredential, EventHubBufferedProducerClient, type EventHubBufferedProducerClientOptions, - CheckpointStore, - SubscriptionEventHandlers, - EventPosition, earliestEventPosition, } from "../../src/index.js"; import { createTestCredential } from "@azure-tools/test-credential"; import type { NamedKeyCredential, SASCredential } from "@azure/core-auth"; import { assert } from "./chai.js"; -import { ConnectionContext, createConnectionContext } from "../../src/connectionContext.js"; -import { EventProcessor, FullEventProcessorOptions } from "../../src/eventProcessor.js"; +import type { ConnectionContext } from "../../src/connectionContext.js"; +import { createConnectionContext } from "../../src/connectionContext.js"; +import type { FullEventProcessorOptions } from "../../src/eventProcessor.js"; +import { EventProcessor } from "../../src/eventProcessor.js"; import { InMemoryCheckpointStore } from "../../src/inMemoryCheckpointStore.js"; import { UnbalancedLoadBalancingStrategy } from "../../src/loadBalancerStrategies/unbalancedStrategy.js"; -import { - createReceiver as _createReceiver, - PartitionReceiver, -} from "../../src/partitionReceiver.js"; +import type { PartitionReceiver } from "../../src/partitionReceiver.js"; +import { createReceiver as _createReceiver } from "../../src/partitionReceiver.js"; import { randomUUID } from "@azure/core-util"; -import { PartitionReceiverOptions } from "../../src/models/private.js"; +import type { PartitionReceiverOptions } from "../../src/models/private.js"; import { getConsumerGroupName, getEventhubName, getFullyQualifiedNamespace } from "./vars.js"; let clientId = 0; diff --git a/sdk/eventhub/event-hubs/test/utils/fakeSubscriptionEventHandlers.ts b/sdk/eventhub/event-hubs/test/utils/fakeSubscriptionEventHandlers.ts index a25e3679cd35..a014ce4becbc 100644 --- a/sdk/eventhub/event-hubs/test/utils/fakeSubscriptionEventHandlers.ts +++ b/sdk/eventhub/event-hubs/test/utils/fakeSubscriptionEventHandlers.ts @@ -1,7 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PartitionContext, ReceivedEventData, SubscriptionEventHandlers } from "../../src/index.js"; +import type { + PartitionContext, + ReceivedEventData, + SubscriptionEventHandlers, +} from "../../src/index.js"; export class FakeSubscriptionEventHandlers implements SubscriptionEventHandlers { public events: Map = new Map(); diff --git a/sdk/eventhub/event-hubs/test/utils/logging.ts b/sdk/eventhub/event-hubs/test/utils/logging.ts index c0ecfd802aa0..2b2714b417b5 100644 --- a/sdk/eventhub/event-hubs/test/utils/logging.ts +++ b/sdk/eventhub/event-hubs/test/utils/logging.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { afterAll, beforeAll, inject } from "vitest"; -import { AzureLogLevel, setLogLevel } from "@azure/logger"; +import type { AzureLogLevel } from "@azure/logger"; +import { setLogLevel } from "@azure/logger"; const logLevel = inject("AZURE_LOG_LEVEL") as AzureLogLevel; const localStorage: { debug?: string } = {}; diff --git a/sdk/eventhub/event-hubs/test/utils/receivedMessagesTester.ts b/sdk/eventhub/event-hubs/test/utils/receivedMessagesTester.ts index 9c7d17b98d17..307ebe3b0d11 100644 --- a/sdk/eventhub/event-hubs/test/utils/receivedMessagesTester.ts +++ b/sdk/eventhub/event-hubs/test/utils/receivedMessagesTester.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CloseReason, EventHubProducerClient, ReceivedEventData, diff --git a/sdk/eventhub/event-hubs/test/utils/sas.ts b/sdk/eventhub/event-hubs/test/utils/sas.ts index b29dc945e02d..7f4d52a2858a 100644 --- a/sdk/eventhub/event-hubs/test/utils/sas.ts +++ b/sdk/eventhub/event-hubs/test/utils/sas.ts @@ -2,10 +2,8 @@ // Licensed under the MIT License. import { createSasTokenProvider } from "@azure/core-amqp"; -import { - EventHubConnectionStringProperties, - parseEventHubConnectionString, -} from "../../src/index.js"; +import type { EventHubConnectionStringProperties } from "../../src/index.js"; +import { parseEventHubConnectionString } from "../../src/index.js"; import { getConnectionStringWithKey, getEventhubName, isMock } from "./vars.js"; import * as MOCKS from "./constants.js"; diff --git a/sdk/eventhub/event-hubs/test/utils/setup.ts b/sdk/eventhub/event-hubs/test/utils/setup.ts index 9165fe98ffb7..194dc058be5d 100644 --- a/sdk/eventhub/event-hubs/test/utils/setup.ts +++ b/sdk/eventhub/event-hubs/test/utils/setup.ts @@ -3,7 +3,8 @@ import { SecretClient } from "@azure/keyvault-secrets"; import { createTestCredential } from "@azure-tools/test-credential"; -import { MockEventHub, MockServerOptions } from "@azure/mock-hub"; +import type { MockServerOptions } from "@azure/mock-hub"; +import { MockEventHub } from "@azure/mock-hub"; import { readFileSync } from "fs"; import { resolve as resolvePath } from "path"; import type { GlobalSetupContext } from "vitest/node"; diff --git a/sdk/eventhub/event-hubs/test/utils/subscriptionHandlerForTests.ts b/sdk/eventhub/event-hubs/test/utils/subscriptionHandlerForTests.ts index a8406d3600b6..559b3ec50b53 100644 --- a/sdk/eventhub/event-hubs/test/utils/subscriptionHandlerForTests.ts +++ b/sdk/eventhub/event-hubs/test/utils/subscriptionHandlerForTests.ts @@ -1,8 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - CloseReason, +import type { EventHubConsumerClient, EventHubProducerClient, EventPosition, @@ -10,6 +9,7 @@ import { ReceivedEventData, SubscriptionEventHandlers, } from "../../src/index.js"; +import { CloseReason } from "../../src/index.js"; import { delay } from "@azure/core-amqp"; import { loggerForTest } from "./logHelpers.js"; import { loopUntil } from "./testUtils.js"; diff --git a/sdk/eventhub/event-hubs/test/utils/testInMemoryCheckpointStore.ts b/sdk/eventhub/event-hubs/test/utils/testInMemoryCheckpointStore.ts index 0187ffd53091..2d4f0cb94386 100644 --- a/sdk/eventhub/event-hubs/test/utils/testInMemoryCheckpointStore.ts +++ b/sdk/eventhub/event-hubs/test/utils/testInMemoryCheckpointStore.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { randomUUID } from "@azure/core-util"; -import { Checkpoint, CheckpointStore, PartitionOwnership } from "../../src/index.js"; +import type { Checkpoint, CheckpointStore, PartitionOwnership } from "../../src/index.js"; /** * The `EventProcessor` relies on a `CheckpointStore` to store checkpoints and handle partition diff --git a/sdk/eventhub/event-hubs/test/utils/testUtils.ts b/sdk/eventhub/event-hubs/test/utils/testUtils.ts index 802420396f97..29fd188cb749 100644 --- a/sdk/eventhub/event-hubs/test/utils/testUtils.ts +++ b/sdk/eventhub/event-hubs/test/utils/testUtils.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { EventHubConsumerClient, EventHubProducerClient, EventPosition, diff --git a/sdk/eventhub/eventhubs-checkpointstore-blob/review/eventhubs-checkpointstore-blob.api.md b/sdk/eventhub/eventhubs-checkpointstore-blob/review/eventhubs-checkpointstore-blob.api.md index 67e1e238991a..9e9fbfeb3024 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-blob/review/eventhubs-checkpointstore-blob.api.md +++ b/sdk/eventhub/eventhubs-checkpointstore-blob/review/eventhubs-checkpointstore-blob.api.md @@ -5,20 +5,20 @@ ```ts import { AzureLogger } from '@azure/logger'; -import { BlobItem } from '@azure/storage-blob'; -import { BlobSetMetadataOptions } from '@azure/storage-blob'; -import { BlockBlobUploadOptions } from '@azure/storage-blob'; -import { BlockBlobUploadResponse } from '@azure/storage-blob'; -import { Checkpoint } from '@azure/event-hubs'; -import { CheckpointStore } from '@azure/event-hubs'; -import { ContainerListBlobFlatSegmentResponse } from '@azure/storage-blob'; -import { ContainerListBlobsOptions } from '@azure/storage-blob'; -import { ContainerSetMetadataResponse } from '@azure/storage-blob'; -import { HttpRequestBody } from '@azure/storage-blob'; -import { Metadata } from '@azure/storage-blob'; -import { OperationOptions } from '@azure/event-hubs'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PartitionOwnership } from '@azure/event-hubs'; +import type { BlobItem } from '@azure/storage-blob'; +import type { BlobSetMetadataOptions } from '@azure/storage-blob'; +import type { BlockBlobUploadOptions } from '@azure/storage-blob'; +import type { BlockBlobUploadResponse } from '@azure/storage-blob'; +import type { Checkpoint } from '@azure/event-hubs'; +import type { CheckpointStore } from '@azure/event-hubs'; +import type { ContainerListBlobFlatSegmentResponse } from '@azure/storage-blob'; +import type { ContainerListBlobsOptions } from '@azure/storage-blob'; +import type { ContainerSetMetadataResponse } from '@azure/storage-blob'; +import type { HttpRequestBody } from '@azure/storage-blob'; +import type { Metadata } from '@azure/storage-blob'; +import type { OperationOptions } from '@azure/event-hubs'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PartitionOwnership } from '@azure/event-hubs'; // @public export class BlobCheckpointStore implements CheckpointStore { diff --git a/sdk/eventhub/eventhubs-checkpointstore-blob/src/blobCheckpointStore.ts b/sdk/eventhub/eventhubs-checkpointstore-blob/src/blobCheckpointStore.ts index 6cf28bfb184e..9622174ad0da 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-blob/src/blobCheckpointStore.ts +++ b/sdk/eventhub/eventhubs-checkpointstore-blob/src/blobCheckpointStore.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CheckpointStore, PartitionOwnership, Checkpoint, OperationOptions, } from "@azure/event-hubs"; -import { Metadata, RestError, BlobSetMetadataResponse } from "@azure/storage-blob"; +import type { Metadata, RestError, BlobSetMetadataResponse } from "@azure/storage-blob"; import { logger, logErrorStackTrace } from "./log.js"; -import { ContainerClientLike } from "./storageBlobInterfaces.js"; +import type { ContainerClientLike } from "./storageBlobInterfaces.js"; import { throwTypeErrorIfParameterMissing } from "./util/error.js"; /** diff --git a/sdk/eventhub/eventhubs-checkpointstore-blob/src/storageBlobInterfaces.ts b/sdk/eventhub/eventhubs-checkpointstore-blob/src/storageBlobInterfaces.ts index 1da76838f165..4582998a6382 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-blob/src/storageBlobInterfaces.ts +++ b/sdk/eventhub/eventhubs-checkpointstore-blob/src/storageBlobInterfaces.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { Metadata, BlobItem, ContainerListBlobFlatSegmentResponse, @@ -12,7 +12,7 @@ import { BlobSetMetadataOptions, ContainerSetMetadataResponse, } from "@azure/storage-blob"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; /** * An interface compatible with an instance of {@link BlobClient}. diff --git a/sdk/eventhub/eventhubs-checkpointstore-blob/test/activate-browser-logging.ts b/sdk/eventhub/eventhubs-checkpointstore-blob/test/activate-browser-logging.ts index 32853ab8fdec..59ccd691a5ed 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-blob/test/activate-browser-logging.ts +++ b/sdk/eventhub/eventhubs-checkpointstore-blob/test/activate-browser-logging.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { afterAll, beforeAll } from "vitest"; -import { AzureLogLevel, setLogLevel } from "@azure/logger"; +import type { AzureLogLevel } from "@azure/logger"; +import { setLogLevel } from "@azure/logger"; const logLevel = (process.env.AZURE_LOG_LEVEL as AzureLogLevel) || "info"; const localStorage: { debug?: string } = {}; diff --git a/sdk/eventhub/eventhubs-checkpointstore-blob/test/public/blob-checkpointstore.spec.ts b/sdk/eventhub/eventhubs-checkpointstore-blob/test/public/blob-checkpointstore.spec.ts index a29f31b34af3..06524b8c17c1 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-blob/test/public/blob-checkpointstore.spec.ts +++ b/sdk/eventhub/eventhubs-checkpointstore-blob/test/public/blob-checkpointstore.spec.ts @@ -5,8 +5,9 @@ import debugModule from "debug"; const debug = debugModule("azure:event-hubs:partitionPump"); import { addToOffset } from "../util/testUtils.js"; import { BlobCheckpointStore } from "../../src/index.js"; -import { ContainerClient } from "@azure/storage-blob"; -import { PartitionOwnership, Checkpoint, EventHubConsumerClient } from "@azure/event-hubs"; +import type { ContainerClient } from "@azure/storage-blob"; +import type { PartitionOwnership, Checkpoint } from "@azure/event-hubs"; +import { EventHubConsumerClient } from "@azure/event-hubs"; import { parseIntOrThrow } from "../../src/blobCheckpointStore.js"; import { describe, it, beforeEach, afterEach } from "vitest"; import { assert, expect, should } from "../util/chai.js"; diff --git a/sdk/eventhub/eventhubs-checkpointstore-blob/test/util/clients.ts b/sdk/eventhub/eventhubs-checkpointstore-blob/test/util/clients.ts index 889734a1a8f7..1d4da9ef79a7 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-blob/test/util/clients.ts +++ b/sdk/eventhub/eventhubs-checkpointstore-blob/test/util/clients.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/identity"; -import { BlobServiceClient, ContainerClient, StoragePipelineOptions } from "@azure/storage-blob"; +import type { TokenCredential } from "@azure/identity"; +import type { ContainerClient, StoragePipelineOptions } from "@azure/storage-blob"; +import { BlobServiceClient } from "@azure/storage-blob"; import { createTestCredential } from "@azure-tools/test-credential"; import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { EnvVarKeys } from "./constants.js"; diff --git a/sdk/eventhub/eventhubs-checkpointstore-table/review/eventhubs-checkpointstore-table.api.md b/sdk/eventhub/eventhubs-checkpointstore-table/review/eventhubs-checkpointstore-table.api.md index d08dab92b89d..4ba6b68af766 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-table/review/eventhubs-checkpointstore-table.api.md +++ b/sdk/eventhub/eventhubs-checkpointstore-table/review/eventhubs-checkpointstore-table.api.md @@ -5,10 +5,10 @@ ```ts import { AzureLogger } from '@azure/logger'; -import { Checkpoint } from '@azure/event-hubs'; -import { CheckpointStore } from '@azure/event-hubs'; -import { PartitionOwnership } from '@azure/event-hubs'; -import { TableClient } from '@azure/data-tables'; +import type { Checkpoint } from '@azure/event-hubs'; +import type { CheckpointStore } from '@azure/event-hubs'; +import type { PartitionOwnership } from '@azure/event-hubs'; +import type { TableClient } from '@azure/data-tables'; // @public export const logger: AzureLogger; diff --git a/sdk/eventhub/eventhubs-checkpointstore-table/src/tableCheckpointStore.ts b/sdk/eventhub/eventhubs-checkpointstore-table/src/tableCheckpointStore.ts index 721298356656..29008e3572c1 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-table/src/tableCheckpointStore.ts +++ b/sdk/eventhub/eventhubs-checkpointstore-table/src/tableCheckpointStore.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Checkpoint, CheckpointStore, PartitionOwnership } from "@azure/event-hubs"; -import { TableClient, TableInsertEntityHeaders, odata } from "@azure/data-tables"; +import type { Checkpoint, CheckpointStore, PartitionOwnership } from "@azure/event-hubs"; +import type { TableClient, TableInsertEntityHeaders } from "@azure/data-tables"; +import { odata } from "@azure/data-tables"; import { logErrorStackTrace, logger } from "./log.js"; /** diff --git a/sdk/eventhub/eventhubs-checkpointstore-table/test/activate-browser-logging.ts b/sdk/eventhub/eventhubs-checkpointstore-table/test/activate-browser-logging.ts index 32853ab8fdec..59ccd691a5ed 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-table/test/activate-browser-logging.ts +++ b/sdk/eventhub/eventhubs-checkpointstore-table/test/activate-browser-logging.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { afterAll, beforeAll } from "vitest"; -import { AzureLogLevel, setLogLevel } from "@azure/logger"; +import type { AzureLogLevel } from "@azure/logger"; +import { setLogLevel } from "@azure/logger"; const logLevel = (process.env.AZURE_LOG_LEVEL as AzureLogLevel) || "info"; const localStorage: { debug?: string } = {}; diff --git a/sdk/eventhub/eventhubs-checkpointstore-table/test/util/clients.ts b/sdk/eventhub/eventhubs-checkpointstore-table/test/util/clients.ts index 46634701b780..970abf32ded0 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-table/test/util/clients.ts +++ b/sdk/eventhub/eventhubs-checkpointstore-table/test/util/clients.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; import { TableClient, TableServiceClient } from "@azure/data-tables"; import { createTestCredential } from "@azure-tools/test-credential"; import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; diff --git a/sdk/eventhub/mock-hub/src/sender/streamingPartitionSender.ts b/sdk/eventhub/mock-hub/src/sender/streamingPartitionSender.ts index 4dfddc80f581..4f497f0b9864 100644 --- a/sdk/eventhub/mock-hub/src/sender/streamingPartitionSender.ts +++ b/sdk/eventhub/mock-hub/src/sender/streamingPartitionSender.ts @@ -3,8 +3,8 @@ import { AbortError } from "@azure/abort-controller"; import rhea from "rhea"; -import { MessageRecord, MessageStore } from "../storage/messageStore.js"; -import { EventPosition } from "../utils/eventPosition.js"; +import type { MessageRecord, MessageStore } from "../storage/messageStore.js"; +import type { EventPosition } from "../utils/eventPosition.js"; /** * The StreamingPartitionSender is responsible for sending stored events to a client diff --git a/sdk/eventhub/mock-hub/src/server/mockServer.ts b/sdk/eventhub/mock-hub/src/server/mockServer.ts index 385e92668441..ba6cc20c3f6e 100644 --- a/sdk/eventhub/mock-hub/src/server/mockServer.ts +++ b/sdk/eventhub/mock-hub/src/server/mockServer.ts @@ -3,7 +3,7 @@ import rhea from "rhea"; import { EventEmitter } from "events"; -import { ListenOptions } from "net"; +import type { ListenOptions } from "net"; import { convertBufferToMessages } from "../utils/convertBufferToMessage.js"; export interface MockServerOptions { diff --git a/sdk/eventhub/mock-hub/src/services/eventHubs.ts b/sdk/eventhub/mock-hub/src/services/eventHubs.ts index bd9d91026a81..d33ab9464969 100644 --- a/sdk/eventhub/mock-hub/src/services/eventHubs.ts +++ b/sdk/eventhub/mock-hub/src/services/eventHubs.ts @@ -2,15 +2,15 @@ // Licensed under the MIT License. import rhea from "rhea"; -import { +import type { ConnectionCloseEvent, - MockServer, MockServerOptions, OnMessagesEvent, ReceiverOpenEvent, SenderCloseEvent, SenderOpenEvent, } from "../server/mockServer.js"; +import { MockServer } from "../server/mockServer.js"; import { generateBadPartitionInfoResponse, generatePartitionInfoResponse, diff --git a/sdk/eventhub/mock-hub/src/storage/messageStore.ts b/sdk/eventhub/mock-hub/src/storage/messageStore.ts index 4d98c6e9c0da..d45ede00f025 100644 --- a/sdk/eventhub/mock-hub/src/storage/messageStore.ts +++ b/sdk/eventhub/mock-hub/src/storage/messageStore.ts @@ -3,8 +3,8 @@ /// -import { EventPosition } from "../utils/eventPosition.js"; -import { Message } from "rhea"; +import type { EventPosition } from "../utils/eventPosition.js"; +import type { Message } from "rhea"; import { Queue } from "./queue.js"; export interface MessageRecord { diff --git a/sdk/face/ai-vision-face-rest/CHANGELOG.md b/sdk/face/ai-vision-face-rest/CHANGELOG.md index 23136309cfdc..b7beea9dcd1e 100644 --- a/sdk/face/ai-vision-face-rest/CHANGELOG.md +++ b/sdk/face/ai-vision-face-rest/CHANGELOG.md @@ -1,14 +1,16 @@ # Release History -## 1.0.0-beta.2 (Unreleased) +## 1.0.0-beta.2 (2024-10-14) -### Features Added - -### Breaking Changes +This library now supports the Azure AI Face v1.2-preview.1 API. -### Bugs Fixed +### Features Added -### Other Changes +- Added support for latest Detect Liveness Session API + - New face detection operation: [Detect From Session Image Id](https://learn.microsoft.com/rest/api/face/face-detection-operations/detect-from-session-image-id?view=rest-face-v1.2-preview.1) using `DetectFromSessionImageIdParameters`. + - New liveness session operation: [Get Session Image](https://learn.microsoft.com/rest/api/face/liveness-session-operations/get-session-image?view=rest-face-v1.2-preview.1). + - New properties `enableSessionImage?: boolean`, `livenessSingleModalModel?: LivenessModel` to `CreateLivenessSessionContent`. + - New model `CreateLivenessWithVerifySessionJsonContent` for liveness session operations [Create Liveness With Verify Session](https://learn.microsoft.com/rest/api/face/liveness-session-operations/create-liveness-with-verify-session?view=rest-face-v1.2-preview.1) and [Create Liveness With Verify Session With Verify Image](https://learn.microsoft.com/rest/api/face/liveness-session-operations/create-liveness-with-verify-session-with-verify-image?view=rest-face-v1.2-preview.1). ## 1.0.0-beta.1 (2024-05-23) diff --git a/sdk/face/ai-vision-face-rest/LICENSE b/sdk/face/ai-vision-face-rest/LICENSE new file mode 100644 index 000000000000..7d5934740965 --- /dev/null +++ b/sdk/face/ai-vision-face-rest/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2024 Microsoft + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/sdk/face/ai-vision-face-rest/assets.json b/sdk/face/ai-vision-face-rest/assets.json index 5553ae6aacca..a9698480fce2 100644 --- a/sdk/face/ai-vision-face-rest/assets.json +++ b/sdk/face/ai-vision-face-rest/assets.json @@ -2,5 +2,5 @@ "AssetsRepo": "Azure/azure-sdk-assets", "AssetsRepoPrefixPath": "js", "TagPrefix": "js/face/ai-vision-face-rest", - "Tag": "js/face/ai-vision-face-rest_dad2b43d3e" + "Tag": "js/face/ai-vision-face-rest_b192acc7ae" } diff --git a/sdk/face/ai-vision-face-rest/package.json b/sdk/face/ai-vision-face-rest/package.json index fe4aaddfab9f..6e509373b798 100644 --- a/sdk/face/ai-vision-face-rest/package.json +++ b/sdk/face/ai-vision-face-rest/package.json @@ -47,7 +47,8 @@ "dist", "README.md", "LICENSE", - "review/*" + "review/*", + "CHANGELOG.md" ], "scripts": { "build": "npm run clean && dev-tool run build-package && dev-tool run vendored mkdirp ./review && dev-tool run extract-api", @@ -55,7 +56,6 @@ "build:test": "npm run clean && dev-tool run build-package && dev-tool run build-test", "check-format": "dev-tool run vendored prettier --list-different --config ../../../prettier.config.cjs --ignore-path ../../../.prettierignore \"src/**/*.{ts,cts,mts}\" \"test/**/*.{ts,cts,mts}\" \"*.{js,cjs,mjs,json}\"", "clean": "dev-tool run vendored rimraf --glob dist dist-browser dist-esm test-dist temp types *.tgz *.log", - "execute:samples": "dev-tool samples run samples-dev", "extract-api": "dev-tool run vendored rimraf review && dev-tool run vendored mkdirp ./review && dev-tool run extract-api", "format": "dev-tool run vendored prettier --write --config ../../../prettier.config.cjs --ignore-path ../../../.prettierignore \"src/**/*.{ts,cts,mts}\" \"test/**/*.{ts,cts,mts}\" \"*.{js,cjs,mjs,json}\"", "generate:client": "echo skipped", @@ -71,8 +71,7 @@ "test:node": "npm run clean && dev-tool run build-package && npm run unit-test:node && npm run integration-test:node", "unit-test": "npm run unit-test:node && npm run unit-test:browser", "unit-test:browser": "npm run build:test && dev-tool run test:vitest --browser", - "unit-test:node": "dev-tool run test:vitest", - "update-snippets": "echo skipped" + "unit-test:node": "dev-tool run test:vitest" }, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { 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 e7c8f7eab57c..8396d119bf6c 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 @@ -4,18 +4,18 @@ ```ts -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'; -import { HttpResponse } from '@azure-rest/core-client'; -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 { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { AbortSignalLike } from '@azure/abort-controller'; +import type { CancelOnProgress } from '@azure/core-lro'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { CreateHttpPollerOptions } from '@azure/core-lro'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationState } from '@azure/core-lro'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AccessoryItemOutput { @@ -24,7 +24,12 @@ export interface AccessoryItemOutput { } // @public -export type AccessoryTypeOutput = string | "headwear" | "glasses" | "mask"; +export type AccessoryTypeOutput = string; + +// @public +export interface AddFaceFromUrlRequest { + url: string; +} // @public export interface AddFaceListFace200Response extends HttpResponse { @@ -56,7 +61,7 @@ export interface AddFaceListFaceDefaultResponse extends HttpResponse { // @public (undocumented) export interface AddFaceListFaceFromUrl { - post(options?: AddFaceListFaceFromUrlParameters): StreamableMethod; + post(options: AddFaceListFaceFromUrlParameters): StreamableMethod; post(options: AddFaceListFaceParameters): StreamableMethod; } @@ -71,9 +76,7 @@ export interface AddFaceListFaceFromUrl200Response extends HttpResponse { // @public (undocumented) export interface AddFaceListFaceFromUrlBodyParam { // (undocumented) - body?: { - url: string; - }; + body: AddFaceFromUrlRequest; } // @public (undocumented) @@ -164,7 +167,7 @@ export interface AddLargeFaceListFaceDefaultResponse extends HttpResponse { // @public (undocumented) export interface AddLargeFaceListFaceFromUrl { get(options?: GetLargeFaceListFacesParameters): StreamableMethod; - post(options?: AddLargeFaceListFaceFromUrlParameters): StreamableMethod; + post(options: AddLargeFaceListFaceFromUrlParameters): StreamableMethod; post(options: AddLargeFaceListFaceParameters): StreamableMethod; } @@ -179,9 +182,7 @@ export interface AddLargeFaceListFaceFromUrl200Response extends HttpResponse { // @public (undocumented) export interface AddLargeFaceListFaceFromUrlBodyParam { // (undocumented) - body?: { - url: string; - }; + body: AddFaceFromUrlRequest; } // @public (undocumented) @@ -266,7 +267,7 @@ export interface AddLargePersonGroupPersonFaceDefaultResponse extends HttpRespon // @public (undocumented) export interface AddLargePersonGroupPersonFaceFromUrl { - post(options?: AddLargePersonGroupPersonFaceFromUrlParameters): StreamableMethod; + post(options: AddLargePersonGroupPersonFaceFromUrlParameters): StreamableMethod; post(options: AddLargePersonGroupPersonFaceParameters): StreamableMethod; } @@ -281,9 +282,7 @@ export interface AddLargePersonGroupPersonFaceFromUrl200Response extends HttpRes // @public (undocumented) export interface AddLargePersonGroupPersonFaceFromUrlBodyParam { // (undocumented) - body?: { - url: string; - }; + body: AddFaceFromUrlRequest; } // @public (undocumented) @@ -342,7 +341,7 @@ export interface AddLargePersonGroupPersonFaceQueryParamProperties { export interface AddPersonFace { get(options?: GetPersonFacesParameters): StreamableMethod; post(options: AddPersonFaceParameters): StreamableMethod; - post(options?: AddPersonFaceFromUrlParameters): StreamableMethod; + post(options: AddPersonFaceFromUrlParameters): StreamableMethod; } // @public (undocumented) @@ -404,7 +403,7 @@ export interface AddPersonFaceFromUrl202Response extends HttpResponse { // @public (undocumented) export interface AddPersonFaceFromUrlBodyParam { // (undocumented) - body?: { + body: { url: string; }; } @@ -507,7 +506,7 @@ export interface AddPersonGroupPersonFaceDefaultResponse extends HttpResponse { // @public (undocumented) export interface AddPersonGroupPersonFaceFromUrl { - post(options?: AddPersonGroupPersonFaceFromUrlParameters): StreamableMethod; + post(options: AddPersonGroupPersonFaceFromUrlParameters): StreamableMethod; post(options: AddPersonGroupPersonFaceParameters): StreamableMethod; } @@ -522,9 +521,7 @@ export interface AddPersonGroupPersonFaceFromUrl200Response extends HttpResponse // @public (undocumented) export interface AddPersonGroupPersonFaceFromUrlBodyParam { // (undocumented) - body?: { - url: string; - }; + body: AddFaceFromUrlRequest; } // @public (undocumented) @@ -596,7 +593,7 @@ export interface AuditRequestInfoOutput { } // @public -export type BlurLevelOutput = string | "low" | "medium" | "high"; +export type BlurLevelOutput = string; // @public export interface BlurPropertiesOutput { @@ -605,9 +602,16 @@ export interface BlurPropertiesOutput { } // @public -function createClient(endpointParam: string, credentials: TokenCredential | KeyCredential, options?: FaceClientOptions): FaceClient; +function createClient(endpointParam: string, credentials: TokenCredential | KeyCredential, { apiVersion, ...options }?: FaceClientOptions): FaceClient; export default createClient; +// @public +export interface CreateCollectionRequest { + name: string; + recognitionModel?: RecognitionModel; + userData?: string; +} + // @public export interface CreateDynamicPersonGroup200Response extends HttpResponse { // (undocumented) @@ -617,10 +621,7 @@ export interface CreateDynamicPersonGroup200Response extends HttpResponse { // @public (undocumented) export interface CreateDynamicPersonGroupBodyParam { // (undocumented) - body?: { - name: string; - userData?: string; - }; + body: UserDefinedFields; } // @public (undocumented) @@ -645,10 +646,10 @@ export type CreateDynamicPersonGroupParameters = CreateDynamicPersonGroupBodyPar export interface CreateDynamicPersonGroupWithPerson { delete(options?: DeleteDynamicPersonGroupParameters): StreamableMethod; get(options?: GetDynamicPersonGroupParameters): StreamableMethod; - patch(options?: UpdateDynamicPersonGroupWithPersonChangesParameters): StreamableMethod; - patch(options?: UpdateDynamicPersonGroupParameters): StreamableMethod; - put(options?: CreateDynamicPersonGroupWithPersonParameters): StreamableMethod; - put(options?: CreateDynamicPersonGroupParameters): StreamableMethod; + patch(options: UpdateDynamicPersonGroupWithPersonChangesParameters): StreamableMethod; + patch(options: UpdateDynamicPersonGroupParameters): StreamableMethod; + put(options: CreateDynamicPersonGroupWithPersonParameters): StreamableMethod; + put(options: CreateDynamicPersonGroupParameters): StreamableMethod; } // @public (undocumented) @@ -668,7 +669,7 @@ export interface CreateDynamicPersonGroupWithPerson202Response extends HttpRespo // @public (undocumented) export interface CreateDynamicPersonGroupWithPersonBodyParam { // (undocumented) - body?: { + body: { name: string; userData?: string; addPersonIds: string[]; @@ -703,8 +704,8 @@ export type CreateDynamicPersonGroupWithPersonParameters = CreateDynamicPersonGr export interface CreateFaceList { delete(options?: DeleteFaceListParameters): StreamableMethod; get(options?: GetFaceListParameters): StreamableMethod; - patch(options?: UpdateFaceListParameters): StreamableMethod; - put(options?: CreateFaceListParameters): StreamableMethod; + patch(options: UpdateFaceListParameters): StreamableMethod; + put(options: CreateFaceListParameters): StreamableMethod; } // @public @@ -716,11 +717,7 @@ export interface CreateFaceList200Response extends HttpResponse { // @public (undocumented) export interface CreateFaceListBodyParam { // (undocumented) - body?: { - name: string; - userData?: string; - recognitionModel?: RecognitionModel; - }; + body: CreateCollectionRequest; } // @public (undocumented) @@ -745,8 +742,8 @@ export type CreateFaceListParameters = CreateFaceListBodyParam & RequestParamete export interface CreateLargeFaceList { delete(options?: DeleteLargeFaceListParameters): StreamableMethod; get(options?: GetLargeFaceListParameters): StreamableMethod; - patch(options?: UpdateLargeFaceListParameters): StreamableMethod; - put(options?: CreateLargeFaceListParameters): StreamableMethod; + patch(options: UpdateLargeFaceListParameters): StreamableMethod; + put(options: CreateLargeFaceListParameters): StreamableMethod; } // @public @@ -758,11 +755,7 @@ export interface CreateLargeFaceList200Response extends HttpResponse { // @public (undocumented) export interface CreateLargeFaceListBodyParam { // (undocumented) - body?: { - name: string; - userData?: string; - recognitionModel?: RecognitionModel; - }; + body: CreateCollectionRequest; } // @public (undocumented) @@ -787,8 +780,8 @@ export type CreateLargeFaceListParameters = CreateLargeFaceListBodyParam & Reque export interface CreateLargePersonGroup { delete(options?: DeleteLargePersonGroupParameters): StreamableMethod; get(options?: GetLargePersonGroupParameters): StreamableMethod; - patch(options?: UpdateLargePersonGroupParameters): StreamableMethod; - put(options?: CreateLargePersonGroupParameters): StreamableMethod; + patch(options: UpdateLargePersonGroupParameters): StreamableMethod; + put(options: CreateLargePersonGroupParameters): StreamableMethod; } // @public @@ -800,11 +793,7 @@ export interface CreateLargePersonGroup200Response extends HttpResponse { // @public (undocumented) export interface CreateLargePersonGroupBodyParam { // (undocumented) - body?: { - name: string; - userData?: string; - recognitionModel?: RecognitionModel; - }; + body: CreateCollectionRequest; } // @public (undocumented) @@ -828,7 +817,7 @@ export type CreateLargePersonGroupParameters = CreateLargePersonGroupBodyParam & // @public (undocumented) export interface CreateLargePersonGroupPerson { get(options?: GetLargePersonGroupPersonsParameters): StreamableMethod; - post(options?: CreateLargePersonGroupPersonParameters): StreamableMethod; + post(options: CreateLargePersonGroupPersonParameters): StreamableMethod; } // @public @@ -842,10 +831,7 @@ export interface CreateLargePersonGroupPerson200Response extends HttpResponse { // @public (undocumented) export interface CreateLargePersonGroupPersonBodyParam { // (undocumented) - body?: { - name: string; - userData?: string; - }; + body: UserDefinedFields; } // @public (undocumented) @@ -869,7 +855,7 @@ export type CreateLargePersonGroupPersonParameters = CreateLargePersonGroupPerso // @public (undocumented) export interface CreateLivenessSession { get(options?: GetLivenessSessionsParameters): StreamableMethod; - post(options?: CreateLivenessSessionParameters): StreamableMethod; + post(options: CreateLivenessSessionParameters): StreamableMethod; } // @public @@ -882,8 +868,7 @@ export interface CreateLivenessSession200Response extends HttpResponse { // @public (undocumented) export interface CreateLivenessSessionBodyParam { - // (undocumented) - body?: CreateLivenessSessionContent; + body: CreateLivenessSessionContent; } // @public @@ -891,7 +876,9 @@ export interface CreateLivenessSessionContent { authTokenTimeToLiveInSeconds?: number; deviceCorrelationId?: string; deviceCorrelationIdSetInClient?: boolean; + enableSessionImage?: boolean; livenessOperationMode: LivenessOperationMode; + livenessSingleModalModel?: LivenessModel; sendResultsToClient?: boolean; } @@ -929,23 +916,50 @@ export interface CreateLivenessWithVerifySession200Response extends HttpResponse // @public (undocumented) export interface CreateLivenessWithVerifySessionBodyParam { + body: CreateLivenessWithVerifySessionJsonContent; +} + +// @public (undocumented) +export interface CreateLivenessWithVerifySessionDefaultHeaders { + "x-ms-error-code"?: string; +} + +// @public (undocumented) +export interface CreateLivenessWithVerifySessionDefaultResponse extends HttpResponse { + // (undocumented) + body: FaceErrorResponseOutput; + // (undocumented) + headers: RawHttpHeaders & CreateLivenessWithVerifySessionDefaultHeaders; // (undocumented) - body?: CreateLivenessSessionContent; + status: string; +} + +// @public +export interface CreateLivenessWithVerifySessionJsonContent { + authTokenTimeToLiveInSeconds?: number; + deviceCorrelationId?: string; + deviceCorrelationIdSetInClient?: boolean; + enableSessionImage?: boolean; + livenessOperationMode: LivenessOperationMode; + livenessSingleModalModel?: LivenessModel; + returnVerifyImageHash?: boolean; + sendResultsToClient?: boolean; + verifyConfidenceThreshold?: number; } // @public -export type CreateLivenessWithVerifySessionContent = FormData | Array; +export type CreateLivenessWithVerifySessionMultipartContent = FormData | Array; // @public (undocumented) -export interface CreateLivenessWithVerifySessionContentParametersPartDescriptor { +export interface CreateLivenessWithVerifySessionMultipartContentParametersPartDescriptor { // (undocumented) - body: CreateLivenessSessionContent; + body: CreateLivenessWithVerifySessionJsonContent; // (undocumented) name: "Parameters"; } // @public (undocumented) -export interface CreateLivenessWithVerifySessionContentVerifyImagePartDescriptor { +export interface CreateLivenessWithVerifySessionMultipartContentVerifyImagePartDescriptor { // (undocumented) body: string | Uint8Array | ReadableStream | NodeJS.ReadableStream | File; // (undocumented) @@ -956,21 +970,6 @@ export interface CreateLivenessWithVerifySessionContentVerifyImagePartDescriptor name: "VerifyImage"; } -// @public (undocumented) -export interface CreateLivenessWithVerifySessionDefaultHeaders { - "x-ms-error-code"?: string; -} - -// @public (undocumented) -export interface CreateLivenessWithVerifySessionDefaultResponse extends HttpResponse { - // (undocumented) - body: FaceErrorResponseOutput; - // (undocumented) - headers: RawHttpHeaders & CreateLivenessWithVerifySessionDefaultHeaders; - // (undocumented) - status: string; -} - // @public (undocumented) export type CreateLivenessWithVerifySessionParameters = CreateLivenessWithVerifySessionBodyParam & RequestParameters; @@ -985,7 +984,7 @@ export interface CreateLivenessWithVerifySessionResultOutput { export interface CreateLivenessWithVerifySessionWithVerifyImage { get(options?: GetLivenessWithVerifySessionsParameters): StreamableMethod; post(options: CreateLivenessWithVerifySessionWithVerifyImageParameters): StreamableMethod; - post(options?: CreateLivenessWithVerifySessionParameters): StreamableMethod; + post(options: CreateLivenessWithVerifySessionParameters): StreamableMethod; } // @public @@ -998,8 +997,7 @@ export interface CreateLivenessWithVerifySessionWithVerifyImage200Response exten // @public (undocumented) export interface CreateLivenessWithVerifySessionWithVerifyImageBodyParam { - // (undocumented) - body?: CreateLivenessWithVerifySessionContent; + body: CreateLivenessWithVerifySessionMultipartContent; } // @public (undocumented) @@ -1028,7 +1026,7 @@ export type CreateLivenessWithVerifySessionWithVerifyImageParameters = CreateLiv // @public (undocumented) export interface CreatePerson { get(options?: GetPersonsParameters): StreamableMethod; - post(options?: CreatePersonParameters): StreamableMethod; + post(options: CreatePersonParameters): StreamableMethod; } // @public (undocumented) @@ -1052,10 +1050,7 @@ export interface CreatePerson202Response extends HttpResponse { // @public (undocumented) export interface CreatePersonBodyParam { // (undocumented) - body?: { - name: string; - userData?: string; - }; + body: UserDefinedFields; } // @public (undocumented) @@ -1077,8 +1072,8 @@ export interface CreatePersonDefaultResponse extends HttpResponse { export interface CreatePersonGroup { delete(options?: DeletePersonGroupParameters): StreamableMethod; get(options?: GetPersonGroupParameters): StreamableMethod; - patch(options?: UpdatePersonGroupParameters): StreamableMethod; - put(options?: CreatePersonGroupParameters): StreamableMethod; + patch(options: UpdatePersonGroupParameters): StreamableMethod; + put(options: CreatePersonGroupParameters): StreamableMethod; } // @public @@ -1090,11 +1085,7 @@ export interface CreatePersonGroup200Response extends HttpResponse { // @public (undocumented) export interface CreatePersonGroupBodyParam { // (undocumented) - body?: { - name: string; - userData?: string; - recognitionModel?: RecognitionModel; - }; + body: CreateCollectionRequest; } // @public (undocumented) @@ -1118,7 +1109,7 @@ export type CreatePersonGroupParameters = CreatePersonGroupBodyParam & RequestPa // @public (undocumented) export interface CreatePersonGroupPerson { get(options?: GetPersonGroupPersonsParameters): StreamableMethod; - post(options?: CreatePersonGroupPersonParameters): StreamableMethod; + post(options: CreatePersonGroupPersonParameters): StreamableMethod; } // @public @@ -1132,10 +1123,7 @@ export interface CreatePersonGroupPerson200Response extends HttpResponse { // @public (undocumented) export interface CreatePersonGroupPersonBodyParam { // (undocumented) - body?: { - name: string; - userData?: string; - }; + body: UserDefinedFields; } // @public (undocumented) @@ -1288,7 +1276,7 @@ export interface DeleteLargeFaceListDefaultResponse extends HttpResponse { export interface DeleteLargeFaceListFace { delete(options?: DeleteLargeFaceListFaceParameters): StreamableMethod; get(options?: GetLargeFaceListFaceParameters): StreamableMethod; - patch(options?: UpdateLargeFaceListFaceParameters): StreamableMethod; + patch(options: UpdateLargeFaceListFaceParameters): StreamableMethod; } // @public @@ -1346,7 +1334,7 @@ export type DeleteLargePersonGroupParameters = RequestParameters; export interface DeleteLargePersonGroupPerson { delete(options?: DeleteLargePersonGroupPersonParameters): StreamableMethod; get(options?: GetLargePersonGroupPersonParameters): StreamableMethod; - patch(options?: UpdateLargePersonGroupPersonParameters): StreamableMethod; + patch(options: UpdateLargePersonGroupPersonParameters): StreamableMethod; } // @public @@ -1374,7 +1362,7 @@ export interface DeleteLargePersonGroupPersonDefaultResponse extends HttpRespons export interface DeleteLargePersonGroupPersonFace { delete(options?: DeleteLargePersonGroupPersonFaceParameters): StreamableMethod; get(options?: GetLargePersonGroupPersonFaceParameters): StreamableMethod; - patch(options?: UpdateLargePersonGroupPersonFaceParameters): StreamableMethod; + patch(options: UpdateLargePersonGroupPersonFaceParameters): StreamableMethod; } // @public @@ -1468,7 +1456,7 @@ export type DeleteLivenessWithVerifySessionParameters = RequestParameters; export interface DeletePerson { delete(options?: DeletePersonParameters): StreamableMethod; get(options?: GetPersonParameters): StreamableMethod; - patch(options?: UpdatePersonParameters): StreamableMethod; + patch(options: UpdatePersonParameters): StreamableMethod; } // @public (undocumented) @@ -1504,7 +1492,7 @@ export interface DeletePersonDefaultResponse extends HttpResponse { export interface DeletePersonFace { delete(options?: DeletePersonFaceParameters): StreamableMethod; get(options?: GetPersonFaceParameters): StreamableMethod; - patch(options?: UpdatePersonFaceParameters): StreamableMethod; + patch(options: UpdatePersonFaceParameters): StreamableMethod; } // @public (undocumented) @@ -1573,7 +1561,7 @@ export type DeletePersonGroupParameters = RequestParameters; export interface DeletePersonGroupPerson { delete(options?: DeletePersonGroupPersonParameters): StreamableMethod; get(options?: GetPersonGroupPersonParameters): StreamableMethod; - patch(options?: UpdatePersonGroupPersonParameters): StreamableMethod; + patch(options: UpdatePersonGroupPersonParameters): StreamableMethod; } // @public @@ -1601,7 +1589,7 @@ export interface DeletePersonGroupPersonDefaultResponse extends HttpResponse { export interface DeletePersonGroupPersonFace { delete(options?: DeletePersonGroupPersonFaceParameters): StreamableMethod; get(options?: GetPersonGroupPersonFaceParameters): StreamableMethod; - patch(options?: UpdatePersonGroupPersonFaceParameters): StreamableMethod; + patch(options: UpdatePersonGroupPersonFaceParameters): StreamableMethod; } // @public @@ -1668,10 +1656,67 @@ export interface DetectDefaultResponse extends HttpResponse { status: string; } +// @public +export interface DetectFromSessionImageId200Response extends HttpResponse { + // (undocumented) + body: Array; + // (undocumented) + status: "200"; +} + +// @public (undocumented) +export interface DetectFromSessionImageIdBodyParam { + // (undocumented) + body: { + sessionImageId: string; + }; +} + +// @public (undocumented) +export interface DetectFromSessionImageIdDefaultHeaders { + "x-ms-error-code"?: string; +} + +// @public (undocumented) +export interface DetectFromSessionImageIdDefaultResponse extends HttpResponse { + // (undocumented) + body: FaceErrorResponseOutput; + // (undocumented) + headers: RawHttpHeaders & DetectFromSessionImageIdDefaultHeaders; + // (undocumented) + status: string; +} + +// @public (undocumented) +export interface DetectFromSessionImageIdMediaTypesParam { + contentType: "application/json"; +} + +// @public (undocumented) +export type DetectFromSessionImageIdParameters = DetectFromSessionImageIdQueryParam & DetectFromSessionImageIdMediaTypesParam & DetectFromSessionImageIdBodyParam & RequestParameters; + +// @public (undocumented) +export interface DetectFromSessionImageIdQueryParam { + // (undocumented) + queryParameters?: DetectFromSessionImageIdQueryParamProperties; +} + +// @public (undocumented) +export interface DetectFromSessionImageIdQueryParamProperties { + detectionModel?: DetectionModel; + faceIdTimeToLive?: number; + recognitionModel?: RecognitionModel; + returnFaceAttributes?: FaceAttributeType[]; + returnFaceId?: boolean; + returnFaceLandmarks?: boolean; + returnRecognitionModel?: boolean; +} + // @public (undocumented) export interface DetectFromUrl { post(options: DetectFromUrlParameters): StreamableMethod; post(options: DetectParameters): StreamableMethod; + post(options: DetectFromSessionImageIdParameters): StreamableMethod; } // @public @@ -1685,7 +1730,7 @@ export interface DetectFromUrl200Response extends HttpResponse { // @public (undocumented) export interface DetectFromUrlBodyParam { // (undocumented) - body?: { + body: { url: string; }; } @@ -1731,7 +1776,7 @@ export interface DetectFromUrlQueryParamProperties { } // @public -export type DetectionModel = string | "detection_01" | "detection_02" | "detection_03"; +export type DetectionModel = string; // @public (undocumented) export interface DetectMediaTypesParam { @@ -1766,7 +1811,7 @@ export interface DynamicPersonGroupOutput { } // @public -export type ExposureLevelOutput = string | "underExposure" | "goodExposure" | "overExposure"; +export type ExposureLevelOutput = string; // @public export interface ExposurePropertiesOutput { @@ -1792,16 +1837,15 @@ export interface FaceAttributesOutput { } // @public -export type FaceAttributeType = string | "headPose" | "glasses" | "occlusion" | "accessories" | "blur" | "exposure" | "noise" | "mask" | "qualityForRecognition" | "age" | "smile" | "facialHair" | "hair"; +export type FaceAttributeType = string; // @public (undocumented) export type FaceClient = Client & { path: Routes; }; -// @public (undocumented) +// @public export interface FaceClientOptions extends ClientOptions { - // (undocumented) apiVersion?: Versions; } @@ -1888,7 +1932,12 @@ export interface FaceRectangleOutput { } // @public -export type FaceSessionStatusOutput = string | "NotStarted" | "Started" | "ResultAvailable"; +export type FaceSessionStatusOutput = string; + +// @public +export interface FaceUserData { + userData?: string; +} // @public export interface FacialHairOutput { @@ -1899,9 +1948,9 @@ export interface FacialHairOutput { // @public (undocumented) export interface FindSimilar { - post(options?: FindSimilarParameters): StreamableMethod; - post(options?: FindSimilarFromFaceListParameters): StreamableMethod; - post(options?: FindSimilarFromLargeFaceListParameters): StreamableMethod; + post(options: FindSimilarParameters): StreamableMethod; + post(options: FindSimilarFromFaceListParameters): StreamableMethod; + post(options: FindSimilarFromLargeFaceListParameters): StreamableMethod; } // @public @@ -1915,7 +1964,7 @@ export interface FindSimilar200Response extends HttpResponse { // @public (undocumented) export interface FindSimilarBodyParam { // (undocumented) - body?: { + body: { faceId: string; maxNumOfCandidatesReturned?: number; mode?: FindSimilarMatchMode; @@ -1949,7 +1998,7 @@ export interface FindSimilarFromFaceList200Response extends HttpResponse { // @public (undocumented) export interface FindSimilarFromFaceListBodyParam { // (undocumented) - body?: { + body: { faceId: string; maxNumOfCandidatesReturned?: number; mode?: FindSimilarMatchMode; @@ -1986,7 +2035,7 @@ export interface FindSimilarFromLargeFaceList200Response extends HttpResponse { // @public (undocumented) export interface FindSimilarFromLargeFaceListBodyParam { // (undocumented) - body?: { + body: { faceId: string; maxNumOfCandidatesReturned?: number; mode?: FindSimilarMatchMode; @@ -2013,7 +2062,7 @@ export interface FindSimilarFromLargeFaceListDefaultResponse extends HttpRespons export type FindSimilarFromLargeFaceListParameters = FindSimilarFromLargeFaceListBodyParam & RequestParameters; // @public -export type FindSimilarMatchMode = string | "matchPerson" | "matchFace"; +export type FindSimilarMatchMode = string; // @public (undocumented) export type FindSimilarParameters = FindSimilarBodyParam & RequestParameters; @@ -3230,12 +3279,49 @@ export interface GetPersonsQueryParamProperties { top?: number; } +// @public (undocumented) +export interface GetSessionImage { + get(options?: GetSessionImageParameters): StreamableMethod; +} + +// @public (undocumented) +export interface GetSessionImage200Headers { + "content-type": "application/octet-stream"; +} + +// @public +export interface GetSessionImage200Response extends HttpResponse { + body: Uint8Array; + // (undocumented) + headers: RawHttpHeaders & GetSessionImage200Headers; + // (undocumented) + status: "200"; +} + +// @public (undocumented) +export interface GetSessionImageDefaultHeaders { + "x-ms-error-code"?: string; +} + +// @public (undocumented) +export interface GetSessionImageDefaultResponse extends HttpResponse { + // (undocumented) + body: FaceErrorResponseOutput; + // (undocumented) + headers: RawHttpHeaders & GetSessionImageDefaultHeaders; + // (undocumented) + status: string; +} + +// @public (undocumented) +export type GetSessionImageParameters = RequestParameters; + // @public -export type GlassesTypeOutput = string | "noGlasses" | "readingGlasses" | "sunglasses" | "swimmingGoggles"; +export type GlassesTypeOutput = string; // @public (undocumented) export interface Group { - post(options?: GroupParameters): StreamableMethod; + post(options: GroupParameters): StreamableMethod; } // @public @@ -3249,7 +3335,7 @@ export interface Group200Response extends HttpResponse { // @public (undocumented) export interface GroupBodyParam { // (undocumented) - body?: { + body: { faceIds: string[]; }; } @@ -3285,7 +3371,7 @@ export interface HairColorOutput { } // @public -export type HairColorTypeOutput = string | "unknown" | "white" | "gray" | "blond" | "brown" | "red" | "black" | "other"; +export type HairColorTypeOutput = string; // @public export interface HairPropertiesOutput { @@ -3324,7 +3410,7 @@ export interface IdentifyFromDynamicPersonGroup200Response extends HttpResponse // @public (undocumented) export interface IdentifyFromDynamicPersonGroupBodyParam { // (undocumented) - body?: { + body: { faceIds: string[]; dynamicPersonGroupId: string; maxNumOfCandidatesReturned?: number; @@ -3361,7 +3447,7 @@ export interface IdentifyFromLargePersonGroup200Response extends HttpResponse { // @public (undocumented) export interface IdentifyFromLargePersonGroupBodyParam { // (undocumented) - body?: { + body: { faceIds: string[]; largePersonGroupId: string; maxNumOfCandidatesReturned?: number; @@ -3398,7 +3484,7 @@ export interface IdentifyFromPersonDirectory200Response extends HttpResponse { // @public (undocumented) export interface IdentifyFromPersonDirectoryBodyParam { // (undocumented) - body?: { + body: { faceIds: string[]; personIds: string[]; maxNumOfCandidatesReturned?: number; @@ -3426,10 +3512,10 @@ export type IdentifyFromPersonDirectoryParameters = IdentifyFromPersonDirectoryB // @public (undocumented) export interface IdentifyFromPersonGroup { - post(options?: IdentifyFromPersonGroupParameters): StreamableMethod; - post(options?: IdentifyFromLargePersonGroupParameters): StreamableMethod; - post(options?: IdentifyFromPersonDirectoryParameters): StreamableMethod; - post(options?: IdentifyFromDynamicPersonGroupParameters): StreamableMethod; + post(options: IdentifyFromPersonGroupParameters): StreamableMethod; + post(options: IdentifyFromLargePersonGroupParameters): StreamableMethod; + post(options: IdentifyFromPersonDirectoryParameters): StreamableMethod; + post(options: IdentifyFromDynamicPersonGroupParameters): StreamableMethod; } // @public @@ -3443,7 +3529,7 @@ export interface IdentifyFromPersonGroup200Response extends HttpResponse { // @public (undocumented) export interface IdentifyFromPersonGroupBodyParam { // (undocumented) - body?: { + body: { faceIds: string[]; personGroupId: string; maxNumOfCandidatesReturned?: number; @@ -3470,7 +3556,7 @@ export interface IdentifyFromPersonGroupDefaultResponse extends HttpResponse { export type IdentifyFromPersonGroupParameters = IdentifyFromPersonGroupBodyParam & RequestParameters; // @public -export type ImageTypeOutput = string | "Color" | "Infrared" | "Depth"; +export type ImageTypeOutput = string; // @public (undocumented) export function isUnexpected(response: GetOperationResult200Response | GetOperationResultDefaultResponse): response is GetOperationResultDefaultResponse; @@ -3481,6 +3567,9 @@ export function isUnexpected(response: DetectFromUrl200Response | DetectFromUrlD // @public (undocumented) export function isUnexpected(response: Detect200Response | DetectDefaultResponse): response is DetectDefaultResponse; +// @public (undocumented) +export function isUnexpected(response: DetectFromSessionImageId200Response | DetectFromSessionImageIdDefaultResponse): response is DetectFromSessionImageIdDefaultResponse; + // @public (undocumented) export function isUnexpected(response: FindSimilar200Response | FindSimilarDefaultResponse): response is FindSimilarDefaultResponse; @@ -3518,262 +3607,265 @@ export function isUnexpected(response: VerifyFromPersonDirectory200Response | Ve export function isUnexpected(response: Group200Response | GroupDefaultResponse): response is GroupDefaultResponse; // @public (undocumented) -export function isUnexpected(response: CreateLivenessSession200Response | CreateLivenessSessionDefaultResponse): response is CreateLivenessSessionDefaultResponse; +export function isUnexpected(response: CreateFaceList200Response | CreateFaceListDefaultResponse): response is CreateFaceListDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLivenessSessions200Response | GetLivenessSessionsDefaultResponse): response is GetLivenessSessionsDefaultResponse; +export function isUnexpected(response: DeleteFaceList200Response | DeleteFaceListDefaultResponse): response is DeleteFaceListDefaultResponse; // @public (undocumented) -export function isUnexpected(response: DeleteLivenessSession200Response | DeleteLivenessSessionDefaultResponse): response is DeleteLivenessSessionDefaultResponse; +export function isUnexpected(response: GetFaceList200Response | GetFaceListDefaultResponse): response is GetFaceListDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLivenessSessionResult200Response | GetLivenessSessionResultDefaultResponse): response is GetLivenessSessionResultDefaultResponse; +export function isUnexpected(response: UpdateFaceList200Response | UpdateFaceListDefaultResponse): response is UpdateFaceListDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLivenessSessionAuditEntries200Response | GetLivenessSessionAuditEntriesDefaultResponse): response is GetLivenessSessionAuditEntriesDefaultResponse; +export function isUnexpected(response: GetFaceLists200Response | GetFaceListsDefaultResponse): response is GetFaceListsDefaultResponse; // @public (undocumented) -export function isUnexpected(response: CreateLivenessWithVerifySessionWithVerifyImage200Response | CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse): response is CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse; +export function isUnexpected(response: AddFaceListFaceFromUrl200Response | AddFaceListFaceFromUrlDefaultResponse): response is AddFaceListFaceFromUrlDefaultResponse; // @public (undocumented) -export function isUnexpected(response: CreateLivenessWithVerifySession200Response | CreateLivenessWithVerifySessionDefaultResponse): response is CreateLivenessWithVerifySessionDefaultResponse; +export function isUnexpected(response: AddFaceListFace200Response | AddFaceListFaceDefaultResponse): response is AddFaceListFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLivenessWithVerifySessions200Response | GetLivenessWithVerifySessionsDefaultResponse): response is GetLivenessWithVerifySessionsDefaultResponse; +export function isUnexpected(response: DeleteFaceListFace200Response | DeleteFaceListFaceDefaultResponse): response is DeleteFaceListFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: DeleteLivenessWithVerifySession200Response | DeleteLivenessWithVerifySessionDefaultResponse): response is DeleteLivenessWithVerifySessionDefaultResponse; +export function isUnexpected(response: CreateLargeFaceList200Response | CreateLargeFaceListDefaultResponse): response is CreateLargeFaceListDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLivenessWithVerifySessionResult200Response | GetLivenessWithVerifySessionResultDefaultResponse): response is GetLivenessWithVerifySessionResultDefaultResponse; +export function isUnexpected(response: DeleteLargeFaceList200Response | DeleteLargeFaceListDefaultResponse): response is DeleteLargeFaceListDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLivenessWithVerifySessionAuditEntries200Response | GetLivenessWithVerifySessionAuditEntriesDefaultResponse): response is GetLivenessWithVerifySessionAuditEntriesDefaultResponse; +export function isUnexpected(response: GetLargeFaceList200Response | GetLargeFaceListDefaultResponse): response is GetLargeFaceListDefaultResponse; // @public (undocumented) -export function isUnexpected(response: CreateFaceList200Response | CreateFaceListDefaultResponse): response is CreateFaceListDefaultResponse; +export function isUnexpected(response: UpdateLargeFaceList200Response | UpdateLargeFaceListDefaultResponse): response is UpdateLargeFaceListDefaultResponse; // @public (undocumented) -export function isUnexpected(response: DeleteFaceList200Response | DeleteFaceListDefaultResponse): response is DeleteFaceListDefaultResponse; +export function isUnexpected(response: GetLargeFaceLists200Response | GetLargeFaceListsDefaultResponse): response is GetLargeFaceListsDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetFaceList200Response | GetFaceListDefaultResponse): response is GetFaceListDefaultResponse; +export function isUnexpected(response: GetLargeFaceListTrainingStatus200Response | GetLargeFaceListTrainingStatusDefaultResponse): response is GetLargeFaceListTrainingStatusDefaultResponse; // @public (undocumented) -export function isUnexpected(response: UpdateFaceList200Response | UpdateFaceListDefaultResponse): response is UpdateFaceListDefaultResponse; +export function isUnexpected(response: TrainLargeFaceList202Response | TrainLargeFaceListLogicalResponse | TrainLargeFaceListDefaultResponse): response is TrainLargeFaceListDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetFaceLists200Response | GetFaceListsDefaultResponse): response is GetFaceListsDefaultResponse; +export function isUnexpected(response: AddLargeFaceListFaceFromUrl200Response | AddLargeFaceListFaceFromUrlDefaultResponse): response is AddLargeFaceListFaceFromUrlDefaultResponse; // @public (undocumented) -export function isUnexpected(response: AddFaceListFaceFromUrl200Response | AddFaceListFaceFromUrlDefaultResponse): response is AddFaceListFaceFromUrlDefaultResponse; +export function isUnexpected(response: AddLargeFaceListFace200Response | AddLargeFaceListFaceDefaultResponse): response is AddLargeFaceListFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: AddFaceListFace200Response | AddFaceListFaceDefaultResponse): response is AddFaceListFaceDefaultResponse; +export function isUnexpected(response: GetLargeFaceListFaces200Response | GetLargeFaceListFacesDefaultResponse): response is GetLargeFaceListFacesDefaultResponse; // @public (undocumented) -export function isUnexpected(response: DeleteFaceListFace200Response | DeleteFaceListFaceDefaultResponse): response is DeleteFaceListFaceDefaultResponse; +export function isUnexpected(response: DeleteLargeFaceListFace200Response | DeleteLargeFaceListFaceDefaultResponse): response is DeleteLargeFaceListFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: CreateLargeFaceList200Response | CreateLargeFaceListDefaultResponse): response is CreateLargeFaceListDefaultResponse; +export function isUnexpected(response: GetLargeFaceListFace200Response | GetLargeFaceListFaceDefaultResponse): response is GetLargeFaceListFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: DeleteLargeFaceList200Response | DeleteLargeFaceListDefaultResponse): response is DeleteLargeFaceListDefaultResponse; +export function isUnexpected(response: UpdateLargeFaceListFace200Response | UpdateLargeFaceListFaceDefaultResponse): response is UpdateLargeFaceListFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLargeFaceList200Response | GetLargeFaceListDefaultResponse): response is GetLargeFaceListDefaultResponse; +export function isUnexpected(response: CreatePersonGroup200Response | CreatePersonGroupDefaultResponse): response is CreatePersonGroupDefaultResponse; // @public (undocumented) -export function isUnexpected(response: UpdateLargeFaceList200Response | UpdateLargeFaceListDefaultResponse): response is UpdateLargeFaceListDefaultResponse; +export function isUnexpected(response: DeletePersonGroup200Response | DeletePersonGroupDefaultResponse): response is DeletePersonGroupDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLargeFaceLists200Response | GetLargeFaceListsDefaultResponse): response is GetLargeFaceListsDefaultResponse; +export function isUnexpected(response: GetPersonGroup200Response | GetPersonGroupDefaultResponse): response is GetPersonGroupDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLargeFaceListTrainingStatus200Response | GetLargeFaceListTrainingStatusDefaultResponse): response is GetLargeFaceListTrainingStatusDefaultResponse; +export function isUnexpected(response: UpdatePersonGroup200Response | UpdatePersonGroupDefaultResponse): response is UpdatePersonGroupDefaultResponse; // @public (undocumented) -export function isUnexpected(response: TrainLargeFaceList202Response | TrainLargeFaceListLogicalResponse | TrainLargeFaceListDefaultResponse): response is TrainLargeFaceListDefaultResponse; +export function isUnexpected(response: GetPersonGroups200Response | GetPersonGroupsDefaultResponse): response is GetPersonGroupsDefaultResponse; // @public (undocumented) -export function isUnexpected(response: AddLargeFaceListFaceFromUrl200Response | AddLargeFaceListFaceFromUrlDefaultResponse): response is AddLargeFaceListFaceFromUrlDefaultResponse; +export function isUnexpected(response: GetPersonGroupTrainingStatus200Response | GetPersonGroupTrainingStatusDefaultResponse): response is GetPersonGroupTrainingStatusDefaultResponse; // @public (undocumented) -export function isUnexpected(response: AddLargeFaceListFace200Response | AddLargeFaceListFaceDefaultResponse): response is AddLargeFaceListFaceDefaultResponse; +export function isUnexpected(response: TrainPersonGroup202Response | TrainPersonGroupLogicalResponse | TrainPersonGroupDefaultResponse): response is TrainPersonGroupDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLargeFaceListFaces200Response | GetLargeFaceListFacesDefaultResponse): response is GetLargeFaceListFacesDefaultResponse; +export function isUnexpected(response: CreatePersonGroupPerson200Response | CreatePersonGroupPersonDefaultResponse): response is CreatePersonGroupPersonDefaultResponse; // @public (undocumented) -export function isUnexpected(response: DeleteLargeFaceListFace200Response | DeleteLargeFaceListFaceDefaultResponse): response is DeleteLargeFaceListFaceDefaultResponse; +export function isUnexpected(response: GetPersonGroupPersons200Response | GetPersonGroupPersonsDefaultResponse): response is GetPersonGroupPersonsDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLargeFaceListFace200Response | GetLargeFaceListFaceDefaultResponse): response is GetLargeFaceListFaceDefaultResponse; +export function isUnexpected(response: DeletePersonGroupPerson200Response | DeletePersonGroupPersonDefaultResponse): response is DeletePersonGroupPersonDefaultResponse; // @public (undocumented) -export function isUnexpected(response: UpdateLargeFaceListFace200Response | UpdateLargeFaceListFaceDefaultResponse): response is UpdateLargeFaceListFaceDefaultResponse; +export function isUnexpected(response: GetPersonGroupPerson200Response | GetPersonGroupPersonDefaultResponse): response is GetPersonGroupPersonDefaultResponse; // @public (undocumented) -export function isUnexpected(response: CreatePerson202Response | CreatePersonLogicalResponse | CreatePersonDefaultResponse): response is CreatePersonDefaultResponse; +export function isUnexpected(response: UpdatePersonGroupPerson200Response | UpdatePersonGroupPersonDefaultResponse): response is UpdatePersonGroupPersonDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetPersons200Response | GetPersonsDefaultResponse): response is GetPersonsDefaultResponse; +export function isUnexpected(response: AddPersonGroupPersonFaceFromUrl200Response | AddPersonGroupPersonFaceFromUrlDefaultResponse): response is AddPersonGroupPersonFaceFromUrlDefaultResponse; // @public (undocumented) -export function isUnexpected(response: DeletePerson202Response | DeletePersonLogicalResponse | DeletePersonDefaultResponse): response is DeletePersonDefaultResponse; +export function isUnexpected(response: AddPersonGroupPersonFace200Response | AddPersonGroupPersonFaceDefaultResponse): response is AddPersonGroupPersonFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetPerson200Response | GetPersonDefaultResponse): response is GetPersonDefaultResponse; +export function isUnexpected(response: DeletePersonGroupPersonFace200Response | DeletePersonGroupPersonFaceDefaultResponse): response is DeletePersonGroupPersonFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: UpdatePerson200Response | UpdatePersonDefaultResponse): response is UpdatePersonDefaultResponse; +export function isUnexpected(response: GetPersonGroupPersonFace200Response | GetPersonGroupPersonFaceDefaultResponse): response is GetPersonGroupPersonFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetDynamicPersonGroupReferences200Response | GetDynamicPersonGroupReferencesDefaultResponse): response is GetDynamicPersonGroupReferencesDefaultResponse; +export function isUnexpected(response: UpdatePersonGroupPersonFace200Response | UpdatePersonGroupPersonFaceDefaultResponse): response is UpdatePersonGroupPersonFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: AddPersonFace202Response | AddPersonFaceLogicalResponse | AddPersonFaceDefaultResponse): response is AddPersonFaceDefaultResponse; +export function isUnexpected(response: CreateLargePersonGroup200Response | CreateLargePersonGroupDefaultResponse): response is CreateLargePersonGroupDefaultResponse; // @public (undocumented) -export function isUnexpected(response: AddPersonFaceFromUrl202Response | AddPersonFaceFromUrlLogicalResponse | AddPersonFaceFromUrlDefaultResponse): response is AddPersonFaceFromUrlDefaultResponse; +export function isUnexpected(response: DeleteLargePersonGroup200Response | DeleteLargePersonGroupDefaultResponse): response is DeleteLargePersonGroupDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetPersonFaces200Response | GetPersonFacesDefaultResponse): response is GetPersonFacesDefaultResponse; +export function isUnexpected(response: GetLargePersonGroup200Response | GetLargePersonGroupDefaultResponse): response is GetLargePersonGroupDefaultResponse; // @public (undocumented) -export function isUnexpected(response: DeletePersonFace202Response | DeletePersonFaceLogicalResponse | DeletePersonFaceDefaultResponse): response is DeletePersonFaceDefaultResponse; +export function isUnexpected(response: UpdateLargePersonGroup200Response | UpdateLargePersonGroupDefaultResponse): response is UpdateLargePersonGroupDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetPersonFace200Response | GetPersonFaceDefaultResponse): response is GetPersonFaceDefaultResponse; +export function isUnexpected(response: GetLargePersonGroups200Response | GetLargePersonGroupsDefaultResponse): response is GetLargePersonGroupsDefaultResponse; // @public (undocumented) -export function isUnexpected(response: UpdatePersonFace200Response | UpdatePersonFaceDefaultResponse): response is UpdatePersonFaceDefaultResponse; +export function isUnexpected(response: GetLargePersonGroupTrainingStatus200Response | GetLargePersonGroupTrainingStatusDefaultResponse): response is GetLargePersonGroupTrainingStatusDefaultResponse; // @public (undocumented) -export function isUnexpected(response: CreateDynamicPersonGroupWithPerson202Response | CreateDynamicPersonGroupWithPersonLogicalResponse | CreateDynamicPersonGroupWithPersonDefaultResponse): response is CreateDynamicPersonGroupWithPersonDefaultResponse; +export function isUnexpected(response: TrainLargePersonGroup202Response | TrainLargePersonGroupLogicalResponse | TrainLargePersonGroupDefaultResponse): response is TrainLargePersonGroupDefaultResponse; // @public (undocumented) -export function isUnexpected(response: CreateDynamicPersonGroup200Response | CreateDynamicPersonGroupDefaultResponse): response is CreateDynamicPersonGroupDefaultResponse; +export function isUnexpected(response: CreateLargePersonGroupPerson200Response | CreateLargePersonGroupPersonDefaultResponse): response is CreateLargePersonGroupPersonDefaultResponse; // @public (undocumented) -export function isUnexpected(response: DeleteDynamicPersonGroup202Response | DeleteDynamicPersonGroupLogicalResponse | DeleteDynamicPersonGroupDefaultResponse): response is DeleteDynamicPersonGroupDefaultResponse; +export function isUnexpected(response: GetLargePersonGroupPersons200Response | GetLargePersonGroupPersonsDefaultResponse): response is GetLargePersonGroupPersonsDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetDynamicPersonGroup200Response | GetDynamicPersonGroupDefaultResponse): response is GetDynamicPersonGroupDefaultResponse; +export function isUnexpected(response: DeleteLargePersonGroupPerson200Response | DeleteLargePersonGroupPersonDefaultResponse): response is DeleteLargePersonGroupPersonDefaultResponse; // @public (undocumented) -export function isUnexpected(response: UpdateDynamicPersonGroupWithPersonChanges202Response | UpdateDynamicPersonGroupWithPersonChangesLogicalResponse | UpdateDynamicPersonGroupWithPersonChangesDefaultResponse): response is UpdateDynamicPersonGroupWithPersonChangesDefaultResponse; +export function isUnexpected(response: GetLargePersonGroupPerson200Response | GetLargePersonGroupPersonDefaultResponse): response is GetLargePersonGroupPersonDefaultResponse; // @public (undocumented) -export function isUnexpected(response: UpdateDynamicPersonGroup200Response | UpdateDynamicPersonGroupDefaultResponse): response is UpdateDynamicPersonGroupDefaultResponse; +export function isUnexpected(response: UpdateLargePersonGroupPerson200Response | UpdateLargePersonGroupPersonDefaultResponse): response is UpdateLargePersonGroupPersonDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetDynamicPersonGroups200Response | GetDynamicPersonGroupsDefaultResponse): response is GetDynamicPersonGroupsDefaultResponse; +export function isUnexpected(response: AddLargePersonGroupPersonFaceFromUrl200Response | AddLargePersonGroupPersonFaceFromUrlDefaultResponse): response is AddLargePersonGroupPersonFaceFromUrlDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetDynamicPersonGroupPersons200Response | GetDynamicPersonGroupPersonsDefaultResponse): response is GetDynamicPersonGroupPersonsDefaultResponse; +export function isUnexpected(response: AddLargePersonGroupPersonFace200Response | AddLargePersonGroupPersonFaceDefaultResponse): response is AddLargePersonGroupPersonFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: CreatePersonGroup200Response | CreatePersonGroupDefaultResponse): response is CreatePersonGroupDefaultResponse; +export function isUnexpected(response: DeleteLargePersonGroupPersonFace200Response | DeleteLargePersonGroupPersonFaceDefaultResponse): response is DeleteLargePersonGroupPersonFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: DeletePersonGroup200Response | DeletePersonGroupDefaultResponse): response is DeletePersonGroupDefaultResponse; +export function isUnexpected(response: GetLargePersonGroupPersonFace200Response | GetLargePersonGroupPersonFaceDefaultResponse): response is GetLargePersonGroupPersonFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetPersonGroup200Response | GetPersonGroupDefaultResponse): response is GetPersonGroupDefaultResponse; +export function isUnexpected(response: UpdateLargePersonGroupPersonFace200Response | UpdateLargePersonGroupPersonFaceDefaultResponse): response is UpdateLargePersonGroupPersonFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: UpdatePersonGroup200Response | UpdatePersonGroupDefaultResponse): response is UpdatePersonGroupDefaultResponse; +export function isUnexpected(response: CreateLivenessSession200Response | CreateLivenessSessionDefaultResponse): response is CreateLivenessSessionDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetPersonGroups200Response | GetPersonGroupsDefaultResponse): response is GetPersonGroupsDefaultResponse; +export function isUnexpected(response: GetLivenessSessions200Response | GetLivenessSessionsDefaultResponse): response is GetLivenessSessionsDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetPersonGroupTrainingStatus200Response | GetPersonGroupTrainingStatusDefaultResponse): response is GetPersonGroupTrainingStatusDefaultResponse; +export function isUnexpected(response: DeleteLivenessSession200Response | DeleteLivenessSessionDefaultResponse): response is DeleteLivenessSessionDefaultResponse; // @public (undocumented) -export function isUnexpected(response: TrainPersonGroup202Response | TrainPersonGroupLogicalResponse | TrainPersonGroupDefaultResponse): response is TrainPersonGroupDefaultResponse; +export function isUnexpected(response: GetLivenessSessionResult200Response | GetLivenessSessionResultDefaultResponse): response is GetLivenessSessionResultDefaultResponse; // @public (undocumented) -export function isUnexpected(response: CreatePersonGroupPerson200Response | CreatePersonGroupPersonDefaultResponse): response is CreatePersonGroupPersonDefaultResponse; +export function isUnexpected(response: GetLivenessSessionAuditEntries200Response | GetLivenessSessionAuditEntriesDefaultResponse): response is GetLivenessSessionAuditEntriesDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetPersonGroupPersons200Response | GetPersonGroupPersonsDefaultResponse): response is GetPersonGroupPersonsDefaultResponse; +export function isUnexpected(response: CreateLivenessWithVerifySessionWithVerifyImage200Response | CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse): response is CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse; // @public (undocumented) -export function isUnexpected(response: DeletePersonGroupPerson200Response | DeletePersonGroupPersonDefaultResponse): response is DeletePersonGroupPersonDefaultResponse; +export function isUnexpected(response: CreateLivenessWithVerifySession200Response | CreateLivenessWithVerifySessionDefaultResponse): response is CreateLivenessWithVerifySessionDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetPersonGroupPerson200Response | GetPersonGroupPersonDefaultResponse): response is GetPersonGroupPersonDefaultResponse; +export function isUnexpected(response: GetLivenessWithVerifySessions200Response | GetLivenessWithVerifySessionsDefaultResponse): response is GetLivenessWithVerifySessionsDefaultResponse; // @public (undocumented) -export function isUnexpected(response: UpdatePersonGroupPerson200Response | UpdatePersonGroupPersonDefaultResponse): response is UpdatePersonGroupPersonDefaultResponse; +export function isUnexpected(response: DeleteLivenessWithVerifySession200Response | DeleteLivenessWithVerifySessionDefaultResponse): response is DeleteLivenessWithVerifySessionDefaultResponse; // @public (undocumented) -export function isUnexpected(response: AddPersonGroupPersonFaceFromUrl200Response | AddPersonGroupPersonFaceFromUrlDefaultResponse): response is AddPersonGroupPersonFaceFromUrlDefaultResponse; +export function isUnexpected(response: GetLivenessWithVerifySessionResult200Response | GetLivenessWithVerifySessionResultDefaultResponse): response is GetLivenessWithVerifySessionResultDefaultResponse; // @public (undocumented) -export function isUnexpected(response: AddPersonGroupPersonFace200Response | AddPersonGroupPersonFaceDefaultResponse): response is AddPersonGroupPersonFaceDefaultResponse; +export function isUnexpected(response: GetLivenessWithVerifySessionAuditEntries200Response | GetLivenessWithVerifySessionAuditEntriesDefaultResponse): response is GetLivenessWithVerifySessionAuditEntriesDefaultResponse; // @public (undocumented) -export function isUnexpected(response: DeletePersonGroupPersonFace200Response | DeletePersonGroupPersonFaceDefaultResponse): response is DeletePersonGroupPersonFaceDefaultResponse; +export function isUnexpected(response: GetSessionImage200Response | GetSessionImageDefaultResponse): response is GetSessionImageDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetPersonGroupPersonFace200Response | GetPersonGroupPersonFaceDefaultResponse): response is GetPersonGroupPersonFaceDefaultResponse; +export function isUnexpected(response: CreatePerson202Response | CreatePersonLogicalResponse | CreatePersonDefaultResponse): response is CreatePersonDefaultResponse; // @public (undocumented) -export function isUnexpected(response: UpdatePersonGroupPersonFace200Response | UpdatePersonGroupPersonFaceDefaultResponse): response is UpdatePersonGroupPersonFaceDefaultResponse; +export function isUnexpected(response: GetPersons200Response | GetPersonsDefaultResponse): response is GetPersonsDefaultResponse; // @public (undocumented) -export function isUnexpected(response: CreateLargePersonGroup200Response | CreateLargePersonGroupDefaultResponse): response is CreateLargePersonGroupDefaultResponse; +export function isUnexpected(response: DeletePerson202Response | DeletePersonLogicalResponse | DeletePersonDefaultResponse): response is DeletePersonDefaultResponse; // @public (undocumented) -export function isUnexpected(response: DeleteLargePersonGroup200Response | DeleteLargePersonGroupDefaultResponse): response is DeleteLargePersonGroupDefaultResponse; +export function isUnexpected(response: GetPerson200Response | GetPersonDefaultResponse): response is GetPersonDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLargePersonGroup200Response | GetLargePersonGroupDefaultResponse): response is GetLargePersonGroupDefaultResponse; +export function isUnexpected(response: UpdatePerson200Response | UpdatePersonDefaultResponse): response is UpdatePersonDefaultResponse; // @public (undocumented) -export function isUnexpected(response: UpdateLargePersonGroup200Response | UpdateLargePersonGroupDefaultResponse): response is UpdateLargePersonGroupDefaultResponse; +export function isUnexpected(response: GetDynamicPersonGroupReferences200Response | GetDynamicPersonGroupReferencesDefaultResponse): response is GetDynamicPersonGroupReferencesDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLargePersonGroups200Response | GetLargePersonGroupsDefaultResponse): response is GetLargePersonGroupsDefaultResponse; +export function isUnexpected(response: AddPersonFace202Response | AddPersonFaceLogicalResponse | AddPersonFaceDefaultResponse): response is AddPersonFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLargePersonGroupTrainingStatus200Response | GetLargePersonGroupTrainingStatusDefaultResponse): response is GetLargePersonGroupTrainingStatusDefaultResponse; +export function isUnexpected(response: AddPersonFaceFromUrl202Response | AddPersonFaceFromUrlLogicalResponse | AddPersonFaceFromUrlDefaultResponse): response is AddPersonFaceFromUrlDefaultResponse; // @public (undocumented) -export function isUnexpected(response: TrainLargePersonGroup202Response | TrainLargePersonGroupLogicalResponse | TrainLargePersonGroupDefaultResponse): response is TrainLargePersonGroupDefaultResponse; +export function isUnexpected(response: GetPersonFaces200Response | GetPersonFacesDefaultResponse): response is GetPersonFacesDefaultResponse; // @public (undocumented) -export function isUnexpected(response: CreateLargePersonGroupPerson200Response | CreateLargePersonGroupPersonDefaultResponse): response is CreateLargePersonGroupPersonDefaultResponse; +export function isUnexpected(response: DeletePersonFace202Response | DeletePersonFaceLogicalResponse | DeletePersonFaceDefaultResponse): response is DeletePersonFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLargePersonGroupPersons200Response | GetLargePersonGroupPersonsDefaultResponse): response is GetLargePersonGroupPersonsDefaultResponse; +export function isUnexpected(response: GetPersonFace200Response | GetPersonFaceDefaultResponse): response is GetPersonFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: DeleteLargePersonGroupPerson200Response | DeleteLargePersonGroupPersonDefaultResponse): response is DeleteLargePersonGroupPersonDefaultResponse; +export function isUnexpected(response: UpdatePersonFace200Response | UpdatePersonFaceDefaultResponse): response is UpdatePersonFaceDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLargePersonGroupPerson200Response | GetLargePersonGroupPersonDefaultResponse): response is GetLargePersonGroupPersonDefaultResponse; +export function isUnexpected(response: CreateDynamicPersonGroupWithPerson202Response | CreateDynamicPersonGroupWithPersonLogicalResponse | CreateDynamicPersonGroupWithPersonDefaultResponse): response is CreateDynamicPersonGroupWithPersonDefaultResponse; // @public (undocumented) -export function isUnexpected(response: UpdateLargePersonGroupPerson200Response | UpdateLargePersonGroupPersonDefaultResponse): response is UpdateLargePersonGroupPersonDefaultResponse; +export function isUnexpected(response: CreateDynamicPersonGroup200Response | CreateDynamicPersonGroupDefaultResponse): response is CreateDynamicPersonGroupDefaultResponse; // @public (undocumented) -export function isUnexpected(response: AddLargePersonGroupPersonFaceFromUrl200Response | AddLargePersonGroupPersonFaceFromUrlDefaultResponse): response is AddLargePersonGroupPersonFaceFromUrlDefaultResponse; +export function isUnexpected(response: DeleteDynamicPersonGroup202Response | DeleteDynamicPersonGroupLogicalResponse | DeleteDynamicPersonGroupDefaultResponse): response is DeleteDynamicPersonGroupDefaultResponse; // @public (undocumented) -export function isUnexpected(response: AddLargePersonGroupPersonFace200Response | AddLargePersonGroupPersonFaceDefaultResponse): response is AddLargePersonGroupPersonFaceDefaultResponse; +export function isUnexpected(response: GetDynamicPersonGroup200Response | GetDynamicPersonGroupDefaultResponse): response is GetDynamicPersonGroupDefaultResponse; // @public (undocumented) -export function isUnexpected(response: DeleteLargePersonGroupPersonFace200Response | DeleteLargePersonGroupPersonFaceDefaultResponse): response is DeleteLargePersonGroupPersonFaceDefaultResponse; +export function isUnexpected(response: UpdateDynamicPersonGroupWithPersonChanges202Response | UpdateDynamicPersonGroupWithPersonChangesLogicalResponse | UpdateDynamicPersonGroupWithPersonChangesDefaultResponse): response is UpdateDynamicPersonGroupWithPersonChangesDefaultResponse; // @public (undocumented) -export function isUnexpected(response: GetLargePersonGroupPersonFace200Response | GetLargePersonGroupPersonFaceDefaultResponse): response is GetLargePersonGroupPersonFaceDefaultResponse; +export function isUnexpected(response: UpdateDynamicPersonGroup200Response | UpdateDynamicPersonGroupDefaultResponse): response is UpdateDynamicPersonGroupDefaultResponse; // @public (undocumented) -export function isUnexpected(response: UpdateLargePersonGroupPersonFace200Response | UpdateLargePersonGroupPersonFaceDefaultResponse): response is UpdateLargePersonGroupPersonFaceDefaultResponse; +export function isUnexpected(response: GetDynamicPersonGroups200Response | GetDynamicPersonGroupsDefaultResponse): response is GetDynamicPersonGroupsDefaultResponse; + +// @public (undocumented) +export function isUnexpected(response: GetDynamicPersonGroupPersons200Response | GetDynamicPersonGroupPersonsDefaultResponse): response is GetDynamicPersonGroupPersonsDefaultResponse; // @public export interface LandmarkCoordinateOutput { @@ -3834,13 +3926,16 @@ export interface ListPersonResultOutput { } // @public -export type LivenessDecisionOutput = string | "uncertain" | "realface" | "spoofface"; +export type LivenessDecisionOutput = string; // @public -export type LivenessModelOutput = string | "2020-02-15-preview.01" | "2021-11-12-preview.03" | "2022-10-15-preview.04" | "2023-03-02-preview.05"; +export type LivenessModel = string; // @public -export type LivenessOperationMode = string | "Passive" | "PassiveActive"; +export type LivenessModelOutput = string; + +// @public +export type LivenessOperationMode = string; // @public export interface LivenessOutputsTargetOutput { @@ -3868,6 +3963,8 @@ export interface LivenessSessionAuditEntryOutput { requestId: string; response: AuditLivenessResponseInfoOutput; sessionId: string; + sessionImageId?: string; + verifyImageHash?: string; } // @public @@ -3924,10 +4021,10 @@ export interface MaskPropertiesOutput { } // @public -export type MaskTypeOutput = string | "faceMask" | "noMask" | "otherMaskOrOcclusion" | "uncertain"; +export type MaskTypeOutput = string; // @public -export type NoiseLevelOutput = string | "low" | "medium" | "high"; +export type NoiseLevelOutput = string; // @public export interface NoisePropertiesOutput { @@ -3953,7 +4050,7 @@ export interface OperationResultOutput { } // @public -export type OperationStatusOutput = string | "notStarted" | "running" | "succeeded" | "failed"; +export type OperationStatusOutput = string; // @public export interface PersonDirectoryFaceOutput { @@ -3991,13 +4088,13 @@ export interface PersonGroupPersonOutput { } // @public -export type QualityForRecognitionOutput = string | "low" | "medium" | "high"; +export type QualityForRecognitionOutput = string; // @public -export type RecognitionModel = string | "recognition_01" | "recognition_02" | "recognition_03" | "recognition_04"; +export type RecognitionModel = string; // @public -export type RecognitionModelOutput = string | "recognition_01" | "recognition_02" | "recognition_03" | "recognition_04"; +export type RecognitionModelOutput = string; // @public (undocumented) export interface Routes { @@ -4007,12 +4104,6 @@ export interface Routes { (path: "/identify"): IdentifyFromPersonGroup; (path: "/verify"): VerifyFaceToFace; (path: "/group"): Group; - (path: "/detectLiveness/singleModal/sessions"): CreateLivenessSession; - (path: "/detectLiveness/singleModal/sessions/{sessionId}", sessionId: string): DeleteLivenessSession; - (path: "/detectLiveness/singleModal/sessions/{sessionId}/audit", sessionId: string): GetLivenessSessionAuditEntries; - (path: "/detectLivenessWithVerify/singleModal/sessions"): CreateLivenessWithVerifySessionWithVerifyImage; - (path: "/detectLivenessWithVerify/singleModal/sessions/{sessionId}", sessionId: string): DeleteLivenessWithVerifySession; - (path: "/detectLivenessWithVerify/singleModal/sessions/{sessionId}/audit", sessionId: string): GetLivenessWithVerifySessionAuditEntries; (path: "/facelists/{faceListId}", faceListId: string): CreateFaceList; (path: "/facelists"): GetFaceLists; (path: "/facelists/{faceListId}/persistedfaces", faceListId: string): AddFaceListFaceFromUrl; @@ -4023,14 +4114,6 @@ export interface Routes { (path: "/largefacelists/{largeFaceListId}/train", largeFaceListId: string): TrainLargeFaceList; (path: "/largefacelists/{largeFaceListId}/persistedfaces", largeFaceListId: string): AddLargeFaceListFaceFromUrl; (path: "/largefacelists/{largeFaceListId}/persistedfaces/{persistedFaceId}", largeFaceListId: string, persistedFaceId: string): DeleteLargeFaceListFace; - (path: "/persons"): CreatePerson; - (path: "/persons/{personId}", personId: string): DeletePerson; - (path: "/persons/{personId}/dynamicPersonGroupReferences", personId: string): GetDynamicPersonGroupReferences; - (path: "/persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces", personId: string, recognitionModel: RecognitionModel): AddPersonFace; - (path: "/persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces/{persistedFaceId}", personId: string, recognitionModel: RecognitionModel, persistedFaceId: string): DeletePersonFace; - (path: "/dynamicpersongroups/{dynamicPersonGroupId}", dynamicPersonGroupId: string): CreateDynamicPersonGroupWithPerson; - (path: "/dynamicpersongroups"): GetDynamicPersonGroups; - (path: "/dynamicpersongroups/{dynamicPersonGroupId}/persons", dynamicPersonGroupId: string): GetDynamicPersonGroupPersons; (path: "/persongroups/{personGroupId}", personGroupId: string): CreatePersonGroup; (path: "/persongroups"): GetPersonGroups; (path: "/persongroups/{personGroupId}/training", personGroupId: string): GetPersonGroupTrainingStatus; @@ -4047,6 +4130,21 @@ export interface Routes { (path: "/largepersongroups/{largePersonGroupId}/persons/{personId}", largePersonGroupId: string, personId: string): DeleteLargePersonGroupPerson; (path: "/largepersongroups/{largePersonGroupId}/persons/{personId}/persistedfaces", largePersonGroupId: string, personId: string): AddLargePersonGroupPersonFaceFromUrl; (path: "/largepersongroups/{largePersonGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}", largePersonGroupId: string, personId: string, persistedFaceId: string): DeleteLargePersonGroupPersonFace; + (path: "/detectLiveness/singleModal/sessions"): CreateLivenessSession; + (path: "/detectLiveness/singleModal/sessions/{sessionId}", sessionId: string): DeleteLivenessSession; + (path: "/detectLiveness/singleModal/sessions/{sessionId}/audit", sessionId: string): GetLivenessSessionAuditEntries; + (path: "/detectLivenessWithVerify/singleModal/sessions"): CreateLivenessWithVerifySessionWithVerifyImage; + (path: "/detectLivenessWithVerify/singleModal/sessions/{sessionId}", sessionId: string): DeleteLivenessWithVerifySession; + (path: "/detectLivenessWithVerify/singleModal/sessions/{sessionId}/audit", sessionId: string): GetLivenessWithVerifySessionAuditEntries; + (path: "/session/sessionImages/{sessionImageId}", sessionImageId: string): GetSessionImage; + (path: "/persons"): CreatePerson; + (path: "/persons/{personId}", personId: string): DeletePerson; + (path: "/persons/{personId}/dynamicPersonGroupReferences", personId: string): GetDynamicPersonGroupReferences; + (path: "/persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces", personId: string, recognitionModel: RecognitionModel): AddPersonFace; + (path: "/persons/{personId}/recognitionModels/{recognitionModel}/persistedfaces/{persistedFaceId}", personId: string, recognitionModel: RecognitionModel, persistedFaceId: string): DeletePersonFace; + (path: "/dynamicpersongroups/{dynamicPersonGroupId}", dynamicPersonGroupId: string): CreateDynamicPersonGroupWithPerson; + (path: "/dynamicpersongroups"): GetDynamicPersonGroups; + (path: "/dynamicpersongroups/{dynamicPersonGroupId}/persons", dynamicPersonGroupId: string): GetDynamicPersonGroupPersons; } // @public @@ -4054,6 +4152,7 @@ export interface SimplePollerLike, TResul getOperationState(): TState; getResult(): TResult | undefined; isDone(): boolean; + // @deprecated isStopped(): boolean; onProgress(callback: (state: TState) => void): CancelOnProgress; poll(options?: { @@ -4217,10 +4316,7 @@ export interface UpdateDynamicPersonGroup200Response extends HttpResponse { // @public (undocumented) export interface UpdateDynamicPersonGroupBodyParam { // (undocumented) - body?: { - name?: string; - userData?: string; - }; + body: UserDefinedFieldsForUpdate; } // @public (undocumented) @@ -4258,7 +4354,7 @@ export interface UpdateDynamicPersonGroupWithPersonChanges202Response extends Ht // @public (undocumented) export interface UpdateDynamicPersonGroupWithPersonChangesBodyParam { // (undocumented) - body?: { + body: { name?: string; userData?: string; addPersonIds?: string[]; @@ -4299,10 +4395,7 @@ export interface UpdateFaceList200Response extends HttpResponse { // @public (undocumented) export interface UpdateFaceListBodyParam { // (undocumented) - body?: { - name?: string; - userData?: string; - }; + body: UserDefinedFieldsForUpdate; } // @public (undocumented) @@ -4332,10 +4425,7 @@ export interface UpdateLargeFaceList200Response extends HttpResponse { // @public (undocumented) export interface UpdateLargeFaceListBodyParam { // (undocumented) - body?: { - name?: string; - userData?: string; - }; + body: UserDefinedFieldsForUpdate; } // @public (undocumented) @@ -4362,9 +4452,7 @@ export interface UpdateLargeFaceListFace200Response extends HttpResponse { // @public (undocumented) export interface UpdateLargeFaceListFaceBodyParam { // (undocumented) - body?: { - userData?: string; - }; + body: FaceUserData; } // @public (undocumented) @@ -4397,10 +4485,7 @@ export interface UpdateLargePersonGroup200Response extends HttpResponse { // @public (undocumented) export interface UpdateLargePersonGroupBodyParam { // (undocumented) - body?: { - name?: string; - userData?: string; - }; + body: UserDefinedFieldsForUpdate; } // @public (undocumented) @@ -4430,10 +4515,7 @@ export interface UpdateLargePersonGroupPerson200Response extends HttpResponse { // @public (undocumented) export interface UpdateLargePersonGroupPersonBodyParam { // (undocumented) - body?: { - name?: string; - userData?: string; - }; + body: UserDefinedFieldsForUpdate; } // @public (undocumented) @@ -4460,9 +4542,7 @@ export interface UpdateLargePersonGroupPersonFace200Response extends HttpRespons // @public (undocumented) export interface UpdateLargePersonGroupPersonFaceBodyParam { // (undocumented) - body?: { - userData?: string; - }; + body: FaceUserData; } // @public (undocumented) @@ -4495,10 +4575,7 @@ export interface UpdatePerson200Response extends HttpResponse { // @public (undocumented) export interface UpdatePersonBodyParam { // (undocumented) - body?: { - name?: string; - userData?: string; - }; + body: UserDefinedFieldsForUpdate; } // @public (undocumented) @@ -4525,9 +4602,7 @@ export interface UpdatePersonFace200Response extends HttpResponse { // @public (undocumented) export interface UpdatePersonFaceBodyParam { // (undocumented) - body?: { - userData?: string; - }; + body: FaceUserData; } // @public (undocumented) @@ -4557,10 +4632,7 @@ export interface UpdatePersonGroup200Response extends HttpResponse { // @public (undocumented) export interface UpdatePersonGroupBodyParam { // (undocumented) - body?: { - name?: string; - userData?: string; - }; + body: UserDefinedFieldsForUpdate; } // @public (undocumented) @@ -4590,10 +4662,7 @@ export interface UpdatePersonGroupPerson200Response extends HttpResponse { // @public (undocumented) export interface UpdatePersonGroupPersonBodyParam { // (undocumented) - body?: { - name?: string; - userData?: string; - }; + body: UserDefinedFieldsForUpdate; } // @public (undocumented) @@ -4620,9 +4689,7 @@ export interface UpdatePersonGroupPersonFace200Response extends HttpResponse { // @public (undocumented) export interface UpdatePersonGroupPersonFaceBodyParam { // (undocumented) - body?: { - userData?: string; - }; + body: FaceUserData; } // @public (undocumented) @@ -4649,6 +4716,18 @@ export type UpdatePersonGroupPersonParameters = UpdatePersonGroupPersonBodyParam // @public (undocumented) export type UpdatePersonParameters = UpdatePersonBodyParam & RequestParameters; +// @public +export interface UserDefinedFields { + name: string; + userData?: string; +} + +// @public +export interface UserDefinedFieldsForUpdate { + name?: string; + userData?: string; +} + // @public export interface VerificationResultOutput { confidence: number; @@ -4657,10 +4736,10 @@ export interface VerificationResultOutput { // @public (undocumented) export interface VerifyFaceToFace { - post(options?: VerifyFaceToFaceParameters): StreamableMethod; - post(options?: VerifyFromPersonGroupParameters): StreamableMethod; - post(options?: VerifyFromLargePersonGroupParameters): StreamableMethod; - post(options?: VerifyFromPersonDirectoryParameters): StreamableMethod; + post(options: VerifyFaceToFaceParameters): StreamableMethod; + post(options: VerifyFromPersonGroupParameters): StreamableMethod; + post(options: VerifyFromLargePersonGroupParameters): StreamableMethod; + post(options: VerifyFromPersonDirectoryParameters): StreamableMethod; } // @public @@ -4674,7 +4753,7 @@ export interface VerifyFaceToFace200Response extends HttpResponse { // @public (undocumented) export interface VerifyFaceToFaceBodyParam { // (undocumented) - body?: { + body: { faceId1: string; faceId2: string; }; @@ -4709,7 +4788,7 @@ export interface VerifyFromLargePersonGroup200Response extends HttpResponse { // @public (undocumented) export interface VerifyFromLargePersonGroupBodyParam { // (undocumented) - body?: { + body: { faceId: string; largePersonGroupId: string; personId: string; @@ -4745,7 +4824,7 @@ export interface VerifyFromPersonDirectory200Response extends HttpResponse { // @public (undocumented) export interface VerifyFromPersonDirectoryBodyParam { // (undocumented) - body?: { + body: { faceId: string; personId: string; }; @@ -4780,7 +4859,7 @@ export interface VerifyFromPersonGroup200Response extends HttpResponse { // @public (undocumented) export interface VerifyFromPersonGroupBodyParam { // (undocumented) - body?: { + body: { faceId: string; personGroupId: string; personId: string; @@ -4806,7 +4885,7 @@ export interface VerifyFromPersonGroupDefaultResponse extends HttpResponse { export type VerifyFromPersonGroupParameters = VerifyFromPersonGroupBodyParam & RequestParameters; // @public -export type Versions = "v1.1-preview.1"; +export type Versions = "v1.2-preview.1"; // (No @packageDocumentation comment for this package) diff --git a/sdk/face/ai-vision-face-rest/src/clientDefinitions.ts b/sdk/face/ai-vision-face-rest/src/clientDefinitions.ts index 947414400bde..e2a44487cf62 100644 --- a/sdk/face/ai-vision-face-rest/src/clientDefinitions.ts +++ b/sdk/face/ai-vision-face-rest/src/clientDefinitions.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { GetOperationResultParameters, DetectFromUrlParameters, DetectParameters, + DetectFromSessionImageIdParameters, FindSimilarParameters, FindSimilarFromFaceListParameters, FindSimilarFromLargeFaceListParameters, @@ -17,17 +18,6 @@ import { VerifyFromLargePersonGroupParameters, VerifyFromPersonDirectoryParameters, GroupParameters, - CreateLivenessSessionParameters, - GetLivenessSessionsParameters, - DeleteLivenessSessionParameters, - GetLivenessSessionResultParameters, - GetLivenessSessionAuditEntriesParameters, - CreateLivenessWithVerifySessionWithVerifyImageParameters, - CreateLivenessWithVerifySessionParameters, - GetLivenessWithVerifySessionsParameters, - DeleteLivenessWithVerifySessionParameters, - GetLivenessWithVerifySessionResultParameters, - GetLivenessWithVerifySessionAuditEntriesParameters, CreateFaceListParameters, DeleteFaceListParameters, GetFaceListParameters, @@ -49,26 +39,6 @@ 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, @@ -103,14 +73,48 @@ import { DeleteLargePersonGroupPersonFaceParameters, GetLargePersonGroupPersonFaceParameters, UpdateLargePersonGroupPersonFaceParameters, + CreateLivenessSessionParameters, + GetLivenessSessionsParameters, + DeleteLivenessSessionParameters, + GetLivenessSessionResultParameters, + GetLivenessSessionAuditEntriesParameters, + CreateLivenessWithVerifySessionWithVerifyImageParameters, + CreateLivenessWithVerifySessionParameters, + GetLivenessWithVerifySessionsParameters, + DeleteLivenessWithVerifySessionParameters, + GetLivenessWithVerifySessionResultParameters, + GetLivenessWithVerifySessionAuditEntriesParameters, + GetSessionImageParameters, + CreatePersonParameters, + GetPersonsParameters, + DeletePersonParameters, + GetPersonParameters, + UpdatePersonParameters, + GetDynamicPersonGroupReferencesParameters, + AddPersonFaceParameters, + AddPersonFaceFromUrlParameters, + GetPersonFacesParameters, + DeletePersonFaceParameters, + GetPersonFaceParameters, + UpdatePersonFaceParameters, + CreateDynamicPersonGroupWithPersonParameters, + CreateDynamicPersonGroupParameters, + DeleteDynamicPersonGroupParameters, + GetDynamicPersonGroupParameters, + UpdateDynamicPersonGroupWithPersonChangesParameters, + UpdateDynamicPersonGroupParameters, + GetDynamicPersonGroupsParameters, + GetDynamicPersonGroupPersonsParameters, } from "./parameters.js"; -import { +import type { GetOperationResult200Response, GetOperationResultDefaultResponse, DetectFromUrl200Response, DetectFromUrlDefaultResponse, Detect200Response, DetectDefaultResponse, + DetectFromSessionImageId200Response, + DetectFromSessionImageIdDefaultResponse, FindSimilar200Response, FindSimilarDefaultResponse, FindSimilarFromFaceList200Response, @@ -135,28 +139,6 @@ 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, @@ -199,46 +181,6 @@ 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, @@ -307,9 +249,73 @@ import { GetLargePersonGroupPersonFaceDefaultResponse, UpdateLargePersonGroupPersonFace200Response, UpdateLargePersonGroupPersonFaceDefaultResponse, + CreateLivenessSession200Response, + CreateLivenessSessionDefaultResponse, + GetLivenessSessions200Response, + GetLivenessSessionsDefaultResponse, + DeleteLivenessSession200Response, + DeleteLivenessSessionDefaultResponse, + GetLivenessSessionResult200Response, + GetLivenessSessionResultDefaultResponse, + GetLivenessSessionAuditEntries200Response, + GetLivenessSessionAuditEntriesDefaultResponse, + CreateLivenessWithVerifySessionWithVerifyImage200Response, + CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse, + CreateLivenessWithVerifySession200Response, + CreateLivenessWithVerifySessionDefaultResponse, + GetLivenessWithVerifySessions200Response, + GetLivenessWithVerifySessionsDefaultResponse, + DeleteLivenessWithVerifySession200Response, + DeleteLivenessWithVerifySessionDefaultResponse, + GetLivenessWithVerifySessionResult200Response, + GetLivenessWithVerifySessionResultDefaultResponse, + GetLivenessWithVerifySessionAuditEntries200Response, + GetLivenessWithVerifySessionAuditEntriesDefaultResponse, + GetSessionImage200Response, + GetSessionImageDefaultResponse, + 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, } from "./responses.js"; -import { RecognitionModel } from "./models.js"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { RecognitionModel } from "./models.js"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface GetOperationResult { /** Get status of a long running operation. */ @@ -321,7 +327,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/blog/responsible-ai-investments-and-safeguards-for-facial-recognition/. + * > Microsoft has retired or limited facial recognition capabilities that can be used to try to infer emotional states and identity attributes which, if misused, can subject people to stereotyping, discrimination or unfair denial of services. The retired capabilities are emotion and gender. The limited capabilities are age, smile, facial hair, hair and makeup. Email [Azure Face API](mailto:azureface@microsoft.com) if you have a responsible use case that would benefit from the use of any of the limited capabilities. Read more about this decision [here](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 +336,15 @@ 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/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, 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. + * * Different 'detectionModel' values can be provided. The availability of landmarks and supported attributes depends on the detection model specified. To use and compare different detection models, please refer to [here](https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-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 [here](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/blog/responsible-ai-investments-and-safeguards-for-facial-recognition/. + * > Microsoft has retired or limited facial recognition capabilities that can be used to try to infer emotional states and identity attributes which, if misused, can subject people to stereotyping, discrimination or unfair denial of services. The retired capabilities are emotion and gender. The limited capabilities are age, smile, facial hair, hair and makeup. Email [Azure Face API](mailto:azureface@microsoft.com) if you have a responsible use case that would benefit from the use of any of the limited capabilities. Read more about this decision [here](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,12 +353,29 @@ 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/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, 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. + * * Different 'detectionModel' values can be provided. The availability of landmarks and supported attributes depends on the detection model specified. To use and compare different detection models, please refer to [here](https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-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 [here](https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-recognition-model). */ post(options: DetectParameters): StreamableMethod; + /** + * > [!IMPORTANT] + * > Microsoft has retired or limited facial recognition capabilities that can be used to try to infer emotional states and identity attributes which, if misused, can subject people to stereotyping, discrimination or unfair denial of services. The retired capabilities are emotion and gender. The limited capabilities are age, smile, facial hair, hair and makeup. Email [Azure Face API](mailto:azureface@microsoft.com) if you have a responsible use case that would benefit from the use of any of the limited capabilities. Read more about this decision [here](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. + * * Optional parameters include faceId, landmarks, and attributes. Attributes include headPose, glasses, occlusion, accessories, blur, exposure, noise, mask, and qualityForRecognition. Some of the results returned for specific attributes may not be highly accurate. + * * JPEG, PNG, GIF (the first frame), and BMP format are supported. The allowed image file size is from 1KB to 6MB. + * * 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. The availability of landmarks and supported attributes depends on the detection model specified. To use and compare different detection models, please refer to [here](https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-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 [here](https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-recognition-model). + */ + post( + options: DetectFromSessionImageIdParameters, + ): StreamableMethod< + DetectFromSessionImageId200Response | DetectFromSessionImageIdDefaultResponse + >; } export interface FindSimilar { @@ -366,7 +387,7 @@ export interface FindSimilar { * The 'recognitionModel' associated with the query faceId should be the same as the 'recognitionModel' used by the target faceId array. */ post( - options?: FindSimilarParameters, + options: FindSimilarParameters, ): StreamableMethod; /** * Depending on the input the returned similar faces list contains faceIds or persistedFaceIds ranked by similarity. @@ -376,7 +397,7 @@ export interface FindSimilar { * The 'recognitionModel' associated with the query faceId should be the same as the 'recognitionModel' used by the target Face List. */ post( - options?: FindSimilarFromFaceListParameters, + options: FindSimilarFromFaceListParameters, ): StreamableMethod; /** * Depending on the input the returned similar faces list contains faceIds or persistedFaceIds ranked by similarity. @@ -386,7 +407,7 @@ export interface FindSimilar { * The 'recognitionModel' associated with the query faceId should be the same as the 'recognitionModel' used by the target Large Face List. */ post( - options?: FindSimilarFromLargeFaceListParameters, + options: FindSimilarFromLargeFaceListParameters, ): StreamableMethod< FindSimilarFromLargeFaceList200Response | FindSimilarFromLargeFaceListDefaultResponse >; @@ -406,7 +427,7 @@ export interface IdentifyFromPersonGroup { * > * The 'recognitionModel' associated with the query faces' faceIds should be the same as the 'recognitionModel' used by the target Person Group. */ post( - options?: IdentifyFromPersonGroupParameters, + options: IdentifyFromPersonGroupParameters, ): StreamableMethod; /** * For each face in the faceIds array, Face Identify will compute similarities between the query face and all the faces in the Large Person Group (given by largePersonGroupId), and return candidate person(s) for that face ranked by similarity confidence. The Large Person Group should be trained to make it ready for identification. See more in "Train Large Person Group". @@ -421,7 +442,7 @@ export interface IdentifyFromPersonGroup { * > * The 'recognitionModel' associated with the query faces' faceIds should be the same as the 'recognitionModel' used by the target Person Group or Large Person Group. */ post( - options?: IdentifyFromLargePersonGroupParameters, + options: IdentifyFromLargePersonGroupParameters, ): StreamableMethod< IdentifyFromLargePersonGroup200Response | IdentifyFromLargePersonGroupDefaultResponse >; @@ -438,7 +459,7 @@ export interface IdentifyFromPersonGroup { * > * The Identify operation can only match faces obtained with the same recognition model, that is associated with the query faces. */ post( - options?: IdentifyFromPersonDirectoryParameters, + options: IdentifyFromPersonDirectoryParameters, ): StreamableMethod< IdentifyFromPersonDirectory200Response | IdentifyFromPersonDirectoryDefaultResponse >; @@ -454,7 +475,7 @@ export interface IdentifyFromPersonGroup { * > * The Identify operation can only match faces obtained with the same recognition model, that is associated with the query faces. */ post( - options?: IdentifyFromDynamicPersonGroupParameters, + options: IdentifyFromDynamicPersonGroupParameters, ): StreamableMethod< IdentifyFromDynamicPersonGroup200Response | IdentifyFromDynamicPersonGroupDefaultResponse >; @@ -470,7 +491,7 @@ export interface VerifyFaceToFace { * > * The 'recognitionModel' associated with the both faces should be the same. */ post( - options?: VerifyFaceToFaceParameters, + options: VerifyFaceToFaceParameters, ): StreamableMethod; /** * > [!NOTE] @@ -481,7 +502,7 @@ export interface VerifyFaceToFace { * > * The 'recognitionModel' associated with the query face should be the same as the 'recognitionModel' used by the Person Group. */ post( - options?: VerifyFromPersonGroupParameters, + options: VerifyFromPersonGroupParameters, ): StreamableMethod; /** * > [!NOTE] @@ -492,7 +513,7 @@ export interface VerifyFaceToFace { * > * The 'recognitionModel' associated with the query face should be the same as the 'recognitionModel' used by the Large Person Group. */ post( - options?: VerifyFromLargePersonGroupParameters, + options: VerifyFromLargePersonGroupParameters, ): StreamableMethod< VerifyFromLargePersonGroup200Response | VerifyFromLargePersonGroupDefaultResponse >; @@ -505,7 +526,7 @@ export interface VerifyFaceToFace { * > * The Verify operation can only match faces obtained with the same recognition model, that is associated with the query face. */ post( - options?: VerifyFromPersonDirectoryParameters, + options: VerifyFromPersonDirectoryParameters, ): StreamableMethod< VerifyFromPersonDirectory200Response | VerifyFromPersonDirectoryDefaultResponse >; @@ -520,189 +541,47 @@ export interface Group { * * Group API needs at least 2 candidate faces and 1000 at most. We suggest to try "Verify Face To Face" when you only have 2 candidate faces. * * The 'recognitionModel' associated with the query faces' faceIds should be the same. */ - post(options?: GroupParameters): StreamableMethod; + post(options: GroupParameters): StreamableMethod; } -export interface CreateLivenessSession { +export interface CreateFaceList { /** - * 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. + * Up to 64 Face Lists are allowed in one subscription. * - * Permissions includes... - * > - * * - * * Ability to call /detectLiveness/singleModal for up to 3 retries. - * * A token lifetime of 10 minutes. + * Face List is a list of faces, up to 1,000 faces, and used by "Find Similar From Face List". * - * > [!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'. + * 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. * - * The result should be ordered by sessionId in ascending order. + * "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?: GetLivenessSessionsParameters, - ): StreamableMethod; + options?: GetFaceListParameters, + ): StreamableMethod; + /** Update information of a Face List, including name and userData. */ + patch( + options: UpdateFaceListParameters, + ): StreamableMethod; } -export interface DeleteLivenessSession { +export interface GetFaceLists { /** - * > [!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. + * List Face Lists' faceListId, name, userData and recognitionModel. + * + * To get face information inside Face List use "Get Face List". */ - delete( - options?: DeleteLivenessSessionParameters, - ): StreamableMethod; - /** Get session result of detectLiveness/singleModal call. */ get( - options?: GetLivenessSessionResultParameters, - ): StreamableMethod< - GetLivenessSessionResult200Response | GetLivenessSessionResultDefaultResponse - >; -} - -export interface GetLivenessSessionAuditEntries { - /** Gets session requests and response body for the session. */ - get( - options?: GetLivenessSessionAuditEntriesParameters, - ): StreamableMethod< - GetLivenessSessionAuditEntries200Response | GetLivenessSessionAuditEntriesDefaultResponse - >; -} - -export interface CreateLivenessWithVerifySessionWithVerifyImage { - /** - * 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. - * - * 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; + options?: GetFaceListsParameters, + ): StreamableMethod; } export interface AddFaceListFaceFromUrl { @@ -710,32 +589,32 @@ 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. - * * 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 + * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [here](https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model). */ post( - options?: AddFaceListFaceFromUrlParameters, + options: AddFaceListFaceFromUrlParameters, ): 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 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. - * * 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 + * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [here](https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model). */ post( options: AddFaceListFaceParameters, @@ -764,7 +643,7 @@ export interface CreateLargeFaceList { * > * S0-tier subscription quota: 1,000,000 Large Face Lists. */ put( - options?: CreateLargeFaceListParameters, + options: CreateLargeFaceListParameters, ): StreamableMethod; /** Adding/deleting faces to/from a same Large Face List are processed sequentially and to/from different Large Face Lists are in parallel. */ delete( @@ -776,7 +655,7 @@ export interface CreateLargeFaceList { ): StreamableMethod; /** Update information of a Large Face List, including name and userData. */ patch( - options?: UpdateLargeFaceListParameters, + options: UpdateLargeFaceListParameters, ): StreamableMethod; } @@ -831,15 +710,15 @@ export interface AddLargeFaceListFaceFromUrl { * 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 Face List Face" or "Delete Large 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. - * * 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 + * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [here](https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model). * * > [!NOTE] * > @@ -848,7 +727,7 @@ export interface AddLargeFaceListFaceFromUrl { * > * S0-tier subscription quota: 1,000,000 faces per Large Face List. */ post( - options?: AddLargeFaceListFaceFromUrlParameters, + options: AddLargeFaceListFaceFromUrlParameters, ): StreamableMethod< AddLargeFaceListFaceFromUrl200Response | AddLargeFaceListFaceFromUrlDefaultResponse >; @@ -856,15 +735,15 @@ export interface AddLargeFaceListFaceFromUrl { * 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 Face List Face" or "Delete Large 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. - * * 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 + * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [here](https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model). * * > [!NOTE] * > @@ -905,17 +784,47 @@ export interface DeleteLargeFaceListFace { ): StreamableMethod; /** Update a specified face's userData field in a Large Face List by its persistedFaceId. */ patch( - options?: UpdateLargeFaceListFaceParameters, + options: UpdateLargeFaceListFaceParameters, ): 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 CreatePersonGroup { /** - * Persons are stored in alphabetical order of personId created in Person Directory "Create Person". + * 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 { + /** + * 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. @@ -929,28 +838,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. @@ -964,208 +888,125 @@ 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". + * * > * * - * * 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. + * * 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. * * 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 - * * - * * 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 [here](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". + * * > * * - * * 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. + * * 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. * * 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 - * * - * * 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 [here](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. */ - get( - options?: GetPersonFaceParameters, - ): StreamableMethod; - /** Update a persisted face's userData field of a person. */ - patch( - options?: UpdatePersonFaceParameters, - ): StreamableMethod; -} - -export interface CreateDynamicPersonGroupWithPerson { - /** - * 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. - * - * '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. - * - * 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?: 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?: DeleteDynamicPersonGroupParameters, + options?: DeletePersonGroupPersonFaceParameters, ): StreamableMethod< - DeleteDynamicPersonGroup202Response | DeleteDynamicPersonGroupDefaultResponse + DeletePersonGroupPersonFace200Response | DeletePersonGroupPersonFaceDefaultResponse >; - /** 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. */ + /** Retrieve person face information. The persisted person face is specified by its personGroupId, personId and persistedFaceId. */ get( - options?: GetDynamicPersonGroupParameters, - ): StreamableMethod; - /** The properties keep unchanged if they are not in request body. */ - patch( - options?: UpdateDynamicPersonGroupWithPersonChangesParameters, + options?: GetPersonGroupPersonFaceParameters, ): StreamableMethod< - | UpdateDynamicPersonGroupWithPersonChanges202Response - | UpdateDynamicPersonGroupWithPersonChangesDefaultResponse + GetPersonGroupPersonFace200Response | GetPersonGroupPersonFaceDefaultResponse >; - /** The properties keep unchanged if they are not in request body. */ + /** Update a person persisted face's userData field. */ patch( - options?: UpdateDynamicPersonGroupParameters, - ): StreamableMethod< - UpdateDynamicPersonGroup200Response | UpdateDynamicPersonGroupDefaultResponse - >; -} - -export interface GetDynamicPersonGroups { - /** - * 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. - * * "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". - */ - get( - options?: GetDynamicPersonGroupsParameters, - ): 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". - */ - get( - options?: GetDynamicPersonGroupPersonsParameters, + options: UpdatePersonGroupPersonFaceParameters, ): StreamableMethod< - GetDynamicPersonGroupPersons200Response | GetDynamicPersonGroupPersonsDefaultResponse + UpdatePersonGroupPersonFace200Response | UpdatePersonGroupPersonFaceDefaultResponse >; } -export interface CreatePersonGroup { +export interface CreateLargePersonGroup { /** - * A Person Group is a container holding the uploaded person data, including face recognition features. + * 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. * - * 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". + * 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". * - * 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. + * 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. * - * '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. + * '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. * * > [!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. + * > * Free-tier subscription quota: 1,000 Large Person Groups. + * > * S0-tier subscription quota: 1,000,000 Large Person Groups. */ put( - options?: CreatePersonGroupParameters, - ): StreamableMethod; - /** Delete an existing Person Group with specified personGroupId. Persisted data in this Person Group will be deleted. */ + options: CreateLargePersonGroupParameters, + ): StreamableMethod; + /** Delete an existing Large Person Group with specified personGroupId. Persisted data in this Large 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". */ + 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?: GetPersonGroupParameters, - ): StreamableMethod; - /** Update an existing Person Group's name and userData. 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?: UpdatePersonGroupParameters, - ): StreamableMethod; + options: UpdateLargePersonGroupParameters, + ): StreamableMethod; } -export interface GetPersonGroups { +export interface GetLargePersonGroups { /** - * Person Groups are stored in alphabetical order of personGroupId. + * 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. @@ -1179,43 +1020,45 @@ export interface GetPersonGroups { * > * "start=itemId2&top=3" will return "itemId3", "itemId4", "itemId5". */ get( - options?: GetPersonGroupsParameters, - ): StreamableMethod; + options?: GetLargePersonGroupsParameters, + ): 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 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?: GetPersonGroupTrainingStatusParameters, + options?: GetLargePersonGroupTrainingStatusParameters, ): StreamableMethod< - GetPersonGroupTrainingStatus200Response | GetPersonGroupTrainingStatusDefaultResponse + GetLargePersonGroupTrainingStatus200Response | GetLargePersonGroupTrainingStatusDefaultResponse >; } -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". */ +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?: TrainPersonGroupParameters, - ): StreamableMethod; + options?: TrainLargePersonGroupParameters, + ): StreamableMethod; } -export interface CreatePersonGroupPerson { +export interface CreateLargePersonGroupPerson { /** * > [!NOTE] * > * > * * > * Free-tier subscription quota: - * > * 1,000 persons in all Person Groups. + * > * 1,000 persons in all Large 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. + * > * 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?: CreatePersonGroupPersonParameters, - ): StreamableMethod; + options: CreateLargePersonGroupPersonParameters, + ): StreamableMethod< + CreateLargePersonGroupPerson200Response | CreateLargePersonGroupPersonDefaultResponse + >; /** - * Persons are stored in alphabetical order of personId created in "Create Person Group Person". + * 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. @@ -1229,175 +1072,254 @@ export interface CreatePersonGroupPerson { * > * "start=itemId2&top=3" will return "itemId3", "itemId4", "itemId5". */ get( - options?: GetPersonGroupPersonsParameters, - ): StreamableMethod; + options?: GetLargePersonGroupPersonsParameters, + ): StreamableMethod< + GetLargePersonGroupPersons200Response | GetLargePersonGroupPersonsDefaultResponse + >; } -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. */ +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?: DeletePersonGroupPersonParameters, - ): StreamableMethod; + 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?: GetPersonGroupPersonParameters, - ): StreamableMethod; + options?: GetLargePersonGroupPersonParameters, + ): StreamableMethod< + GetLargePersonGroupPerson200Response | GetLargePersonGroupPersonDefaultResponse + >; /** Update name or userData of a person. */ patch( - options?: UpdatePersonGroupPersonParameters, - ): StreamableMethod; + options: UpdateLargePersonGroupPersonParameters, + ): StreamableMethod< + UpdateLargePersonGroupPerson200Response | UpdateLargePersonGroupPersonDefaultResponse + >; } -export interface AddPersonGroupPersonFaceFromUrl { +export interface AddLargePersonGroupPersonFaceFromUrl { /** - * 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 "Delete Large Person Group Person Face", "Delete Large Person Group Person" or "Delete Large Person Group" 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. * * Each person entry can hold up to 248 faces. + * * 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. * * 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 + * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [here](https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model). */ post( - options?: AddPersonGroupPersonFaceFromUrlParameters, + options: AddLargePersonGroupPersonFaceFromUrlParameters, ): StreamableMethod< - AddPersonGroupPersonFaceFromUrl200Response | AddPersonGroupPersonFaceFromUrlDefaultResponse + | 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 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 "Delete Large Person Group Person Face", "Delete Large Person Group Person" or "Delete Large Person Group" 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. * * Each person entry can hold up to 248 faces. + * * 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. * * 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 + * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [here](https://learn.microsoft.com/azure/ai-services/computer-vision/how-to/specify-detection-model). */ post( - options: AddPersonGroupPersonFaceParameters, + options: AddLargePersonGroupPersonFaceParameters, ): StreamableMethod< - AddPersonGroupPersonFace200Response | AddPersonGroupPersonFaceDefaultResponse + AddLargePersonGroupPersonFace200Response | AddLargePersonGroupPersonFaceDefaultResponse >; } -export interface DeletePersonGroupPersonFace { +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?: DeletePersonGroupPersonFaceParameters, + options?: DeleteLargePersonGroupPersonFaceParameters, ): StreamableMethod< - DeletePersonGroupPersonFace200Response | DeletePersonGroupPersonFaceDefaultResponse + DeleteLargePersonGroupPersonFace200Response | DeleteLargePersonGroupPersonFaceDefaultResponse >; - /** Retrieve person face information. The persisted person face is specified by its personGroupId, personId and persistedFaceId. */ + /** Retrieve person face information. The persisted person face is specified by its largePersonGroupId, personId and persistedFaceId. */ get( - options?: GetPersonGroupPersonFaceParameters, + options?: GetLargePersonGroupPersonFaceParameters, ): StreamableMethod< - GetPersonGroupPersonFace200Response | GetPersonGroupPersonFaceDefaultResponse + GetLargePersonGroupPersonFace200Response | GetLargePersonGroupPersonFaceDefaultResponse >; /** Update a person persisted face's userData field. */ patch( - options?: UpdatePersonGroupPersonFaceParameters, + options: UpdateLargePersonGroupPersonFaceParameters, ): StreamableMethod< - UpdatePersonGroupPersonFace200Response | UpdatePersonGroupPersonFaceDefaultResponse + UpdateLargePersonGroupPersonFace200Response | UpdateLargePersonGroupPersonFaceDefaultResponse >; } -export interface CreateLargePersonGroup { +export interface CreateLivenessSession { /** - * 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. - * - * 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". - * - * 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. + * 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. * - * '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. + * Permissions includes... + * > + * * + * * Ability to call /detectLiveness/singleModal for up to 3 retries. + * * A token lifetime of 10 minutes. * * > [!NOTE] - * > - * > * - * > * Free-tier subscription quota: 1,000 Large Person Groups. - * > * S0-tier subscription quota: 1,000,000 Large Person Groups. + * > 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'. + * + * The result should be ordered by sessionId in ascending order. */ - put( - options?: CreateLargePersonGroupParameters, - ): StreamableMethod; - /** Delete an existing Large Person Group with specified personGroupId. Persisted data in this Large Person Group will be deleted. */ - 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. */ 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. */ - patch( - options?: UpdateLargePersonGroupParameters, - ): StreamableMethod; + options?: GetLivenessSessionsParameters, + ): StreamableMethod; } -export interface GetLargePersonGroups { +export interface DeleteLivenessSession { /** - * 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. - * * "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". + * > [!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?: GetLargePersonGroupsParameters, - ): StreamableMethod; + options?: GetLivenessSessionResultParameters, + ): StreamableMethod< + GetLivenessSessionResult200Response | GetLivenessSessionResultDefaultResponse + >; } -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. */ +export interface GetLivenessSessionAuditEntries { + /** Gets session requests and response body for the session. */ get( - options?: GetLargePersonGroupTrainingStatusParameters, + options?: GetLivenessSessionAuditEntriesParameters, ): StreamableMethod< - GetLargePersonGroupTrainingStatus200Response | GetLargePersonGroupTrainingStatusDefaultResponse + GetLivenessSessionAuditEntries200Response | GetLivenessSessionAuditEntriesDefaultResponse >; } -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". */ +export interface CreateLivenessWithVerifySessionWithVerifyImage { + /** + * 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. + * + * Recommended Option: VerifyImage is provided during session creation. + */ post( - options?: TrainLargePersonGroupParameters, - ): StreamableMethod; -} - -export interface CreateLargePersonGroupPerson { + 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] * > * > * - * > * 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. + * > * 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?: CreateLargePersonGroupPersonParameters, + options: CreateLivenessWithVerifySessionParameters, ): StreamableMethod< - CreateLargePersonGroupPerson200Response | CreateLargePersonGroupPersonDefaultResponse + CreateLivenessWithVerifySession200Response | CreateLivenessWithVerifySessionDefaultResponse >; /** - * Persons are stored in alphabetical order of personId created in "Create Large Person Group Person". + * 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 GetSessionImage { + /** Get session image stored during the liveness session. */ + get( + options?: GetSessionImageParameters, + ): 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; + /** + * 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. @@ -1411,93 +1333,203 @@ export interface CreateLargePersonGroupPerson { * > * "start=itemId2&top=3" will return "itemId3", "itemId4", "itemId5". */ get( - options?: GetLargePersonGroupPersonsParameters, - ): StreamableMethod< - GetLargePersonGroupPersons200Response | GetLargePersonGroupPersonsDefaultResponse - >; + options?: GetPersonsParameters, + ): StreamableMethod; } -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. */ +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?: DeleteLargePersonGroupPersonParameters, - ): StreamableMethod< - DeleteLargePersonGroupPerson200Response | DeleteLargePersonGroupPersonDefaultResponse - >; - /** Retrieve a person's name and userData, and the persisted faceIds representing the registered person face feature(s). */ + options?: DeletePersonParameters, + ): StreamableMethod; + /** Retrieve a person's name and userData from Person Directory. */ get( - options?: GetLargePersonGroupPersonParameters, - ): StreamableMethod< - GetLargePersonGroupPerson200Response | GetLargePersonGroupPersonDefaultResponse - >; + options?: GetPersonParameters, + ): StreamableMethod; /** Update name or userData of a person. */ patch( - options?: UpdateLargePersonGroupPersonParameters, + options: UpdatePersonParameters, + ): StreamableMethod; +} + +export interface GetDynamicPersonGroupReferences { + /** + * 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. + * * "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". + */ + get( + options?: GetDynamicPersonGroupReferencesParameters, ): StreamableMethod< - UpdateLargePersonGroupPerson200Response | UpdateLargePersonGroupPersonDefaultResponse + GetDynamicPersonGroupReferences200Response | GetDynamicPersonGroupReferencesDefaultResponse >; } -export interface AddLargePersonGroupPersonFaceFromUrl { +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 Large Person Group Person Face", "Delete Large Person Group Person" or "Delete Large 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". + * * > * * - * * 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. + * * 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. * * 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 + * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [here](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?: AddLargePersonGroupPersonFaceFromUrlParameters, - ): StreamableMethod< - | AddLargePersonGroupPersonFaceFromUrl200Response - | AddLargePersonGroupPersonFaceFromUrlDefaultResponse - >; + 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 Large Person Group Person Face", "Delete Large Person Group Person" or "Delete Large 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". + * * > * * - * * 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. + * * 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. * * 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 + * * Different 'detectionModel' values can be provided. To use and compare different detection models, please refer to [here](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: AddLargePersonGroupPersonFaceParameters, - ): StreamableMethod< - AddLargePersonGroupPersonFace200Response | AddLargePersonGroupPersonFaceDefaultResponse - >; + options: AddPersonFaceFromUrlParameters, + ): StreamableMethod; + /** Retrieve a person's persistedFaceIds representing the registered person face feature(s). */ + get( + options?: GetPersonFacesParameters, + ): StreamableMethod; } -export interface DeleteLargePersonGroupPersonFace { +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?: DeleteLargePersonGroupPersonFaceParameters, + options?: DeletePersonFaceParameters, + ): StreamableMethod; + /** Retrieve person face information. The persisted person face is specified by its personId. recognitionModel, and persistedFaceId. */ + get( + options?: GetPersonFaceParameters, + ): StreamableMethod; + /** Update a persisted face's userData field of a person. */ + patch( + options: UpdatePersonFaceParameters, + ): StreamableMethod; +} + +export interface CreateDynamicPersonGroupWithPerson { + /** + * 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. + * + * '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< - DeleteLargePersonGroupPersonFace200Response | DeleteLargePersonGroupPersonFaceDefaultResponse + | CreateDynamicPersonGroupWithPerson202Response + | CreateDynamicPersonGroupWithPersonDefaultResponse >; - /** Retrieve person face information. The persisted person face is specified by its largePersonGroupId, personId and persistedFaceId. */ + /** + * 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. + * + * '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: 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?: 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?: GetLargePersonGroupPersonFaceParameters, + options?: GetDynamicPersonGroupParameters, + ): StreamableMethod; + /** The properties keep unchanged if they are not in request body. */ + patch( + options: UpdateDynamicPersonGroupWithPersonChangesParameters, ): StreamableMethod< - GetLargePersonGroupPersonFace200Response | GetLargePersonGroupPersonFaceDefaultResponse + | UpdateDynamicPersonGroupWithPersonChanges202Response + | UpdateDynamicPersonGroupWithPersonChangesDefaultResponse >; - /** Update a person persisted face's userData field. */ + /** The properties keep unchanged if they are not in request body. */ patch( - options?: UpdateLargePersonGroupPersonFaceParameters, + options: UpdateDynamicPersonGroupParameters, ): StreamableMethod< - UpdateLargePersonGroupPersonFace200Response | UpdateLargePersonGroupPersonFaceDefaultResponse + UpdateDynamicPersonGroup200Response | UpdateDynamicPersonGroupDefaultResponse + >; +} + +export interface GetDynamicPersonGroups { + /** + * 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. + * * "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". + */ + get( + options?: GetDynamicPersonGroupsParameters, + ): 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". + */ + get( + options?: GetDynamicPersonGroupPersonsParameters, + ): StreamableMethod< + GetDynamicPersonGroupPersons200Response | GetDynamicPersonGroupPersonsDefaultResponse >; } @@ -1514,32 +1546,6 @@ 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 */ @@ -1574,40 +1580,6 @@ 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 */ @@ -1681,6 +1653,68 @@ export interface Routes { personId: string, persistedFaceId: string, ): DeleteLargePersonGroupPersonFace; + /** 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 '/session/sessionImages/\{sessionImageId\}' has methods for the following verbs: get */ + (path: "/session/sessionImages/{sessionImageId}", sessionImageId: string): GetSessionImage; + /** 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; } 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 b738c5fe7805..770f08e36f0f 100644 --- a/sdk/face/ai-vision-face-rest/src/faceClient.ts +++ b/sdk/face/ai-vision-face-rest/src/faceClient.ts @@ -1,13 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "./logger.js"; -import { TokenCredential, KeyCredential } from "@azure/core-auth"; -import { FaceClient } from "./clientDefinitions.js"; -import { Versions } from "./models.js"; +import type { TokenCredential, KeyCredential } from "@azure/core-auth"; +import type { FaceClient } from "./clientDefinitions.js"; +import type { Versions } from "./models.js"; +/** The optional parameters for the client */ export interface FaceClientOptions extends ClientOptions { + /** API Version */ apiVersion?: Versions; } @@ -21,11 +24,9 @@ export interface FaceClientOptions extends ClientOptions { export default function createClient( endpointParam: string, credentials: TokenCredential | KeyCredential, - options: FaceClientOptions = {}, + { apiVersion = "v1.2-preview.1", ...options }: FaceClientOptions = {}, ): FaceClient { - const apiVersion = options.apiVersion ?? "v1.1-preview.1"; const endpointUrl = options.endpoint ?? options.baseUrl ?? `${endpointParam}/face/${apiVersion}`; - const userAgentInfo = `azsdk-js-ai-vision-face-rest/1.0.0-beta.1`; const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix @@ -44,7 +45,6 @@ export default function createClient( apiKeyHeaderName: options.credentials?.apiKeyHeaderName ?? "Ocp-Apim-Subscription-Key", }, }; - const client = getClient(endpointUrl, credentials, options) as FaceClient; client.pipeline.removePolicy({ name: "ApiVersionPolicy" }); diff --git a/sdk/face/ai-vision-face-rest/src/isUnexpected.ts b/sdk/face/ai-vision-face-rest/src/isUnexpected.ts index 9f84a27d6f0c..9d44653e7eea 100644 --- a/sdk/face/ai-vision-face-rest/src/isUnexpected.ts +++ b/sdk/face/ai-vision-face-rest/src/isUnexpected.ts @@ -1,13 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { GetOperationResult200Response, GetOperationResultDefaultResponse, DetectFromUrl200Response, DetectFromUrlDefaultResponse, Detect200Response, DetectDefaultResponse, + DetectFromSessionImageId200Response, + DetectFromSessionImageIdDefaultResponse, FindSimilar200Response, FindSimilarDefaultResponse, FindSimilarFromFaceList200Response, @@ -32,28 +34,6 @@ 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, @@ -97,54 +77,6 @@ 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, @@ -215,6 +147,78 @@ import { GetLargePersonGroupPersonFaceDefaultResponse, UpdateLargePersonGroupPersonFace200Response, UpdateLargePersonGroupPersonFaceDefaultResponse, + CreateLivenessSession200Response, + CreateLivenessSessionDefaultResponse, + GetLivenessSessions200Response, + GetLivenessSessionsDefaultResponse, + DeleteLivenessSession200Response, + DeleteLivenessSessionDefaultResponse, + GetLivenessSessionResult200Response, + GetLivenessSessionResultDefaultResponse, + GetLivenessSessionAuditEntries200Response, + GetLivenessSessionAuditEntriesDefaultResponse, + CreateLivenessWithVerifySessionWithVerifyImage200Response, + CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse, + CreateLivenessWithVerifySession200Response, + CreateLivenessWithVerifySessionDefaultResponse, + GetLivenessWithVerifySessions200Response, + GetLivenessWithVerifySessionsDefaultResponse, + DeleteLivenessWithVerifySession200Response, + DeleteLivenessWithVerifySessionDefaultResponse, + GetLivenessWithVerifySessionResult200Response, + GetLivenessWithVerifySessionResultDefaultResponse, + GetLivenessWithVerifySessionAuditEntries200Response, + GetLivenessWithVerifySessionAuditEntriesDefaultResponse, + GetSessionImage200Response, + GetSessionImageDefaultResponse, + 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, } from "./responses.js"; const responseMap: Record = { @@ -224,16 +228,6 @@ 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"], @@ -254,27 +248,6 @@ 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"], @@ -316,6 +289,38 @@ const responseMap: Record = { ["200"], "PATCH /largepersongroups/{largePersonGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}": ["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"], + "GET /session/sessionImages/{sessionImageId}": ["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"], }; export function isUnexpected( @@ -327,6 +332,9 @@ export function isUnexpected( export function isUnexpected( response: Detect200Response | DetectDefaultResponse, ): response is DetectDefaultResponse; +export function isUnexpected( + response: DetectFromSessionImageId200Response | DetectFromSessionImageIdDefaultResponse, +): response is DetectFromSessionImageIdDefaultResponse; export function isUnexpected( response: FindSimilar200Response | FindSimilarDefaultResponse, ): response is FindSimilarDefaultResponse; @@ -365,51 +373,6 @@ 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; @@ -479,88 +442,11 @@ export function isUnexpected( response: UpdateLargeFaceListFace200Response | UpdateLargeFaceListFaceDefaultResponse, ): response is UpdateLargeFaceListFaceDefaultResponse; export function isUnexpected( - response: CreatePerson202Response | CreatePersonLogicalResponse | CreatePersonDefaultResponse, -): response is CreatePersonDefaultResponse; + response: CreatePersonGroup200Response | CreatePersonGroupDefaultResponse, +): response is CreatePersonGroupDefaultResponse; 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: CreatePersonGroup200Response | CreatePersonGroupDefaultResponse, -): response is CreatePersonGroupDefaultResponse; -export function isUnexpected( - response: DeletePersonGroup200Response | DeletePersonGroupDefaultResponse, -): response is DeletePersonGroupDefaultResponse; + response: DeletePersonGroup200Response | DeletePersonGroupDefaultResponse, +): response is DeletePersonGroupDefaultResponse; export function isUnexpected( response: GetPersonGroup200Response | GetPersonGroupDefaultResponse, ): response is GetPersonGroupDefaultResponse; @@ -673,6 +559,131 @@ export function isUnexpected( | UpdateLargePersonGroupPersonFace200Response | UpdateLargePersonGroupPersonFaceDefaultResponse, ): response is UpdateLargePersonGroupPersonFaceDefaultResponse; +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: GetSessionImage200Response | GetSessionImageDefaultResponse, +): response is GetSessionImageDefaultResponse; +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: | GetOperationResult200Response @@ -681,6 +692,8 @@ export function isUnexpected( | DetectFromUrlDefaultResponse | Detect200Response | DetectDefaultResponse + | DetectFromSessionImageId200Response + | DetectFromSessionImageIdDefaultResponse | FindSimilar200Response | FindSimilarDefaultResponse | FindSimilarFromFaceList200Response @@ -705,28 +718,6 @@ 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 @@ -770,54 +761,6 @@ 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 @@ -887,11 +830,84 @@ export function isUnexpected( | GetLargePersonGroupPersonFace200Response | GetLargePersonGroupPersonFaceDefaultResponse | UpdateLargePersonGroupPersonFace200Response - | UpdateLargePersonGroupPersonFaceDefaultResponse, + | UpdateLargePersonGroupPersonFaceDefaultResponse + | CreateLivenessSession200Response + | CreateLivenessSessionDefaultResponse + | GetLivenessSessions200Response + | GetLivenessSessionsDefaultResponse + | DeleteLivenessSession200Response + | DeleteLivenessSessionDefaultResponse + | GetLivenessSessionResult200Response + | GetLivenessSessionResultDefaultResponse + | GetLivenessSessionAuditEntries200Response + | GetLivenessSessionAuditEntriesDefaultResponse + | CreateLivenessWithVerifySessionWithVerifyImage200Response + | CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse + | CreateLivenessWithVerifySession200Response + | CreateLivenessWithVerifySessionDefaultResponse + | GetLivenessWithVerifySessions200Response + | GetLivenessWithVerifySessionsDefaultResponse + | DeleteLivenessWithVerifySession200Response + | DeleteLivenessWithVerifySessionDefaultResponse + | GetLivenessWithVerifySessionResult200Response + | GetLivenessWithVerifySessionResultDefaultResponse + | GetLivenessWithVerifySessionAuditEntries200Response + | GetLivenessWithVerifySessionAuditEntriesDefaultResponse + | GetSessionImage200Response + | GetSessionImageDefaultResponse + | 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, ): response is | GetOperationResultDefaultResponse | DetectFromUrlDefaultResponse | DetectDefaultResponse + | DetectFromSessionImageIdDefaultResponse | FindSimilarDefaultResponse | FindSimilarFromFaceListDefaultResponse | FindSimilarFromLargeFaceListDefaultResponse @@ -904,17 +920,6 @@ export function isUnexpected( | VerifyFromLargePersonGroupDefaultResponse | VerifyFromPersonDirectoryDefaultResponse | GroupDefaultResponse - | CreateLivenessSessionDefaultResponse - | GetLivenessSessionsDefaultResponse - | DeleteLivenessSessionDefaultResponse - | GetLivenessSessionResultDefaultResponse - | GetLivenessSessionAuditEntriesDefaultResponse - | CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse - | CreateLivenessWithVerifySessionDefaultResponse - | GetLivenessWithVerifySessionsDefaultResponse - | DeleteLivenessWithVerifySessionDefaultResponse - | GetLivenessWithVerifySessionResultDefaultResponse - | GetLivenessWithVerifySessionAuditEntriesDefaultResponse | CreateFaceListDefaultResponse | DeleteFaceListDefaultResponse | GetFaceListDefaultResponse @@ -936,26 +941,6 @@ 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 @@ -989,7 +974,39 @@ export function isUnexpected( | AddLargePersonGroupPersonFaceDefaultResponse | DeleteLargePersonGroupPersonFaceDefaultResponse | GetLargePersonGroupPersonFaceDefaultResponse - | UpdateLargePersonGroupPersonFaceDefaultResponse { + | UpdateLargePersonGroupPersonFaceDefaultResponse + | CreateLivenessSessionDefaultResponse + | GetLivenessSessionsDefaultResponse + | DeleteLivenessSessionDefaultResponse + | GetLivenessSessionResultDefaultResponse + | GetLivenessSessionAuditEntriesDefaultResponse + | CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse + | CreateLivenessWithVerifySessionDefaultResponse + | GetLivenessWithVerifySessionsDefaultResponse + | DeleteLivenessWithVerifySessionDefaultResponse + | GetLivenessWithVerifySessionResultDefaultResponse + | GetLivenessWithVerifySessionAuditEntriesDefaultResponse + | GetSessionImageDefaultResponse + | CreatePersonDefaultResponse + | GetPersonsDefaultResponse + | DeletePersonDefaultResponse + | GetPersonDefaultResponse + | UpdatePersonDefaultResponse + | GetDynamicPersonGroupReferencesDefaultResponse + | AddPersonFaceDefaultResponse + | AddPersonFaceFromUrlDefaultResponse + | GetPersonFacesDefaultResponse + | DeletePersonFaceDefaultResponse + | GetPersonFaceDefaultResponse + | UpdatePersonFaceDefaultResponse + | CreateDynamicPersonGroupWithPersonDefaultResponse + | CreateDynamicPersonGroupDefaultResponse + | DeleteDynamicPersonGroupDefaultResponse + | GetDynamicPersonGroupDefaultResponse + | UpdateDynamicPersonGroupWithPersonChangesDefaultResponse + | UpdateDynamicPersonGroupDefaultResponse + | GetDynamicPersonGroupsDefaultResponse + | GetDynamicPersonGroupPersonsDefaultResponse { 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 b2ba0d07db36..fad694f65acb 100644 --- a/sdk/face/ai-vision-face-rest/src/models.ts +++ b/sdk/face/ai-vision-face-rest/src/models.ts @@ -1,67 +1,134 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -/** Request for creating liveness session. */ +/** Model for creating face collection. */ +export interface CreateCollectionRequest { + /** User defined name, maximum length is 128. */ + name: string; + /** Optional user defined data. Length should not exceed 16K. */ + userData?: string; + /** + * The 'recognitionModel' associated with this face list. Supported 'recognitionModel' values include 'recognition_01', 'recognition_02, 'recognition_03', and 'recognition_04'. The default value is 'recognition_01'. 'recognition_04' is recommended since its accuracy is improved on faces wearing masks compared with 'recognition_03', and its overall accuracy is improved compared with 'recognition_01' and 'recognition_02'. + * + * Possible values: "recognition_01", "recognition_02", "recognition_03", "recognition_04" + */ + recognitionModel?: RecognitionModel; +} + +/** User defined fields for object update. */ +export interface UserDefinedFieldsForUpdate { + /** User defined name, maximum length is 128. */ + name?: string; + /** Optional user defined data. Length should not exceed 16K. */ + userData?: string; +} + +/** Add face from url request. */ +export interface AddFaceFromUrlRequest { + /** URL of input image. */ + url: string; +} + +/** User defined data for persisted face. */ +export interface FaceUserData { + /** User-provided data attached to the face. The length limit is 1K. */ + userData?: string; +} + +/** User defined fields for object creation. */ +export interface UserDefinedFields { + /** User defined name, maximum length is 128. */ + name: string; + /** Optional user defined data. Length should not exceed 16K. */ + userData?: string; +} + +/** Request model for creating liveness session. */ export interface CreateLivenessSessionContent { - /** Type of liveness mode the client should follow. */ + /** + * Type of liveness mode the client should follow. + * + * Possible values: "Passive", "PassiveActive" + */ 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; + /** Whether or not store the session image. */ + enableSessionImage?: boolean; + /** + * The model version used for liveness classification. This is an optional parameter, and if this is not specified, then the latest supported model version will be chosen + * + * Possible values: "2022-10-15-preview.04", "2023-12-20-preview.06" + */ + livenessSingleModalModel?: LivenessModel; /** 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; } -export interface CreateLivenessWithVerifySessionContentParametersPartDescriptor { +export interface CreateLivenessWithVerifySessionMultipartContentParametersPartDescriptor { name: "Parameters"; - body: CreateLivenessSessionContent; + body: CreateLivenessWithVerifySessionJsonContent; } -export interface CreateLivenessWithVerifySessionContentVerifyImagePartDescriptor { +export interface CreateLivenessWithVerifySessionMultipartContentVerifyImagePartDescriptor { name: "VerifyImage"; body: string | Uint8Array | ReadableStream | NodeJS.ReadableStream | File; filename?: string; contentType?: string; } +/** Request for creating liveness with verify session. */ +export interface CreateLivenessWithVerifySessionJsonContent { + /** + * Type of liveness mode the client should follow. + * + * Possible values: "Passive", "PassiveActive" + */ + 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; + /** Whether or not store the session image. */ + enableSessionImage?: boolean; + /** + * The model version used for liveness classification. This is an optional parameter, and if this is not specified, then the latest supported model version will be chosen + * + * Possible values: "2022-10-15-preview.04", "2023-12-20-preview.06" + */ + livenessSingleModalModel?: LivenessModel; + /** 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; + /** Whether or not return the verify image hash. */ + returnVerifyImageHash?: boolean; + /** Threshold for confidence of the face verification. */ + verifyConfidenceThreshold?: number; +} + /** Alias for DetectionModel */ -export type DetectionModel = string | "detection_01" | "detection_02" | "detection_03"; +export type DetectionModel = string; /** Alias for RecognitionModel */ -export type RecognitionModel = - | string - | "recognition_01" - | "recognition_02" - | "recognition_03" - | "recognition_04"; +export type RecognitionModel = string; /** Alias for FaceAttributeType */ -export type FaceAttributeType = - | string - | "headPose" - | "glasses" - | "occlusion" - | "accessories" - | "blur" - | "exposure" - | "noise" - | "mask" - | "qualityForRecognition" - | "age" - | "smile" - | "facialHair" - | "hair"; +export type FaceAttributeType = string; /** Alias for FindSimilarMatchMode */ -export type FindSimilarMatchMode = string | "matchPerson" | "matchFace"; +export type FindSimilarMatchMode = string; /** Alias for LivenessOperationMode */ -export type LivenessOperationMode = string | "Passive" | "PassiveActive"; +export type LivenessOperationMode = string; +/** Alias for LivenessModel */ +export type LivenessModel = string; /** Request of liveness with verify session creation. */ -export type CreateLivenessWithVerifySessionContent = +export type CreateLivenessWithVerifySessionMultipartContent = | FormData | Array< - | CreateLivenessWithVerifySessionContentParametersPartDescriptor - | CreateLivenessWithVerifySessionContentVerifyImagePartDescriptor + | CreateLivenessWithVerifySessionMultipartContentParametersPartDescriptor + | CreateLivenessWithVerifySessionMultipartContentVerifyImagePartDescriptor >; /** API versions for Azure AI Face API. */ -export type Versions = "v1.1-preview.1"; +export type Versions = "v1.2-preview.1"; diff --git a/sdk/face/ai-vision-face-rest/src/outputModels.ts b/sdk/face/ai-vision-face-rest/src/outputModels.ts index 4e89df37ed41..6be946d78508 100644 --- a/sdk/face/ai-vision-face-rest/src/outputModels.ts +++ b/sdk/face/ai-vision-face-rest/src/outputModels.ts @@ -5,7 +5,11 @@ export interface OperationResultOutput { /** Operation ID of the operation. */ readonly operationId: string; - /** Current status of the operation. */ + /** + * Current status of the operation. + * + * Possible values: "notStarted", "running", "succeeded", "failed" + */ status: OperationStatusOutput; /** Date and time the operation was created. */ createdTime: string; @@ -35,7 +39,11 @@ export interface FaceErrorOutput { export interface FaceDetectionResultOutput { /** Unique faceId of the detected face, created by detection API and it will expire 24 hours after the detection call. To return this, it requires 'returnFaceId' parameter to be true. */ faceId?: string; - /** The 'recognitionModel' associated with this faceId. This is only returned when 'returnRecognitionModel' is explicitly set as true. */ + /** + * The 'recognitionModel' associated with this faceId. This is only returned when 'returnRecognitionModel' is explicitly set as true. + * + * Possible values: "recognition_01", "recognition_02", "recognition_03", "recognition_04" + */ recognitionModel?: RecognitionModelOutput; /** A rectangle area for the face location on image. */ faceRectangle: FaceRectangleOutput; @@ -131,7 +139,11 @@ export interface FaceAttributesOutput { smile?: number; /** Properties describing facial hair attributes. */ facialHair?: FacialHairOutput; - /** Glasses type if any of the face. */ + /** + * Glasses type if any of the face. + * + * Possible values: "noGlasses", "readingGlasses", "sunglasses", "swimmingGoggles" + */ glasses?: GlassesTypeOutput; /** 3-D roll/yaw/pitch angles for face direction. */ headPose?: HeadPoseOutput; @@ -149,7 +161,11 @@ export interface FaceAttributesOutput { noise?: NoisePropertiesOutput; /** Properties describing the presence of a mask on a given face. */ mask?: MaskPropertiesOutput; - /** Properties describing the overall image quality regarding whether the image being used in the detection is of sufficient quality to attempt face recognition on. */ + /** + * Properties describing the overall image quality regarding whether the image being used in the detection is of sufficient quality to attempt face recognition on. + * + * Possible values: "low", "medium", "high" + */ qualityForRecognition?: QualityForRecognitionOutput; } @@ -185,7 +201,11 @@ export interface HairPropertiesOutput { /** An array of candidate colors and confidence level in the presence of each. */ export interface HairColorOutput { - /** Name of the hair color. */ + /** + * Name of the hair color. + * + * Possible values: "unknown", "white", "gray", "blond", "brown", "red", "black", "other" + */ color: HairColorTypeOutput; /** Confidence level of the color. Range between [0,1]. */ confidence: number; @@ -203,7 +223,11 @@ export interface OcclusionPropertiesOutput { /** Accessory item and corresponding confidence level. */ export interface AccessoryItemOutput { - /** Type of the accessory. */ + /** + * Type of the accessory. + * + * Possible values: "headwear", "glasses", "mask" + */ type: AccessoryTypeOutput; /** Confidence level of the accessory type. Range between [0,1]. */ confidence: number; @@ -211,7 +235,11 @@ export interface AccessoryItemOutput { /** Properties describing any presence of blur within the image. */ export interface BlurPropertiesOutput { - /** An enum value indicating level of blurriness. */ + /** + * An enum value indicating level of blurriness. + * + * Possible values: "low", "medium", "high" + */ blurLevel: BlurLevelOutput; /** A number indicating level of blurriness ranging from 0 to 1. */ value: number; @@ -219,7 +247,11 @@ export interface BlurPropertiesOutput { /** Properties describing exposure level of the image. */ export interface ExposurePropertiesOutput { - /** An enum value indicating level of exposure. */ + /** + * An enum value indicating level of exposure. + * + * Possible values: "underExposure", "goodExposure", "overExposure" + */ exposureLevel: ExposureLevelOutput; /** A number indicating level of exposure level ranging from 0 to 1. [0, 0.25) is under exposure. [0.25, 0.75) is good exposure. [0.75, 1] is over exposure. */ value: number; @@ -227,7 +259,11 @@ export interface ExposurePropertiesOutput { /** Properties describing noise level of the image. */ export interface NoisePropertiesOutput { - /** An enum value indicating level of noise. */ + /** + * An enum value indicating level of noise. + * + * Possible values: "low", "medium", "high" + */ noiseLevel: NoiseLevelOutput; /** A number indicating level of noise level ranging from 0 to 1. [0, 0.25) is under exposure. [0.25, 0.75) is good exposure. [0.75, 1] is over exposure. [0, 0.3) is low noise level. [0.3, 0.7) is medium noise level. [0.7, 1] is high noise level. */ value: number; @@ -237,7 +273,11 @@ export interface NoisePropertiesOutput { export interface MaskPropertiesOutput { /** A boolean value indicating whether nose and mouth are covered. */ noseAndMouthCovered: boolean; - /** Type of the mask. */ + /** + * Type of the mask. + * + * Possible values: "faceMask", "noMask", "otherMaskOrOcclusion", "uncertain" + */ type: MaskTypeOutput; } @@ -283,6 +323,174 @@ 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. + * + * Possible values: "recognition_01", "recognition_02", "recognition_03", "recognition_04" + */ + 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. + * + * Possible values: "recognition_01", "recognition_02", "recognition_03", "recognition_04" + */ + 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. + * + * Possible values: "recognition_01", "recognition_02", "recognition_03", "recognition_04" + */ + 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. + * + * Possible values: "notStarted", "running", "succeeded", "failed" + */ + 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. + * + * Possible values: "recognition_01", "recognition_02", "recognition_03", "recognition_04" + */ + 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. + * + * Possible values: "recognition_01", "recognition_02", "recognition_03", "recognition_04" + */ + 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; +} + /** 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. */ @@ -305,7 +513,11 @@ export interface LivenessSessionOutput { deviceCorrelationId?: string; /** Seconds the session should last for. Range is 60 to 86400 seconds. Default value is 600. */ authTokenTimeToLiveInSeconds?: number; - /** The current status of the session. */ + /** + * The current status of the session. + * + * Possible values: "NotStarted", "Started", "ResultAvailable" + */ status: FaceSessionStatusOutput; /** The latest session audit result only populated if status == 'ResultAvailable'. */ result?: LivenessSessionAuditEntryOutput; @@ -329,6 +541,10 @@ export interface LivenessSessionAuditEntryOutput { response: AuditLivenessResponseInfoOutput; /** The server calculated digest for this request. If the client reported digest differs from the server calculated digest, then the message integrity between the client and service has been compromised and the result should not be trusted. For more information, see how to guides on how to leverage this value to secure your end-to-end solution. */ digest: string; + /** The image ID of the session request. */ + sessionImageId?: string; + /** The sha256 hash of the verify-image in the request. */ + verifyImageHash?: string; } /** Audit entry for a request in the session. */ @@ -357,11 +573,19 @@ export interface AuditLivenessResponseInfoOutput { /** The response body of detect liveness API call. */ export interface LivenessResponseBodyOutput extends Record { - /** The liveness classification for the target face. */ + /** + * The liveness classification for the target face. + * + * Possible values: "uncertain", "realface", "spoofface" + */ livenessDecision?: LivenessDecisionOutput; /** Specific targets used for liveness classification. */ target?: LivenessOutputsTargetOutput; - /** The model version used for liveness classification. */ + /** + * The model version used for liveness classification. + * + * Possible values: "2022-10-15-preview.04", "2023-12-20-preview.06" + */ modelVersionUsed?: LivenessModelOutput; /** The face verification output. Only available when the request is liveness with verify. */ verifyResult?: LivenessWithVerifyOutputsOutput; @@ -375,7 +599,11 @@ export interface LivenessOutputsTargetOutput { fileName: string; /** The time offset within the file of the frame which contains the face rectangle where the liveness classification was made on. */ timeOffsetWithinFile: number; - /** The image type which contains the face rectangle where the liveness classification was made on. */ + /** + * The image type which contains the face rectangle where the liveness classification was made on. + * + * Possible values: "Color", "Infrared", "Depth" + */ imageType: ImageTypeOutput; } @@ -393,7 +621,11 @@ export interface LivenessWithVerifyOutputsOutput { export interface LivenessWithVerifyImageOutput { /** The face region where the comparison image's classification was made. */ faceRectangle: FaceRectangleOutput; - /** Quality of face image for recognition. */ + /** + * Quality of face image for recognition. + * + * Possible values: "low", "medium", "high" + */ qualityForRecognition: QualityForRecognitionOutput; } @@ -437,92 +669,16 @@ export interface LivenessWithVerifySessionOutput { deviceCorrelationId?: string; /** Seconds the session should last for. Range is 60 to 86400 seconds. Default value is 600. */ authTokenTimeToLiveInSeconds?: number; - /** The current status of the session. */ + /** + * The current status of the session. + * + * Possible values: "NotStarted", "Started", "ResultAvailable" + */ status: FaceSessionStatusOutput; /** The latest session audit result only populated if status == 'ResultAvailable'. */ 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. */ @@ -571,119 +727,31 @@ export interface ListPersonResultOutput { 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"; +export type OperationStatusOutput = string; /** Alias for RecognitionModelOutput */ -export type RecognitionModelOutput = - | string - | "recognition_01" - | "recognition_02" - | "recognition_03" - | "recognition_04"; +export type RecognitionModelOutput = string; /** Alias for GlassesTypeOutput */ -export type GlassesTypeOutput = - | string - | "noGlasses" - | "readingGlasses" - | "sunglasses" - | "swimmingGoggles"; +export type GlassesTypeOutput = string; /** Alias for HairColorTypeOutput */ -export type HairColorTypeOutput = - | string - | "unknown" - | "white" - | "gray" - | "blond" - | "brown" - | "red" - | "black" - | "other"; +export type HairColorTypeOutput = string; /** Alias for AccessoryTypeOutput */ -export type AccessoryTypeOutput = string | "headwear" | "glasses" | "mask"; +export type AccessoryTypeOutput = string; /** Alias for BlurLevelOutput */ -export type BlurLevelOutput = string | "low" | "medium" | "high"; +export type BlurLevelOutput = string; /** Alias for ExposureLevelOutput */ -export type ExposureLevelOutput = string | "underExposure" | "goodExposure" | "overExposure"; +export type ExposureLevelOutput = string; /** Alias for NoiseLevelOutput */ -export type NoiseLevelOutput = string | "low" | "medium" | "high"; +export type NoiseLevelOutput = string; /** Alias for MaskTypeOutput */ -export type MaskTypeOutput = string | "faceMask" | "noMask" | "otherMaskOrOcclusion" | "uncertain"; +export type MaskTypeOutput = string; /** Alias for QualityForRecognitionOutput */ -export type QualityForRecognitionOutput = string | "low" | "medium" | "high"; +export type QualityForRecognitionOutput = string; +/** Alias for LivenessModelOutput */ +export type LivenessModelOutput = string; /** Alias for FaceSessionStatusOutput */ -export type FaceSessionStatusOutput = string | "NotStarted" | "Started" | "ResultAvailable"; +export type FaceSessionStatusOutput = string; /** Alias for LivenessDecisionOutput */ -export type LivenessDecisionOutput = string | "uncertain" | "realface" | "spoofface"; +export type LivenessDecisionOutput = string; /** Alias for ImageTypeOutput */ -export type ImageTypeOutput = string | "Color" | "Infrared" | "Depth"; -/** Alias for LivenessModelOutput */ -export type LivenessModelOutput = - | string - | "2020-02-15-preview.01" - | "2021-11-12-preview.03" - | "2022-10-15-preview.04" - | "2023-03-02-preview.05"; +export type ImageTypeOutput = string; diff --git a/sdk/face/ai-vision-face-rest/src/parameters.ts b/sdk/face/ai-vision-face-rest/src/parameters.ts index fc0477af6dc3..e2fd3fb685f2 100644 --- a/sdk/face/ai-vision-face-rest/src/parameters.ts +++ b/sdk/face/ai-vision-face-rest/src/parameters.ts @@ -1,26 +1,40 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RequestParameters } from "@azure-rest/core-client"; +import type { DetectionModel, RecognitionModel, FaceAttributeType, FindSimilarMatchMode, + CreateCollectionRequest, + UserDefinedFieldsForUpdate, + AddFaceFromUrlRequest, + FaceUserData, + UserDefinedFields, CreateLivenessSessionContent, - CreateLivenessWithVerifySessionContent, + CreateLivenessWithVerifySessionMultipartContent, + CreateLivenessWithVerifySessionJsonContent, } from "./models.js"; export type GetOperationResultParameters = RequestParameters; export interface DetectFromUrlBodyParam { - body?: { url: string }; + body: { url: string }; } export interface DetectFromUrlQueryParamProperties { - /** The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. */ + /** + * The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. 'detection_03' is recommended since its accuracy is improved on smaller faces (64x64 pixels) and rotated face orientations. + * + * Possible values: "detection_01", "detection_02", "detection_03" + */ detectionModel?: DetectionModel; - /** The 'recognitionModel' associated with the detected faceIds. Supported 'recognitionModel' values include 'recognition_01', 'recognition_02', 'recognition_03' or 'recognition_04'. The default value is 'recognition_01'. 'recognition_04' is recommended since its accuracy is improved on faces wearing masks compared with 'recognition_03', and its overall accuracy is improved compared with 'recognition_01' and 'recognition_02'. */ + /** + * The 'recognitionModel' associated with the detected faceIds. Supported 'recognitionModel' values include 'recognition_01', 'recognition_02', 'recognition_03' or 'recognition_04'. The default value is 'recognition_01'. 'recognition_04' is recommended since its accuracy is improved on faces wearing masks compared with 'recognition_03', and its overall accuracy is improved compared with 'recognition_01' and 'recognition_02'. + * + * Possible values: "recognition_01", "recognition_02", "recognition_03", "recognition_04" + */ recognitionModel?: RecognitionModel; /** Return faceIds of the detected faces or not. The default value is true. */ returnFaceId?: boolean; @@ -58,9 +72,17 @@ export interface DetectBodyParam { } export interface DetectQueryParamProperties { - /** The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. */ + /** + * The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. 'detection_03' is recommended since its accuracy is improved on smaller faces (64x64 pixels) and rotated face orientations. + * + * Possible values: "detection_01", "detection_02", "detection_03" + */ detectionModel?: DetectionModel; - /** The 'recognitionModel' associated with the detected faceIds. Supported 'recognitionModel' values include 'recognition_01', 'recognition_02', 'recognition_03' or 'recognition_04'. The default value is 'recognition_01'. 'recognition_04' is recommended since its accuracy is improved on faces wearing masks compared with 'recognition_03', and its overall accuracy is improved compared with 'recognition_01' and 'recognition_02'. */ + /** + * The 'recognitionModel' associated with the detected faceIds. Supported 'recognitionModel' values include 'recognition_01', 'recognition_02', 'recognition_03' or 'recognition_04'. The default value is 'recognition_01'. 'recognition_04' is recommended since its accuracy is improved on faces wearing masks compared with 'recognition_03', and its overall accuracy is improved compared with 'recognition_01' and 'recognition_02'. + * + * Possible values: "recognition_01", "recognition_02", "recognition_03", "recognition_04" + */ recognitionModel?: RecognitionModel; /** Return faceIds of the detected faces or not. The default value is true. */ returnFaceId?: boolean; @@ -88,8 +110,51 @@ export type DetectParameters = DetectQueryParam & DetectBodyParam & RequestParameters; +export interface DetectFromSessionImageIdBodyParam { + body: { sessionImageId: string }; +} + +export interface DetectFromSessionImageIdQueryParamProperties { + /** + * The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. 'detection_03' is recommended since its accuracy is improved on smaller faces (64x64 pixels) and rotated face orientations. + * + * Possible values: "detection_01", "detection_02", "detection_03" + */ + detectionModel?: DetectionModel; + /** + * The 'recognitionModel' associated with the detected faceIds. Supported 'recognitionModel' values include 'recognition_01', 'recognition_02', 'recognition_03' or 'recognition_04'. The default value is 'recognition_01'. 'recognition_04' is recommended since its accuracy is improved on faces wearing masks compared with 'recognition_03', and its overall accuracy is improved compared with 'recognition_01' and 'recognition_02'. + * + * Possible values: "recognition_01", "recognition_02", "recognition_03", "recognition_04" + */ + recognitionModel?: RecognitionModel; + /** Return faceIds of the detected faces or not. The default value is true. */ + returnFaceId?: boolean; + /** Analyze and return the one or more specified face attributes in the comma-separated string like 'returnFaceAttributes=headPose,glasses'. Face attribute analysis has additional computational and time cost. */ + returnFaceAttributes?: FaceAttributeType[]; + /** Return face landmarks of the detected faces or not. The default value is false. */ + returnFaceLandmarks?: boolean; + /** Return 'recognitionModel' or not. The default value is false. This is only applicable when returnFaceId = true. */ + returnRecognitionModel?: boolean; + /** The number of seconds for the face ID being cached. Supported range from 60 seconds up to 86400 seconds. The default value is 86400 (24 hours). */ + faceIdTimeToLive?: number; +} + +export interface DetectFromSessionImageIdQueryParam { + queryParameters?: DetectFromSessionImageIdQueryParamProperties; +} + +export interface DetectFromSessionImageIdMediaTypesParam { + /** The format of the HTTP payload. */ + contentType: "application/json"; +} + +export type DetectFromSessionImageIdParameters = DetectFromSessionImageIdQueryParam & + DetectFromSessionImageIdMediaTypesParam & + DetectFromSessionImageIdBodyParam & + RequestParameters; + export interface FindSimilarBodyParam { - body?: { + body: { faceId: string; maxNumOfCandidatesReturned?: number; mode?: FindSimilarMatchMode; @@ -100,7 +165,7 @@ export interface FindSimilarBodyParam { export type FindSimilarParameters = FindSimilarBodyParam & RequestParameters; export interface FindSimilarFromFaceListBodyParam { - body?: { + body: { faceId: string; maxNumOfCandidatesReturned?: number; mode?: FindSimilarMatchMode; @@ -112,7 +177,7 @@ export type FindSimilarFromFaceListParameters = FindSimilarFromFaceListBodyParam RequestParameters; export interface FindSimilarFromLargeFaceListBodyParam { - body?: { + body: { faceId: string; maxNumOfCandidatesReturned?: number; mode?: FindSimilarMatchMode; @@ -124,7 +189,7 @@ export type FindSimilarFromLargeFaceListParameters = FindSimilarFromLargeFaceLis RequestParameters; export interface IdentifyFromPersonGroupBodyParam { - body?: { + body: { faceIds: string[]; personGroupId: string; maxNumOfCandidatesReturned?: number; @@ -136,7 +201,7 @@ export type IdentifyFromPersonGroupParameters = IdentifyFromPersonGroupBodyParam RequestParameters; export interface IdentifyFromLargePersonGroupBodyParam { - body?: { + body: { faceIds: string[]; largePersonGroupId: string; maxNumOfCandidatesReturned?: number; @@ -148,7 +213,7 @@ export type IdentifyFromLargePersonGroupParameters = IdentifyFromLargePersonGrou RequestParameters; export interface IdentifyFromPersonDirectoryBodyParam { - body?: { + body: { faceIds: string[]; personIds: string[]; maxNumOfCandidatesReturned?: number; @@ -160,7 +225,7 @@ export type IdentifyFromPersonDirectoryParameters = IdentifyFromPersonDirectoryB RequestParameters; export interface IdentifyFromDynamicPersonGroupBodyParam { - body?: { + body: { faceIds: string[]; dynamicPersonGroupId: string; maxNumOfCandidatesReturned?: number; @@ -172,129 +237,39 @@ export type IdentifyFromDynamicPersonGroupParameters = IdentifyFromDynamicPerson RequestParameters; export interface VerifyFaceToFaceBodyParam { - body?: { faceId1: string; faceId2: string }; + body: { faceId1: string; faceId2: string }; } export type VerifyFaceToFaceParameters = VerifyFaceToFaceBodyParam & RequestParameters; export interface VerifyFromPersonGroupBodyParam { - body?: { faceId: string; personGroupId: string; personId: string }; + body: { faceId: string; personGroupId: string; personId: string }; } export type VerifyFromPersonGroupParameters = VerifyFromPersonGroupBodyParam & RequestParameters; export interface VerifyFromLargePersonGroupBodyParam { - body?: { faceId: string; largePersonGroupId: string; personId: string }; + body: { faceId: string; largePersonGroupId: string; personId: string }; } export type VerifyFromLargePersonGroupParameters = VerifyFromLargePersonGroupBodyParam & RequestParameters; export interface VerifyFromPersonDirectoryBodyParam { - body?: { faceId: string; personId: string }; + body: { faceId: string; personId: string }; } export type VerifyFromPersonDirectoryParameters = VerifyFromPersonDirectoryBodyParam & RequestParameters; export interface GroupBodyParam { - body?: { faceIds: string[] }; + body: { faceIds: string[] }; } 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; - userData?: string; - recognitionModel?: RecognitionModel; - }; + body: CreateCollectionRequest; } export type CreateFaceListParameters = CreateFaceListBodyParam & RequestParameters; @@ -312,7 +287,7 @@ export interface GetFaceListQueryParam { export type GetFaceListParameters = GetFaceListQueryParam & RequestParameters; export interface UpdateFaceListBodyParam { - body?: { name?: string; userData?: string }; + body: UserDefinedFieldsForUpdate; } export type UpdateFaceListParameters = UpdateFaceListBodyParam & RequestParameters; @@ -329,13 +304,17 @@ export interface GetFaceListsQueryParam { export type GetFaceListsParameters = GetFaceListsQueryParam & RequestParameters; export interface AddFaceListFaceFromUrlBodyParam { - body?: { url: string }; + body: AddFaceFromUrlRequest; } export interface AddFaceListFaceFromUrlQueryParamProperties { /** 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'. */ + /** + * The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. + * + * Possible values: "detection_01", "detection_02", "detection_03" + */ detectionModel?: DetectionModel; /** User-provided data attached to the face. The size limit is 1K. */ userData?: string; @@ -361,7 +340,11 @@ export interface AddFaceListFaceBodyParam { export interface AddFaceListFaceQueryParamProperties { /** 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'. */ + /** + * The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. + * + * Possible values: "detection_01", "detection_02", "detection_03" + */ detectionModel?: DetectionModel; /** User-provided data attached to the face. The size limit is 1K. */ userData?: string; @@ -383,11 +366,7 @@ export type AddFaceListFaceParameters = AddFaceListFaceQueryParam & export type DeleteFaceListFaceParameters = RequestParameters; export interface CreateLargeFaceListBodyParam { - body?: { - name: string; - userData?: string; - recognitionModel?: RecognitionModel; - }; + body: CreateCollectionRequest; } export type CreateLargeFaceListParameters = CreateLargeFaceListBodyParam & RequestParameters; @@ -405,7 +384,7 @@ export interface GetLargeFaceListQueryParam { export type GetLargeFaceListParameters = GetLargeFaceListQueryParam & RequestParameters; export interface UpdateLargeFaceListBodyParam { - body?: { name?: string; userData?: string }; + body: UserDefinedFieldsForUpdate; } export type UpdateLargeFaceListParameters = UpdateLargeFaceListBodyParam & RequestParameters; @@ -428,13 +407,17 @@ export type GetLargeFaceListTrainingStatusParameters = RequestParameters; export type TrainLargeFaceListParameters = RequestParameters; export interface AddLargeFaceListFaceFromUrlBodyParam { - body?: { url: string }; + body: AddFaceFromUrlRequest; } export interface AddLargeFaceListFaceFromUrlQueryParamProperties { /** 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'. */ + /** + * The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. + * + * Possible values: "detection_01", "detection_02", "detection_03" + */ detectionModel?: DetectionModel; /** User-provided data attached to the face. The size limit is 1K. */ userData?: string; @@ -460,7 +443,11 @@ export interface AddLargeFaceListFaceBodyParam { export interface AddLargeFaceListFaceQueryParamProperties { /** 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'. */ + /** + * The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. + * + * Possible values: "detection_01", "detection_02", "detection_03" + */ detectionModel?: DetectionModel; /** User-provided data attached to the face. The size limit is 1K. */ userData?: string; @@ -483,7 +470,7 @@ export type DeleteLargeFaceListFaceParameters = RequestParameters; export type GetLargeFaceListFaceParameters = RequestParameters; export interface UpdateLargeFaceListFaceBodyParam { - body?: { userData?: string }; + body: FaceUserData; } export type UpdateLargeFaceListFaceParameters = UpdateLargeFaceListFaceBodyParam & @@ -502,48 +489,102 @@ export interface GetLargeFaceListFacesQueryParam { export type GetLargeFaceListFacesParameters = GetLargeFaceListFacesQueryParam & RequestParameters; -export interface CreatePersonBodyParam { - body?: { name: string; userData?: string }; +export interface CreatePersonGroupBodyParam { + body: CreateCollectionRequest; } -export type CreatePersonParameters = CreatePersonBodyParam & RequestParameters; -export type DeletePersonParameters = RequestParameters; -export type GetPersonParameters = RequestParameters; +export type CreatePersonGroupParameters = CreatePersonGroupBodyParam & RequestParameters; +export type DeletePersonGroupParameters = RequestParameters; -export interface UpdatePersonBodyParam { - body?: { name?: string; userData?: string }; +export interface GetPersonGroupQueryParamProperties { + /** Return 'recognitionModel' or not. The default value is false. */ + returnRecognitionModel?: boolean; } -export type UpdatePersonParameters = UpdatePersonBodyParam & RequestParameters; +export interface GetPersonGroupQueryParam { + queryParameters?: GetPersonGroupQueryParamProperties; +} -export interface GetPersonsQueryParamProperties { +export type GetPersonGroupParameters = GetPersonGroupQueryParam & RequestParameters; + +export interface UpdatePersonGroupBodyParam { + body: UserDefinedFieldsForUpdate; +} + +export type UpdatePersonGroupParameters = UpdatePersonGroupBodyParam & RequestParameters; + +export interface GetPersonGroupsQueryParamProperties { /** 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; + /** Return 'recognitionModel' or not. The default value is false. */ + returnRecognitionModel?: boolean; } -export interface GetPersonsQueryParam { - queryParameters?: GetPersonsQueryParamProperties; +export interface GetPersonGroupsQueryParam { + queryParameters?: GetPersonGroupsQueryParamProperties; } -export type GetPersonsParameters = GetPersonsQueryParam & RequestParameters; +export type GetPersonGroupsParameters = GetPersonGroupsQueryParam & RequestParameters; +export type GetPersonGroupTrainingStatusParameters = RequestParameters; +export type TrainPersonGroupParameters = RequestParameters; -export interface GetDynamicPersonGroupReferencesQueryParamProperties { +export interface CreatePersonGroupPersonBodyParam { + body: UserDefinedFields; +} + +export type CreatePersonGroupPersonParameters = CreatePersonGroupPersonBodyParam & + RequestParameters; +export type DeletePersonGroupPersonParameters = RequestParameters; +export type GetPersonGroupPersonParameters = RequestParameters; + +export interface UpdatePersonGroupPersonBodyParam { + body: UserDefinedFieldsForUpdate; +} + +export type UpdatePersonGroupPersonParameters = UpdatePersonGroupPersonBodyParam & + RequestParameters; + +export interface GetPersonGroupPersonsQueryParamProperties { /** 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 interface GetPersonGroupPersonsQueryParam { + queryParameters?: GetPersonGroupPersonsQueryParamProperties; } -export type GetDynamicPersonGroupReferencesParameters = GetDynamicPersonGroupReferencesQueryParam & +export type GetPersonGroupPersonsParameters = GetPersonGroupPersonsQueryParam & RequestParameters; + +export interface AddPersonGroupPersonFaceFromUrlBodyParam { + body: AddFaceFromUrlRequest; +} + +export interface AddPersonGroupPersonFaceFromUrlQueryParamProperties { + /** 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'. + * + * Possible values: "detection_01", "detection_02", "detection_03" + */ + detectionModel?: DetectionModel; + /** User-provided data attached to the face. The size limit is 1K. */ + userData?: string; +} + +export interface AddPersonGroupPersonFaceFromUrlQueryParam { + queryParameters?: AddPersonGroupPersonFaceFromUrlQueryParamProperties; +} + +export type AddPersonGroupPersonFaceFromUrlParameters = AddPersonGroupPersonFaceFromUrlQueryParam & + AddPersonGroupPersonFaceFromUrlBodyParam & RequestParameters; -export interface AddPersonFaceBodyParam { +export interface AddPersonGroupPersonFaceBodyParam { /** * The image to be analyzed * @@ -552,150 +593,67 @@ export interface AddPersonFaceBodyParam { body: string | Uint8Array | ReadableStream | NodeJS.ReadableStream; } -export interface AddPersonFaceQueryParamProperties { +export interface AddPersonGroupPersonFaceQueryParamProperties { /** 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'. */ + /** + * The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. + * + * Possible values: "detection_01", "detection_02", "detection_03" + */ detectionModel?: DetectionModel; /** User-provided data attached to the face. The size limit is 1K. */ userData?: string; } -export interface AddPersonFaceQueryParam { - queryParameters?: AddPersonFaceQueryParamProperties; +export interface AddPersonGroupPersonFaceQueryParam { + queryParameters?: AddPersonGroupPersonFaceQueryParamProperties; } -export interface AddPersonFaceMediaTypesParam { +export interface AddPersonGroupPersonFaceMediaTypesParam { /** The format of the HTTP payload. */ contentType: "application/octet-stream"; } -export type AddPersonFaceParameters = AddPersonFaceQueryParam & - AddPersonFaceMediaTypesParam & - AddPersonFaceBodyParam & +export type AddPersonGroupPersonFaceParameters = AddPersonGroupPersonFaceQueryParam & + AddPersonGroupPersonFaceMediaTypesParam & + AddPersonGroupPersonFaceBodyParam & RequestParameters; +export type DeletePersonGroupPersonFaceParameters = RequestParameters; +export type GetPersonGroupPersonFaceParameters = RequestParameters; -export interface AddPersonFaceFromUrlBodyParam { - body?: { url: string }; +export interface UpdatePersonGroupPersonFaceBodyParam { + body: FaceUserData; } -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 type UpdatePersonGroupPersonFaceParameters = UpdatePersonGroupPersonFaceBodyParam & + RequestParameters; -export interface AddPersonFaceFromUrlQueryParam { - queryParameters?: AddPersonFaceFromUrlQueryParamProperties; +export interface CreateLargePersonGroupBodyParam { + body: CreateCollectionRequest; } -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; - userData?: string; - recognitionModel?: RecognitionModel; - }; -} - -export type CreatePersonGroupParameters = CreatePersonGroupBodyParam & RequestParameters; -export type DeletePersonGroupParameters = RequestParameters; +export type CreateLargePersonGroupParameters = CreateLargePersonGroupBodyParam & RequestParameters; +export type DeleteLargePersonGroupParameters = RequestParameters; -export interface GetPersonGroupQueryParamProperties { +export interface GetLargePersonGroupQueryParamProperties { /** Return 'recognitionModel' or not. The default value is false. */ returnRecognitionModel?: boolean; } -export interface GetPersonGroupQueryParam { - queryParameters?: GetPersonGroupQueryParamProperties; +export interface GetLargePersonGroupQueryParam { + queryParameters?: GetLargePersonGroupQueryParamProperties; } -export type GetPersonGroupParameters = GetPersonGroupQueryParam & RequestParameters; +export type GetLargePersonGroupParameters = GetLargePersonGroupQueryParam & RequestParameters; -export interface UpdatePersonGroupBodyParam { - body?: { name?: string; userData?: string }; +export interface UpdateLargePersonGroupBodyParam { + body: UserDefinedFieldsForUpdate; } -export type UpdatePersonGroupParameters = UpdatePersonGroupBodyParam & RequestParameters; +export type UpdateLargePersonGroupParameters = UpdateLargePersonGroupBodyParam & RequestParameters; -export interface GetPersonGroupsQueryParamProperties { +export interface GetLargePersonGroupsQueryParamProperties { /** 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. */ @@ -704,65 +662,71 @@ export interface GetPersonGroupsQueryParamProperties { returnRecognitionModel?: boolean; } -export interface GetPersonGroupsQueryParam { - queryParameters?: GetPersonGroupsQueryParamProperties; +export interface GetLargePersonGroupsQueryParam { + queryParameters?: GetLargePersonGroupsQueryParamProperties; } -export type GetPersonGroupsParameters = GetPersonGroupsQueryParam & RequestParameters; -export type GetPersonGroupTrainingStatusParameters = RequestParameters; -export type TrainPersonGroupParameters = RequestParameters; +export type GetLargePersonGroupsParameters = GetLargePersonGroupsQueryParam & RequestParameters; +export type GetLargePersonGroupTrainingStatusParameters = RequestParameters; +export type TrainLargePersonGroupParameters = RequestParameters; -export interface CreatePersonGroupPersonBodyParam { - body?: { name: string; userData?: string }; +export interface CreateLargePersonGroupPersonBodyParam { + body: UserDefinedFields; } -export type CreatePersonGroupPersonParameters = CreatePersonGroupPersonBodyParam & +export type CreateLargePersonGroupPersonParameters = CreateLargePersonGroupPersonBodyParam & RequestParameters; -export type DeletePersonGroupPersonParameters = RequestParameters; -export type GetPersonGroupPersonParameters = RequestParameters; +export type DeleteLargePersonGroupPersonParameters = RequestParameters; +export type GetLargePersonGroupPersonParameters = RequestParameters; -export interface UpdatePersonGroupPersonBodyParam { - body?: { name?: string; userData?: string }; +export interface UpdateLargePersonGroupPersonBodyParam { + body: UserDefinedFieldsForUpdate; } -export type UpdatePersonGroupPersonParameters = UpdatePersonGroupPersonBodyParam & +export type UpdateLargePersonGroupPersonParameters = UpdateLargePersonGroupPersonBodyParam & RequestParameters; -export interface GetPersonGroupPersonsQueryParamProperties { +export interface GetLargePersonGroupPersonsQueryParamProperties { /** 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 GetPersonGroupPersonsQueryParam { - queryParameters?: GetPersonGroupPersonsQueryParamProperties; +export interface GetLargePersonGroupPersonsQueryParam { + queryParameters?: GetLargePersonGroupPersonsQueryParamProperties; } -export type GetPersonGroupPersonsParameters = GetPersonGroupPersonsQueryParam & RequestParameters; +export type GetLargePersonGroupPersonsParameters = GetLargePersonGroupPersonsQueryParam & + RequestParameters; -export interface AddPersonGroupPersonFaceFromUrlBodyParam { - body?: { url: string }; +export interface AddLargePersonGroupPersonFaceFromUrlBodyParam { + body: AddFaceFromUrlRequest; } -export interface AddPersonGroupPersonFaceFromUrlQueryParamProperties { +export interface AddLargePersonGroupPersonFaceFromUrlQueryParamProperties { /** 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'. */ + /** + * The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. + * + * Possible values: "detection_01", "detection_02", "detection_03" + */ detectionModel?: DetectionModel; /** User-provided data attached to the face. The size limit is 1K. */ userData?: string; } -export interface AddPersonGroupPersonFaceFromUrlQueryParam { - queryParameters?: AddPersonGroupPersonFaceFromUrlQueryParamProperties; +export interface AddLargePersonGroupPersonFaceFromUrlQueryParam { + queryParameters?: AddLargePersonGroupPersonFaceFromUrlQueryParamProperties; } -export type AddPersonGroupPersonFaceFromUrlParameters = AddPersonGroupPersonFaceFromUrlQueryParam & - AddPersonGroupPersonFaceFromUrlBodyParam & - RequestParameters; +export type AddLargePersonGroupPersonFaceFromUrlParameters = + AddLargePersonGroupPersonFaceFromUrlQueryParam & + AddLargePersonGroupPersonFaceFromUrlBodyParam & + RequestParameters; -export interface AddPersonGroupPersonFaceBodyParam { +export interface AddLargePersonGroupPersonFaceBodyParam { /** * The image to be analyzed * @@ -771,136 +735,174 @@ export interface AddPersonGroupPersonFaceBodyParam { body: string | Uint8Array | ReadableStream | NodeJS.ReadableStream; } -export interface AddPersonGroupPersonFaceQueryParamProperties { +export interface AddLargePersonGroupPersonFaceQueryParamProperties { /** 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'. */ + /** + * The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. + * + * Possible values: "detection_01", "detection_02", "detection_03" + */ detectionModel?: DetectionModel; /** User-provided data attached to the face. The size limit is 1K. */ userData?: string; } -export interface AddPersonGroupPersonFaceQueryParam { - queryParameters?: AddPersonGroupPersonFaceQueryParamProperties; +export interface AddLargePersonGroupPersonFaceQueryParam { + queryParameters?: AddLargePersonGroupPersonFaceQueryParamProperties; } -export interface AddPersonGroupPersonFaceMediaTypesParam { +export interface AddLargePersonGroupPersonFaceMediaTypesParam { /** The format of the HTTP payload. */ contentType: "application/octet-stream"; } -export type AddPersonGroupPersonFaceParameters = AddPersonGroupPersonFaceQueryParam & - AddPersonGroupPersonFaceMediaTypesParam & - AddPersonGroupPersonFaceBodyParam & +export type AddLargePersonGroupPersonFaceParameters = AddLargePersonGroupPersonFaceQueryParam & + AddLargePersonGroupPersonFaceMediaTypesParam & + AddLargePersonGroupPersonFaceBodyParam & RequestParameters; -export type DeletePersonGroupPersonFaceParameters = RequestParameters; -export type GetPersonGroupPersonFaceParameters = RequestParameters; +export type DeleteLargePersonGroupPersonFaceParameters = RequestParameters; +export type GetLargePersonGroupPersonFaceParameters = RequestParameters; -export interface UpdatePersonGroupPersonFaceBodyParam { - body?: { userData?: string }; +export interface UpdateLargePersonGroupPersonFaceBodyParam { + body: FaceUserData; } -export type UpdatePersonGroupPersonFaceParameters = UpdatePersonGroupPersonFaceBodyParam & +export type UpdateLargePersonGroupPersonFaceParameters = UpdateLargePersonGroupPersonFaceBodyParam & RequestParameters; -export interface CreateLargePersonGroupBodyParam { - body?: { - name: string; - userData?: string; - recognitionModel?: RecognitionModel; - }; +export interface CreateLivenessSessionBodyParam { + /** Body parameter. */ + body: CreateLivenessSessionContent; } -export type CreateLargePersonGroupParameters = CreateLargePersonGroupBodyParam & RequestParameters; -export type DeleteLargePersonGroupParameters = RequestParameters; - -export interface GetLargePersonGroupQueryParamProperties { - /** Return 'recognitionModel' or not. The default value is false. */ - returnRecognitionModel?: boolean; -} +export type CreateLivenessSessionParameters = CreateLivenessSessionBodyParam & RequestParameters; +export type DeleteLivenessSessionParameters = RequestParameters; +export type GetLivenessSessionResultParameters = RequestParameters; -export interface GetLargePersonGroupQueryParam { - queryParameters?: GetLargePersonGroupQueryParamProperties; +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 type GetLargePersonGroupParameters = GetLargePersonGroupQueryParam & RequestParameters; - -export interface UpdateLargePersonGroupBodyParam { - body?: { name?: string; userData?: string }; +export interface GetLivenessSessionsQueryParam { + queryParameters?: GetLivenessSessionsQueryParamProperties; } -export type UpdateLargePersonGroupParameters = UpdateLargePersonGroupBodyParam & RequestParameters; +export type GetLivenessSessionsParameters = GetLivenessSessionsQueryParam & RequestParameters; -export interface GetLargePersonGroupsQueryParamProperties { +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; - /** Return 'recognitionModel' or not. The default value is false. */ - returnRecognitionModel?: boolean; } -export interface GetLargePersonGroupsQueryParam { - queryParameters?: GetLargePersonGroupsQueryParamProperties; +export interface GetLivenessSessionAuditEntriesQueryParam { + queryParameters?: GetLivenessSessionAuditEntriesQueryParamProperties; } -export type GetLargePersonGroupsParameters = GetLargePersonGroupsQueryParam & RequestParameters; -export type GetLargePersonGroupTrainingStatusParameters = RequestParameters; -export type TrainLargePersonGroupParameters = RequestParameters; +export type GetLivenessSessionAuditEntriesParameters = GetLivenessSessionAuditEntriesQueryParam & + RequestParameters; -export interface CreateLargePersonGroupPersonBodyParam { - body?: { name: string; userData?: string }; +export interface CreateLivenessWithVerifySessionWithVerifyImageBodyParam { + /** Request content of liveness with verify session creation. */ + body: CreateLivenessWithVerifySessionMultipartContent; } -export type CreateLargePersonGroupPersonParameters = CreateLargePersonGroupPersonBodyParam & - RequestParameters; -export type DeleteLargePersonGroupPersonParameters = RequestParameters; -export type GetLargePersonGroupPersonParameters = RequestParameters; +export interface CreateLivenessWithVerifySessionWithVerifyImageMediaTypesParam { + /** The content type for the operation. Always multipart/form-data for this operation. */ + contentType: "multipart/form-data"; +} -export interface UpdateLargePersonGroupPersonBodyParam { - body?: { name?: string; userData?: string }; +export type CreateLivenessWithVerifySessionWithVerifyImageParameters = + CreateLivenessWithVerifySessionWithVerifyImageMediaTypesParam & + CreateLivenessWithVerifySessionWithVerifyImageBodyParam & + RequestParameters; + +export interface CreateLivenessWithVerifySessionBodyParam { + /** Body parameter. */ + body: CreateLivenessWithVerifySessionJsonContent; } -export type UpdateLargePersonGroupPersonParameters = UpdateLargePersonGroupPersonBodyParam & +export type CreateLivenessWithVerifySessionParameters = CreateLivenessWithVerifySessionBodyParam & RequestParameters; +export type DeleteLivenessWithVerifySessionParameters = RequestParameters; +export type GetLivenessWithVerifySessionResultParameters = RequestParameters; -export interface GetLargePersonGroupPersonsQueryParamProperties { +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 GetLargePersonGroupPersonsQueryParam { - queryParameters?: GetLargePersonGroupPersonsQueryParamProperties; +export interface GetLivenessWithVerifySessionsQueryParam { + queryParameters?: GetLivenessWithVerifySessionsQueryParamProperties; } -export type GetLargePersonGroupPersonsParameters = GetLargePersonGroupPersonsQueryParam & +export type GetLivenessWithVerifySessionsParameters = GetLivenessWithVerifySessionsQueryParam & RequestParameters; -export interface AddLargePersonGroupPersonFaceFromUrlBodyParam { - body?: { url: string }; +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 AddLargePersonGroupPersonFaceFromUrlQueryParamProperties { - /** 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 GetLivenessWithVerifySessionAuditEntriesQueryParam { + queryParameters?: GetLivenessWithVerifySessionAuditEntriesQueryParamProperties; } -export interface AddLargePersonGroupPersonFaceFromUrlQueryParam { - queryParameters?: AddLargePersonGroupPersonFaceFromUrlQueryParamProperties; +export type GetLivenessWithVerifySessionAuditEntriesParameters = + GetLivenessWithVerifySessionAuditEntriesQueryParam & RequestParameters; +export type GetSessionImageParameters = RequestParameters; + +export interface CreatePersonBodyParam { + body: UserDefinedFields; } -export type AddLargePersonGroupPersonFaceFromUrlParameters = - AddLargePersonGroupPersonFaceFromUrlQueryParam & - AddLargePersonGroupPersonFaceFromUrlBodyParam & - RequestParameters; +export type CreatePersonParameters = CreatePersonBodyParam & RequestParameters; +export type DeletePersonParameters = RequestParameters; +export type GetPersonParameters = RequestParameters; -export interface AddLargePersonGroupPersonFaceBodyParam { +export interface UpdatePersonBodyParam { + body: UserDefinedFieldsForUpdate; +} + +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 * @@ -909,34 +911,125 @@ export interface AddLargePersonGroupPersonFaceBodyParam { body: string | Uint8Array | ReadableStream | NodeJS.ReadableStream; } -export interface AddLargePersonGroupPersonFaceQueryParamProperties { +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'. */ + /** + * The 'detectionModel' associated with the detected faceIds. Supported 'detectionModel' values include 'detection_01', 'detection_02' and 'detection_03'. The default value is 'detection_01'. + * + * Possible values: "detection_01", "detection_02", "detection_03" + */ detectionModel?: DetectionModel; /** User-provided data attached to the face. The size limit is 1K. */ userData?: string; } -export interface AddLargePersonGroupPersonFaceQueryParam { - queryParameters?: AddLargePersonGroupPersonFaceQueryParamProperties; +export interface AddPersonFaceQueryParam { + queryParameters?: AddPersonFaceQueryParamProperties; } -export interface AddLargePersonGroupPersonFaceMediaTypesParam { +export interface AddPersonFaceMediaTypesParam { /** The format of the HTTP payload. */ contentType: "application/octet-stream"; } -export type AddLargePersonGroupPersonFaceParameters = AddLargePersonGroupPersonFaceQueryParam & - AddLargePersonGroupPersonFaceMediaTypesParam & - AddLargePersonGroupPersonFaceBodyParam & +export type AddPersonFaceParameters = AddPersonFaceQueryParam & + AddPersonFaceMediaTypesParam & + AddPersonFaceBodyParam & RequestParameters; -export type DeleteLargePersonGroupPersonFaceParameters = RequestParameters; -export type GetLargePersonGroupPersonFaceParameters = RequestParameters; -export interface UpdateLargePersonGroupPersonFaceBodyParam { - body?: { userData?: string }; +export interface AddPersonFaceFromUrlBodyParam { + body: { url: string }; } -export type UpdateLargePersonGroupPersonFaceParameters = UpdateLargePersonGroupPersonFaceBodyParam & +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'. + * + * Possible values: "detection_01", "detection_02", "detection_03" + */ + 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: FaceUserData; +} + +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: UserDefinedFields; +} + +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: UserDefinedFieldsForUpdate; +} + +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; diff --git a/sdk/face/ai-vision-face-rest/src/pollingHelper.ts b/sdk/face/ai-vision-face-rest/src/pollingHelper.ts index 85e8cbe55690..2aad03a4ac11 100644 --- a/sdk/face/ai-vision-face-rest/src/pollingHelper.ts +++ b/sdk/face/ai-vision-face-rest/src/pollingHelper.ts @@ -1,17 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { CancelOnProgress, CreateHttpPollerOptions, RunningOperation, OperationResponse, OperationState, - createHttpPoller, } from "@azure/core-lro"; -import { +import { createHttpPoller } from "@azure/core-lro"; +import type { TrainLargeFaceList202Response, TrainLargeFaceListDefaultResponse, TrainLargeFaceListLogicalResponse, @@ -52,10 +52,6 @@ export interface SimplePollerLike, TResul * 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. */ @@ -106,6 +102,12 @@ export interface SimplePollerLike, TResul * @deprecated Use abortSignal to stop polling instead. */ stopPolling(): void; + + /** + * Returns true if the poller is stopped. + * @deprecated Use abortSignal status to track this instead. + */ + isStopped(): boolean; } /** @@ -206,7 +208,7 @@ export async function getLongRunningPoller( // response we were provided. return getLroResponse(initialResponse); }, - sendPollRequest: async (path, sendPollRequestOptions?: { abortSignal?: AbortSignalLike }) => { + sendPollRequest: async (path: string, pollOptions?: { 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 @@ -214,7 +216,7 @@ export async function getLongRunningPoller( function abortListener(): void { abortController.abort(); } - const inputAbortSignal = sendPollRequestOptions?.abortSignal; + const inputAbortSignal = pollOptions?.abortSignal; const abortSignal = abortController.signal; if (inputAbortSignal?.aborted) { abortController.abort(); diff --git a/sdk/face/ai-vision-face-rest/src/responses.ts b/sdk/face/ai-vision-face-rest/src/responses.ts index d395bc5b92cc..d0a088bb24fb 100644 --- a/sdk/face/ai-vision-face-rest/src/responses.ts +++ b/sdk/face/ai-vision-face-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse } from "@azure-rest/core-client"; +import type { OperationResultOutput, FaceErrorResponseOutput, FaceDetectionResultOutput, @@ -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, + CreateLivenessSessionResultOutput, + LivenessSessionOutput, + LivenessSessionItemOutput, + LivenessSessionAuditEntryOutput, + CreateLivenessWithVerifySessionResultOutput, + LivenessWithVerifySessionOutput, PersonDirectoryPersonOutput, ListGroupReferenceResultOutput, PersonDirectoryFaceOutput, ListFaceResultOutput, DynamicPersonGroupOutput, ListPersonResultOutput, - PersonGroupOutput, - PersonGroupPersonOutput, - PersonGroupPersonFaceOutput, - LargePersonGroupOutput, - LargePersonGroupPersonOutput, - LargePersonGroupPersonFaceOutput, } from "./outputModels.js"; /** A successful call returns the long running operation status. */ @@ -89,6 +89,23 @@ export interface DetectDefaultResponse extends HttpResponse { headers: RawHttpHeaders & DetectDefaultHeaders; } +/** A successful call returns an array of face entries ranked by face rectangle size in descending order. An empty response indicates no faces detected. */ +export interface DetectFromSessionImageId200Response extends HttpResponse { + status: "200"; + body: Array; +} + +export interface DetectFromSessionImageIdDefaultHeaders { + /** String error code indicating what went wrong. */ + "x-ms-error-code"?: string; +} + +export interface DetectFromSessionImageIdDefaultResponse extends HttpResponse { + status: string; + body: FaceErrorResponseOutput; + headers: RawHttpHeaders & DetectFromSessionImageIdDefaultHeaders; +} + /** A successful call returns an array of the most similar faces represented in faceId if the input parameter is faceIds or persistedFaceId if the input parameter is faceListId or largeFaceListId. */ export interface FindSimilar200Response extends HttpResponse { status: "200"; @@ -293,192 +310,6 @@ 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"; @@ -836,1001 +667,1211 @@ export interface GetLargeFaceListFacesDefaultResponse extends HttpResponse { headers: RawHttpHeaders & GetLargeFaceListFacesDefaultHeaders; } -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; +/** The request has succeeded. */ +export interface CreatePersonGroup200Response extends HttpResponse { + status: "200"; } -export interface CreatePersonDefaultHeaders { +export interface CreatePersonGroupDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface CreatePersonDefaultResponse extends HttpResponse { +export interface CreatePersonGroupDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & CreatePersonDefaultHeaders; + headers: RawHttpHeaders & CreatePersonGroupDefaultHeaders; } -/** The final response for long-running createPerson operation */ -export interface CreatePersonLogicalResponse extends HttpResponse { +/** The request has succeeded. */ +export interface DeletePersonGroup200Response extends HttpResponse { status: "200"; - body: CreatePersonResultOutput; } -export interface DeletePerson202Headers { - "operation-location": string; +export interface DeletePersonGroupDefaultHeaders { + /** String error code indicating what went wrong. */ + "x-ms-error-code"?: 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 DeletePersonGroupDefaultResponse extends HttpResponse { + status: string; + body: FaceErrorResponseOutput; + headers: RawHttpHeaders & DeletePersonGroupDefaultHeaders; } -export interface DeletePersonDefaultHeaders { +/** A successful call returns the Person Group's information. */ +export interface GetPersonGroup200Response extends HttpResponse { + status: "200"; + body: PersonGroupOutput; +} + +export interface GetPersonGroupDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface DeletePersonDefaultResponse extends HttpResponse { +export interface GetPersonGroupDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & DeletePersonDefaultHeaders; + headers: RawHttpHeaders & GetPersonGroupDefaultHeaders; } -/** The final response for long-running deletePerson operation */ -export interface DeletePersonLogicalResponse extends HttpResponse { +/** The request has succeeded. */ +export interface UpdatePersonGroup200Response extends HttpResponse { status: "200"; } -/** A successful call returns the person's information. */ -export interface GetPerson200Response extends HttpResponse { +export interface UpdatePersonGroupDefaultHeaders { + /** String error code indicating what went wrong. */ + "x-ms-error-code"?: string; +} + +export interface UpdatePersonGroupDefaultResponse extends HttpResponse { + status: string; + body: FaceErrorResponseOutput; + headers: RawHttpHeaders & UpdatePersonGroupDefaultHeaders; +} + +/** A successful call returns an array of Person Groups and their information (personGroupId, name and userData). */ +export interface GetPersonGroups200Response extends HttpResponse { status: "200"; - body: PersonDirectoryPersonOutput; + body: Array; } -export interface GetPersonDefaultHeaders { +export interface GetPersonGroupsDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetPersonDefaultResponse extends HttpResponse { +export interface GetPersonGroupsDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetPersonDefaultHeaders; + headers: RawHttpHeaders & GetPersonGroupsDefaultHeaders; } -/** The request has succeeded. */ -export interface UpdatePerson200Response extends HttpResponse { +/** A successful call returns the Person Group's training status. */ +export interface GetPersonGroupTrainingStatus200Response extends HttpResponse { status: "200"; + body: TrainingResultOutput; } -export interface UpdatePersonDefaultHeaders { +export interface GetPersonGroupTrainingStatusDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface UpdatePersonDefaultResponse extends HttpResponse { +export interface GetPersonGroupTrainingStatusDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & UpdatePersonDefaultHeaders; + headers: RawHttpHeaders & GetPersonGroupTrainingStatusDefaultHeaders; } -/** A successful call returns an array of Person Directory Persons contained in the Dynamic Person Group. */ -export interface GetPersons200Response extends HttpResponse { +export interface TrainPersonGroup202Headers { + "operation-location": string; +} + +/** A successful call returns an empty response body. */ +export interface TrainPersonGroup202Response extends HttpResponse { + status: "202"; + headers: RawHttpHeaders & TrainPersonGroup202Headers; +} + +export interface TrainPersonGroupDefaultHeaders { + /** String error code indicating what went wrong. */ + "x-ms-error-code"?: string; +} + +export interface TrainPersonGroupDefaultResponse extends HttpResponse { + status: string; + body: FaceErrorResponseOutput; + headers: RawHttpHeaders & TrainPersonGroupDefaultHeaders; +} + +/** The final response for long-running trainPersonGroup operation */ +export interface TrainPersonGroupLogicalResponse extends HttpResponse { status: "200"; - body: Array; } -export interface GetPersonsDefaultHeaders { +/** A successful call returns a new personId created. */ +export interface CreatePersonGroupPerson200Response extends HttpResponse { + status: "200"; + body: CreatePersonResultOutput; +} + +export interface CreatePersonGroupPersonDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetPersonsDefaultResponse extends HttpResponse { +export interface CreatePersonGroupPersonDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetPersonsDefaultHeaders; + headers: RawHttpHeaders & CreatePersonGroupPersonDefaultHeaders; } -/** A successful call returns an array of dynamicPersonGroups information that reference the provided personId. */ -export interface GetDynamicPersonGroupReferences200Response extends HttpResponse { +/** The request has succeeded. */ +export interface DeletePersonGroupPerson200Response extends HttpResponse { status: "200"; - body: ListGroupReferenceResultOutput; } -export interface GetDynamicPersonGroupReferencesDefaultHeaders { +export interface DeletePersonGroupPersonDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetDynamicPersonGroupReferencesDefaultResponse extends HttpResponse { +export interface DeletePersonGroupPersonDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetDynamicPersonGroupReferencesDefaultHeaders; + headers: RawHttpHeaders & DeletePersonGroupPersonDefaultHeaders; } -export interface AddPersonFace202Headers { - "operation-location": string; - location: string; +/** A successful call returns the person's information. */ +export interface GetPersonGroupPerson200Response extends HttpResponse { + status: "200"; + body: PersonGroupPersonOutput; } -/** 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; +export interface GetPersonGroupPersonDefaultHeaders { + /** String error code indicating what went wrong. */ + "x-ms-error-code"?: string; } -export interface AddPersonFaceDefaultHeaders { +export interface GetPersonGroupPersonDefaultResponse extends HttpResponse { + status: string; + body: FaceErrorResponseOutput; + headers: RawHttpHeaders & GetPersonGroupPersonDefaultHeaders; +} + +/** The request has succeeded. */ +export interface UpdatePersonGroupPerson200Response extends HttpResponse { + status: "200"; +} + +export interface UpdatePersonGroupPersonDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface AddPersonFaceDefaultResponse extends HttpResponse { +export interface UpdatePersonGroupPersonDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & AddPersonFaceDefaultHeaders; + headers: RawHttpHeaders & UpdatePersonGroupPersonDefaultHeaders; } -/** The final response for long-running addPersonFace operation */ -export interface AddPersonFaceLogicalResponse 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: AddFaceResultOutput; + body: Array; } -export interface AddPersonFaceFromUrl202Headers { - "operation-location": string; - location: string; +export interface GetPersonGroupPersonsDefaultHeaders { + /** String error code indicating what went wrong. */ + "x-ms-error-code"?: 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"; +export interface GetPersonGroupPersonsDefaultResponse extends HttpResponse { + status: string; + body: FaceErrorResponseOutput; + headers: RawHttpHeaders & GetPersonGroupPersonsDefaultHeaders; +} + +/** A successful call returns a new persistedFaceId. */ +export interface AddPersonGroupPersonFaceFromUrl200Response extends HttpResponse { + status: "200"; 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; +export interface AddPersonGroupPersonFaceDefaultHeaders { + /** String error code indicating what went wrong. */ + "x-ms-error-code"?: 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 AddPersonGroupPersonFaceDefaultResponse extends HttpResponse { + status: string; + body: FaceErrorResponseOutput; + headers: RawHttpHeaders & AddPersonGroupPersonFaceDefaultHeaders; } -export interface DeletePersonFaceDefaultHeaders { +/** The request has succeeded. */ +export interface DeletePersonGroupPersonFace200Response extends HttpResponse { + status: "200"; +} + +export interface DeletePersonGroupPersonFaceDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface DeletePersonFaceDefaultResponse extends HttpResponse { +export interface DeletePersonGroupPersonFaceDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & DeletePersonFaceDefaultHeaders; + headers: RawHttpHeaders & DeletePersonGroupPersonFaceDefaultHeaders; } -/** The final response for long-running deletePersonFace operation */ -export interface DeletePersonFaceLogicalResponse extends HttpResponse { +/** A successful call returns target persisted face's information (persistedFaceId and userData). */ +export interface GetPersonGroupPersonFace200Response extends HttpResponse { status: "200"; + body: PersonGroupPersonFaceOutput; } -/** A successful call returns target persisted face's information (persistedFaceId and userData). */ -export interface GetPersonFace200Response extends HttpResponse { +export interface GetPersonGroupPersonFaceDefaultHeaders { + /** String error code indicating what went wrong. */ + "x-ms-error-code"?: string; +} + +export interface GetPersonGroupPersonFaceDefaultResponse extends HttpResponse { + status: string; + body: FaceErrorResponseOutput; + headers: RawHttpHeaders & GetPersonGroupPersonFaceDefaultHeaders; +} + +/** The request has succeeded. */ +export interface UpdatePersonGroupPersonFace200Response extends HttpResponse { status: "200"; - body: PersonDirectoryFaceOutput; } -export interface GetPersonFaceDefaultHeaders { +export interface UpdatePersonGroupPersonFaceDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetPersonFaceDefaultResponse extends HttpResponse { +export interface UpdatePersonGroupPersonFaceDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetPersonFaceDefaultHeaders; + headers: RawHttpHeaders & UpdatePersonGroupPersonFaceDefaultHeaders; } /** The request has succeeded. */ -export interface UpdatePersonFace200Response extends HttpResponse { +export interface CreateLargePersonGroup200Response extends HttpResponse { status: "200"; } -export interface UpdatePersonFaceDefaultHeaders { +export interface CreateLargePersonGroupDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface UpdatePersonFaceDefaultResponse extends HttpResponse { +export interface CreateLargePersonGroupDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & UpdatePersonFaceDefaultHeaders; + headers: RawHttpHeaders & CreateLargePersonGroupDefaultHeaders; } -/** A successful call returns an array of persistedFaceIds and and a person ID. */ -export interface GetPersonFaces200Response extends HttpResponse { +/** The request has succeeded. */ +export interface DeleteLargePersonGroup200Response extends HttpResponse { status: "200"; - body: ListFaceResultOutput; } -export interface GetPersonFacesDefaultHeaders { +export interface DeleteLargePersonGroupDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetPersonFacesDefaultResponse extends HttpResponse { +export interface DeleteLargePersonGroupDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetPersonFacesDefaultHeaders; + headers: RawHttpHeaders & DeleteLargePersonGroupDefaultHeaders; } -export interface CreateDynamicPersonGroupWithPerson202Headers { - "operation-location": string; +/** A successful call returns the Large Person Group's information. */ +export interface GetLargePersonGroup200Response extends HttpResponse { + status: "200"; + body: LargePersonGroupOutput; } -/** 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 GetLargePersonGroupDefaultHeaders { + /** String error code indicating what went wrong. */ + "x-ms-error-code"?: string; } -export interface CreateDynamicPersonGroupWithPersonDefaultHeaders { +export interface GetLargePersonGroupDefaultResponse extends HttpResponse { + status: string; + body: FaceErrorResponseOutput; + headers: RawHttpHeaders & GetLargePersonGroupDefaultHeaders; +} + +/** 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 CreateDynamicPersonGroupWithPersonDefaultResponse extends HttpResponse { +export interface UpdateLargePersonGroupDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & CreateDynamicPersonGroupWithPersonDefaultHeaders; + headers: RawHttpHeaders & UpdateLargePersonGroupDefaultHeaders; } -/** The final response for long-running createDynamicPersonGroupWithPerson operation */ -export interface CreateDynamicPersonGroupWithPersonLogicalResponse 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; } -/** The request has succeeded. */ -export interface CreateDynamicPersonGroup200Response extends HttpResponse { +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 CreateDynamicPersonGroupDefaultHeaders { +export interface GetLargePersonGroupTrainingStatusDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface CreateDynamicPersonGroupDefaultResponse extends HttpResponse { +export interface GetLargePersonGroupTrainingStatusDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & CreateDynamicPersonGroupDefaultHeaders; + headers: RawHttpHeaders & GetLargePersonGroupTrainingStatusDefaultHeaders; } -export interface DeleteDynamicPersonGroup202Headers { +export interface TrainLargePersonGroup202Headers { "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. 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 { +/** A successful call returns an empty response body. */ +export interface TrainLargePersonGroup202Response extends HttpResponse { status: "202"; - headers: RawHttpHeaders & DeleteDynamicPersonGroup202Headers; + headers: RawHttpHeaders & TrainLargePersonGroup202Headers; } -export interface DeleteDynamicPersonGroupDefaultHeaders { +export interface TrainLargePersonGroupDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface DeleteDynamicPersonGroupDefaultResponse extends HttpResponse { +export interface TrainLargePersonGroupDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & DeleteDynamicPersonGroupDefaultHeaders; + headers: RawHttpHeaders & TrainLargePersonGroupDefaultHeaders; } -/** The final response for long-running deleteDynamicPersonGroup operation */ -export interface DeleteDynamicPersonGroupLogicalResponse extends HttpResponse { +/** The final response for long-running trainLargePersonGroup operation */ +export interface TrainLargePersonGroupLogicalResponse extends HttpResponse { status: "200"; } -/** A successful call returns the Dynamic Person Group's information. */ -export interface GetDynamicPersonGroup200Response extends HttpResponse { +/** A successful call returns a new personId created. */ +export interface CreateLargePersonGroupPerson200Response extends HttpResponse { status: "200"; - body: DynamicPersonGroupOutput; + body: CreatePersonResultOutput; } -export interface GetDynamicPersonGroupDefaultHeaders { +export interface CreateLargePersonGroupPersonDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetDynamicPersonGroupDefaultResponse extends HttpResponse { +export interface CreateLargePersonGroupPersonDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetDynamicPersonGroupDefaultHeaders; + headers: RawHttpHeaders & CreateLargePersonGroupPersonDefaultHeaders; } -export interface UpdateDynamicPersonGroupWithPersonChanges202Headers { - "operation-location": string; +/** The request has succeeded. */ +export interface DeleteLargePersonGroupPerson200Response extends HttpResponse { + status: "200"; } -/** 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 DeleteLargePersonGroupPersonDefaultHeaders { + /** String error code indicating what went wrong. */ + "x-ms-error-code"?: string; } -export interface UpdateDynamicPersonGroupWithPersonChangesDefaultHeaders { +export interface DeleteLargePersonGroupPersonDefaultResponse extends HttpResponse { + status: string; + body: FaceErrorResponseOutput; + headers: RawHttpHeaders & DeleteLargePersonGroupPersonDefaultHeaders; +} + +/** A successful call returns the person's information. */ +export interface GetLargePersonGroupPerson200Response extends HttpResponse { + status: "200"; + body: LargePersonGroupPersonOutput; +} + +export interface GetLargePersonGroupPersonDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface UpdateDynamicPersonGroupWithPersonChangesDefaultResponse extends HttpResponse { +export interface GetLargePersonGroupPersonDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & UpdateDynamicPersonGroupWithPersonChangesDefaultHeaders; + headers: RawHttpHeaders & GetLargePersonGroupPersonDefaultHeaders; } -/** The final response for long-running updateDynamicPersonGroupWithPersonChanges operation */ -export interface UpdateDynamicPersonGroupWithPersonChangesLogicalResponse extends HttpResponse { +/** The request has succeeded. */ +export interface UpdateLargePersonGroupPerson200Response extends HttpResponse { status: "200"; } -/** The request has succeeded. */ -export interface UpdateDynamicPersonGroup200Response extends HttpResponse { +export interface UpdateLargePersonGroupPersonDefaultHeaders { + /** String error code indicating what went wrong. */ + "x-ms-error-code"?: string; +} + +export interface UpdateLargePersonGroupPersonDefaultResponse extends HttpResponse { + status: string; + body: FaceErrorResponseOutput; + headers: RawHttpHeaders & UpdateLargePersonGroupPersonDefaultHeaders; +} + +/** A successful call returns an array of person information that belong to the Large Person Group. */ +export interface GetLargePersonGroupPersons200Response extends HttpResponse { status: "200"; + body: Array; } -export interface UpdateDynamicPersonGroupDefaultHeaders { +export interface GetLargePersonGroupPersonsDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface UpdateDynamicPersonGroupDefaultResponse extends HttpResponse { +export interface GetLargePersonGroupPersonsDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & UpdateDynamicPersonGroupDefaultHeaders; + headers: RawHttpHeaders & GetLargePersonGroupPersonsDefaultHeaders; } -/** 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 a new persistedFaceId. */ +export interface AddLargePersonGroupPersonFaceFromUrl200Response extends HttpResponse { status: "200"; - body: Array; + body: AddFaceResultOutput; } -export interface GetDynamicPersonGroupsDefaultHeaders { +export interface AddLargePersonGroupPersonFaceFromUrlDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetDynamicPersonGroupsDefaultResponse extends HttpResponse { +export interface AddLargePersonGroupPersonFaceFromUrlDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetDynamicPersonGroupsDefaultHeaders; + headers: RawHttpHeaders & AddLargePersonGroupPersonFaceFromUrlDefaultHeaders; } -/** A successful call returns an array of person information in the Person Directory. */ -export interface GetDynamicPersonGroupPersons200Response extends HttpResponse { +/** A successful call returns a new persistedFaceId. */ +export interface AddLargePersonGroupPersonFace200Response extends HttpResponse { status: "200"; - body: ListPersonResultOutput; + body: AddFaceResultOutput; } -export interface GetDynamicPersonGroupPersonsDefaultHeaders { +export interface AddLargePersonGroupPersonFaceDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetDynamicPersonGroupPersonsDefaultResponse extends HttpResponse { +export interface AddLargePersonGroupPersonFaceDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetDynamicPersonGroupPersonsDefaultHeaders; + headers: RawHttpHeaders & AddLargePersonGroupPersonFaceDefaultHeaders; } /** The request has succeeded. */ -export interface CreatePersonGroup200Response extends HttpResponse { +export interface DeleteLargePersonGroupPersonFace200Response extends HttpResponse { status: "200"; } -export interface CreatePersonGroupDefaultHeaders { +export interface DeleteLargePersonGroupPersonFaceDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface CreatePersonGroupDefaultResponse extends HttpResponse { +export interface DeleteLargePersonGroupPersonFaceDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & CreatePersonGroupDefaultHeaders; + headers: RawHttpHeaders & DeleteLargePersonGroupPersonFaceDefaultHeaders; } -/** The request has succeeded. */ -export interface DeletePersonGroup200Response extends HttpResponse { +/** A successful call returns target persisted face's information (persistedFaceId and userData). */ +export interface GetLargePersonGroupPersonFace200Response extends HttpResponse { status: "200"; + body: LargePersonGroupPersonFaceOutput; } -export interface DeletePersonGroupDefaultHeaders { +export interface GetLargePersonGroupPersonFaceDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface DeletePersonGroupDefaultResponse extends HttpResponse { +export interface GetLargePersonGroupPersonFaceDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & DeletePersonGroupDefaultHeaders; + headers: RawHttpHeaders & GetLargePersonGroupPersonFaceDefaultHeaders; } -/** A successful call returns the Person Group's information. */ -export interface GetPersonGroup200Response extends HttpResponse { +/** The request has succeeded. */ +export interface UpdateLargePersonGroupPersonFace200Response extends HttpResponse { status: "200"; - body: PersonGroupOutput; } -export interface GetPersonGroupDefaultHeaders { +export interface UpdateLargePersonGroupPersonFaceDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetPersonGroupDefaultResponse extends HttpResponse { +export interface UpdateLargePersonGroupPersonFaceDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetPersonGroupDefaultHeaders; + headers: RawHttpHeaders & UpdateLargePersonGroupPersonFaceDefaultHeaders; } -/** The request has succeeded. */ -export interface UpdatePersonGroup200Response extends HttpResponse { +/** 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 UpdatePersonGroupDefaultHeaders { +export interface CreateLivenessSessionDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface UpdatePersonGroupDefaultResponse extends HttpResponse { +export interface CreateLivenessSessionDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & UpdatePersonGroupDefaultHeaders; + headers: RawHttpHeaders & CreateLivenessSessionDefaultHeaders; } -/** A successful call returns an array of Person Groups and their information (personGroupId, name and userData). */ -export interface GetPersonGroups200Response extends HttpResponse { +/** The request has succeeded. */ +export interface DeleteLivenessSession200Response extends HttpResponse { status: "200"; - body: Array; } -export interface GetPersonGroupsDefaultHeaders { +export interface DeleteLivenessSessionDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetPersonGroupsDefaultResponse extends HttpResponse { +export interface DeleteLivenessSessionDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetPersonGroupsDefaultHeaders; + headers: RawHttpHeaders & DeleteLivenessSessionDefaultHeaders; } -/** A successful call returns the Person Group's training status. */ -export interface GetPersonGroupTrainingStatus200Response extends HttpResponse { +/** The request has succeeded. */ +export interface GetLivenessSessionResult200Response extends HttpResponse { status: "200"; - body: TrainingResultOutput; + body: LivenessSessionOutput; } -export interface GetPersonGroupTrainingStatusDefaultHeaders { +export interface GetLivenessSessionResultDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetPersonGroupTrainingStatusDefaultResponse extends HttpResponse { +export interface GetLivenessSessionResultDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetPersonGroupTrainingStatusDefaultHeaders; -} - -export interface TrainPersonGroup202Headers { - "operation-location": string; + headers: RawHttpHeaders & GetLivenessSessionResultDefaultHeaders; } -/** A successful call returns an empty response body. */ -export interface TrainPersonGroup202Response extends HttpResponse { - status: "202"; - headers: RawHttpHeaders & TrainPersonGroup202Headers; +/** The request has succeeded. */ +export interface GetLivenessSessions200Response extends HttpResponse { + status: "200"; + body: Array; } -export interface TrainPersonGroupDefaultHeaders { +export interface GetLivenessSessionsDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface TrainPersonGroupDefaultResponse extends HttpResponse { +export interface GetLivenessSessionsDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & TrainPersonGroupDefaultHeaders; -} - -/** The final response for long-running trainPersonGroup operation */ -export interface TrainPersonGroupLogicalResponse extends HttpResponse { - status: "200"; + headers: RawHttpHeaders & GetLivenessSessionsDefaultHeaders; } -/** A successful call returns a new personId created. */ -export interface CreatePersonGroupPerson200Response extends HttpResponse { +/** The request has succeeded. */ +export interface GetLivenessSessionAuditEntries200Response extends HttpResponse { status: "200"; - body: CreatePersonResultOutput; + body: Array; } -export interface CreatePersonGroupPersonDefaultHeaders { +export interface GetLivenessSessionAuditEntriesDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface CreatePersonGroupPersonDefaultResponse extends HttpResponse { +export interface GetLivenessSessionAuditEntriesDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & CreatePersonGroupPersonDefaultHeaders; + headers: RawHttpHeaders & GetLivenessSessionAuditEntriesDefaultHeaders; } -/** The request has succeeded. */ -export interface DeletePersonGroupPerson200Response extends HttpResponse { +/** 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 DeletePersonGroupPersonDefaultHeaders { +export interface CreateLivenessWithVerifySessionWithVerifyImageDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface DeletePersonGroupPersonDefaultResponse extends HttpResponse { +export interface CreateLivenessWithVerifySessionWithVerifyImageDefaultResponse + extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & DeletePersonGroupPersonDefaultHeaders; + headers: RawHttpHeaders & CreateLivenessWithVerifySessionWithVerifyImageDefaultHeaders; } -/** A successful call returns the person's information. */ -export interface GetPersonGroupPerson200Response extends HttpResponse { +/** 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: PersonGroupPersonOutput; + body: CreateLivenessWithVerifySessionResultOutput; } -export interface GetPersonGroupPersonDefaultHeaders { +export interface CreateLivenessWithVerifySessionDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetPersonGroupPersonDefaultResponse extends HttpResponse { +export interface CreateLivenessWithVerifySessionDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetPersonGroupPersonDefaultHeaders; + headers: RawHttpHeaders & CreateLivenessWithVerifySessionDefaultHeaders; } /** The request has succeeded. */ -export interface UpdatePersonGroupPerson200Response extends HttpResponse { +export interface DeleteLivenessWithVerifySession200Response extends HttpResponse { status: "200"; } -export interface UpdatePersonGroupPersonDefaultHeaders { +export interface DeleteLivenessWithVerifySessionDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface UpdatePersonGroupPersonDefaultResponse extends HttpResponse { +export interface DeleteLivenessWithVerifySessionDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & UpdatePersonGroupPersonDefaultHeaders; + headers: RawHttpHeaders & DeleteLivenessWithVerifySessionDefaultHeaders; } -/** A successful call returns an array of person information that belong to the Person Group. */ -export interface GetPersonGroupPersons200Response extends HttpResponse { +/** The request has succeeded. */ +export interface GetLivenessWithVerifySessionResult200Response extends HttpResponse { status: "200"; - body: Array; + body: LivenessWithVerifySessionOutput; } -export interface GetPersonGroupPersonsDefaultHeaders { +export interface GetLivenessWithVerifySessionResultDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetPersonGroupPersonsDefaultResponse extends HttpResponse { +export interface GetLivenessWithVerifySessionResultDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetPersonGroupPersonsDefaultHeaders; + headers: RawHttpHeaders & GetLivenessWithVerifySessionResultDefaultHeaders; } -/** A successful call returns a new persistedFaceId. */ -export interface AddPersonGroupPersonFaceFromUrl200Response extends HttpResponse { +/** The request has succeeded. */ +export interface GetLivenessWithVerifySessions200Response extends HttpResponse { status: "200"; - body: AddFaceResultOutput; + body: Array; } -export interface AddPersonGroupPersonFaceFromUrlDefaultHeaders { +export interface GetLivenessWithVerifySessionsDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface AddPersonGroupPersonFaceFromUrlDefaultResponse extends HttpResponse { +export interface GetLivenessWithVerifySessionsDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & AddPersonGroupPersonFaceFromUrlDefaultHeaders; + headers: RawHttpHeaders & GetLivenessWithVerifySessionsDefaultHeaders; } -/** A successful call returns a new persistedFaceId. */ -export interface AddPersonGroupPersonFace200Response extends HttpResponse { +/** The request has succeeded. */ +export interface GetLivenessWithVerifySessionAuditEntries200Response extends HttpResponse { status: "200"; - body: AddFaceResultOutput; + body: Array; } -export interface AddPersonGroupPersonFaceDefaultHeaders { +export interface GetLivenessWithVerifySessionAuditEntriesDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface AddPersonGroupPersonFaceDefaultResponse extends HttpResponse { +export interface GetLivenessWithVerifySessionAuditEntriesDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & AddPersonGroupPersonFaceDefaultHeaders; + headers: RawHttpHeaders & GetLivenessWithVerifySessionAuditEntriesDefaultHeaders; +} + +export interface GetSessionImage200Headers { + /** The format of the HTTP payload. */ + "content-type": "application/octet-stream"; } /** The request has succeeded. */ -export interface DeletePersonGroupPersonFace200Response extends HttpResponse { +export interface GetSessionImage200Response extends HttpResponse { status: "200"; + /** Value may contain any sequence of octets */ + body: Uint8Array; + headers: RawHttpHeaders & GetSessionImage200Headers; } -export interface DeletePersonGroupPersonFaceDefaultHeaders { +export interface GetSessionImageDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface DeletePersonGroupPersonFaceDefaultResponse extends HttpResponse { +export interface GetSessionImageDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & DeletePersonGroupPersonFaceDefaultHeaders; + headers: RawHttpHeaders & GetSessionImageDefaultHeaders; } -/** A successful call returns target persisted face's information (persistedFaceId and userData). */ -export interface GetPersonGroupPersonFace200Response extends HttpResponse { - status: "200"; - body: PersonGroupPersonFaceOutput; +export interface CreatePerson202Headers { + "operation-location": string; + location: string; } -export interface GetPersonGroupPersonFaceDefaultHeaders { +/** 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 GetPersonGroupPersonFaceDefaultResponse extends HttpResponse { +export interface CreatePersonDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetPersonGroupPersonFaceDefaultHeaders; + headers: RawHttpHeaders & CreatePersonDefaultHeaders; } -/** The request has succeeded. */ -export interface UpdatePersonGroupPersonFace200Response extends HttpResponse { +/** The final response for long-running createPerson operation */ +export interface CreatePersonLogicalResponse extends HttpResponse { status: "200"; + body: CreatePersonResultOutput; } -export interface UpdatePersonGroupPersonFaceDefaultHeaders { +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 UpdatePersonGroupPersonFaceDefaultResponse extends HttpResponse { +export interface DeletePersonDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & UpdatePersonGroupPersonFaceDefaultHeaders; + headers: RawHttpHeaders & DeletePersonDefaultHeaders; } -/** The request has succeeded. */ -export interface CreateLargePersonGroup200Response extends HttpResponse { +/** The final response for long-running deletePerson operation */ +export interface DeletePersonLogicalResponse extends HttpResponse { status: "200"; } -export interface CreateLargePersonGroupDefaultHeaders { +/** 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 CreateLargePersonGroupDefaultResponse extends HttpResponse { +export interface GetPersonDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & CreateLargePersonGroupDefaultHeaders; + headers: RawHttpHeaders & GetPersonDefaultHeaders; } /** The request has succeeded. */ -export interface DeleteLargePersonGroup200Response extends HttpResponse { +export interface UpdatePerson200Response extends HttpResponse { status: "200"; } -export interface DeleteLargePersonGroupDefaultHeaders { +export interface UpdatePersonDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface DeleteLargePersonGroupDefaultResponse extends HttpResponse { +export interface UpdatePersonDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & DeleteLargePersonGroupDefaultHeaders; + headers: RawHttpHeaders & UpdatePersonDefaultHeaders; } -/** A successful call returns the Large Person Group's information. */ -export interface GetLargePersonGroup200Response 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: LargePersonGroupOutput; + body: Array; } -export interface GetLargePersonGroupDefaultHeaders { +export interface GetPersonsDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetLargePersonGroupDefaultResponse extends HttpResponse { +export interface GetPersonsDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetLargePersonGroupDefaultHeaders; + headers: RawHttpHeaders & GetPersonsDefaultHeaders; } -/** The request has succeeded. */ -export interface UpdateLargePersonGroup200Response extends HttpResponse { +/** A successful call returns an array of dynamicPersonGroups information that reference the provided personId. */ +export interface GetDynamicPersonGroupReferences200Response extends HttpResponse { status: "200"; + body: ListGroupReferenceResultOutput; } -export interface UpdateLargePersonGroupDefaultHeaders { +export interface GetDynamicPersonGroupReferencesDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface UpdateLargePersonGroupDefaultResponse extends HttpResponse { +export interface GetDynamicPersonGroupReferencesDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & UpdateLargePersonGroupDefaultHeaders; + headers: RawHttpHeaders & GetDynamicPersonGroupReferencesDefaultHeaders; } -/** 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 AddPersonFace202Headers { + "operation-location": string; + location: string; } -export interface GetLargePersonGroupsDefaultHeaders { +/** 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; +} + +export interface AddPersonFaceDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetLargePersonGroupsDefaultResponse extends HttpResponse { +export interface AddPersonFaceDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetLargePersonGroupsDefaultHeaders; + headers: RawHttpHeaders & AddPersonFaceDefaultHeaders; } -/** A successful call returns the Large Person Group's training status. */ -export interface GetLargePersonGroupTrainingStatus200Response extends HttpResponse { +/** The final response for long-running addPersonFace operation */ +export interface AddPersonFaceLogicalResponse extends HttpResponse { status: "200"; - body: TrainingResultOutput; + body: AddFaceResultOutput; } -export interface GetLargePersonGroupTrainingStatusDefaultHeaders { +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 { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetLargePersonGroupTrainingStatusDefaultResponse extends HttpResponse { +export interface AddPersonFaceFromUrlDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetLargePersonGroupTrainingStatusDefaultHeaders; + headers: RawHttpHeaders & AddPersonFaceFromUrlDefaultHeaders; } -export interface TrainLargePersonGroup202Headers { +/** The final response for long-running addPersonFaceFromUrl operation */ +export interface AddPersonFaceFromUrlLogicalResponse extends HttpResponse { + status: "200"; + body: AddFaceResultOutput; +} + +export interface DeletePersonFace202Headers { "operation-location": string; } -/** A successful call returns an empty response body. */ -export interface TrainLargePersonGroup202Response 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 DeletePersonFace202Response extends HttpResponse { status: "202"; - headers: RawHttpHeaders & TrainLargePersonGroup202Headers; + headers: RawHttpHeaders & DeletePersonFace202Headers; } -export interface TrainLargePersonGroupDefaultHeaders { +export interface DeletePersonFaceDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface TrainLargePersonGroupDefaultResponse extends HttpResponse { +export interface DeletePersonFaceDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & TrainLargePersonGroupDefaultHeaders; + headers: RawHttpHeaders & DeletePersonFaceDefaultHeaders; } -/** The final response for long-running trainLargePersonGroup operation */ -export interface TrainLargePersonGroupLogicalResponse extends HttpResponse { +/** The final response for long-running deletePersonFace operation */ +export interface DeletePersonFaceLogicalResponse extends HttpResponse { status: "200"; } -/** A successful call returns a new personId created. */ -export interface CreateLargePersonGroupPerson200Response extends HttpResponse { +/** A successful call returns target persisted face's information (persistedFaceId and userData). */ +export interface GetPersonFace200Response extends HttpResponse { status: "200"; - body: CreatePersonResultOutput; + body: PersonDirectoryFaceOutput; } -export interface CreateLargePersonGroupPersonDefaultHeaders { +export interface GetPersonFaceDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface CreateLargePersonGroupPersonDefaultResponse extends HttpResponse { +export interface GetPersonFaceDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & CreateLargePersonGroupPersonDefaultHeaders; + headers: RawHttpHeaders & GetPersonFaceDefaultHeaders; } /** The request has succeeded. */ -export interface DeleteLargePersonGroupPerson200Response extends HttpResponse { +export interface UpdatePersonFace200Response extends HttpResponse { status: "200"; } -export interface DeleteLargePersonGroupPersonDefaultHeaders { +export interface UpdatePersonFaceDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface DeleteLargePersonGroupPersonDefaultResponse extends HttpResponse { +export interface UpdatePersonFaceDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & DeleteLargePersonGroupPersonDefaultHeaders; + headers: RawHttpHeaders & UpdatePersonFaceDefaultHeaders; } -/** A successful call returns the person's information. */ -export interface GetLargePersonGroupPerson200Response extends HttpResponse { +/** A successful call returns an array of persistedFaceIds and and a person ID. */ +export interface GetPersonFaces200Response extends HttpResponse { status: "200"; - body: LargePersonGroupPersonOutput; + body: ListFaceResultOutput; } -export interface GetLargePersonGroupPersonDefaultHeaders { +export interface GetPersonFacesDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetLargePersonGroupPersonDefaultResponse extends HttpResponse { +export interface GetPersonFacesDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetLargePersonGroupPersonDefaultHeaders; + headers: RawHttpHeaders & GetPersonFacesDefaultHeaders; +} + +export interface CreateDynamicPersonGroupWithPerson202Headers { + "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. 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 CreateDynamicPersonGroupWithPersonDefaultResponse extends HttpResponse { + status: string; + body: FaceErrorResponseOutput; + headers: RawHttpHeaders & CreateDynamicPersonGroupWithPersonDefaultHeaders; +} + +/** The final response for long-running createDynamicPersonGroupWithPerson operation */ +export interface CreateDynamicPersonGroupWithPersonLogicalResponse extends HttpResponse { + status: "200"; } /** The request has succeeded. */ -export interface UpdateLargePersonGroupPerson200Response extends HttpResponse { +export interface CreateDynamicPersonGroup200Response extends HttpResponse { status: "200"; } -export interface UpdateLargePersonGroupPersonDefaultHeaders { +export interface CreateDynamicPersonGroupDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface UpdateLargePersonGroupPersonDefaultResponse extends HttpResponse { +export interface CreateDynamicPersonGroupDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & UpdateLargePersonGroupPersonDefaultHeaders; + headers: RawHttpHeaders & CreateDynamicPersonGroupDefaultHeaders; } -/** A successful call returns an array of person information that belong to the Large Person Group. */ -export interface GetLargePersonGroupPersons200Response extends HttpResponse { - status: "200"; - body: Array; +export interface DeleteDynamicPersonGroup202Headers { + "operation-location": string; } -export interface GetLargePersonGroupPersonsDefaultHeaders { +/** 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 GetLargePersonGroupPersonsDefaultResponse extends HttpResponse { +export interface DeleteDynamicPersonGroupDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetLargePersonGroupPersonsDefaultHeaders; + headers: RawHttpHeaders & DeleteDynamicPersonGroupDefaultHeaders; } -/** A successful call returns a new persistedFaceId. */ -export interface AddLargePersonGroupPersonFaceFromUrl200Response extends HttpResponse { +/** The final response for long-running deleteDynamicPersonGroup operation */ +export interface DeleteDynamicPersonGroupLogicalResponse extends HttpResponse { status: "200"; - body: AddFaceResultOutput; } -export interface AddLargePersonGroupPersonFaceFromUrlDefaultHeaders { +/** 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 AddLargePersonGroupPersonFaceFromUrlDefaultResponse extends HttpResponse { +export interface GetDynamicPersonGroupDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & AddLargePersonGroupPersonFaceFromUrlDefaultHeaders; + headers: RawHttpHeaders & GetDynamicPersonGroupDefaultHeaders; } -/** A successful call returns a new persistedFaceId. */ -export interface AddLargePersonGroupPersonFace200Response extends HttpResponse { - status: "200"; - body: AddFaceResultOutput; +export interface UpdateDynamicPersonGroupWithPersonChanges202Headers { + "operation-location": string; } -export interface AddLargePersonGroupPersonFaceDefaultHeaders { +/** 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 AddLargePersonGroupPersonFaceDefaultResponse extends HttpResponse { +export interface UpdateDynamicPersonGroupWithPersonChangesDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & AddLargePersonGroupPersonFaceDefaultHeaders; + headers: RawHttpHeaders & UpdateDynamicPersonGroupWithPersonChangesDefaultHeaders; +} + +/** The final response for long-running updateDynamicPersonGroupWithPersonChanges operation */ +export interface UpdateDynamicPersonGroupWithPersonChangesLogicalResponse extends HttpResponse { + status: "200"; } /** The request has succeeded. */ -export interface DeleteLargePersonGroupPersonFace200Response extends HttpResponse { +export interface UpdateDynamicPersonGroup200Response extends HttpResponse { status: "200"; } -export interface DeleteLargePersonGroupPersonFaceDefaultHeaders { +export interface UpdateDynamicPersonGroupDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface DeleteLargePersonGroupPersonFaceDefaultResponse extends HttpResponse { +export interface UpdateDynamicPersonGroupDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & DeleteLargePersonGroupPersonFaceDefaultHeaders; + headers: RawHttpHeaders & UpdateDynamicPersonGroupDefaultHeaders; } -/** A successful call returns target persisted face's information (persistedFaceId and userData). */ -export interface GetLargePersonGroupPersonFace200Response 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: LargePersonGroupPersonFaceOutput; + body: Array; } -export interface GetLargePersonGroupPersonFaceDefaultHeaders { +export interface GetDynamicPersonGroupsDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface GetLargePersonGroupPersonFaceDefaultResponse extends HttpResponse { +export interface GetDynamicPersonGroupsDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & GetLargePersonGroupPersonFaceDefaultHeaders; + headers: RawHttpHeaders & GetDynamicPersonGroupsDefaultHeaders; } -/** The request has succeeded. */ -export interface UpdateLargePersonGroupPersonFace200Response extends HttpResponse { +/** A successful call returns an array of person information in the Person Directory. */ +export interface GetDynamicPersonGroupPersons200Response extends HttpResponse { status: "200"; + body: ListPersonResultOutput; } -export interface UpdateLargePersonGroupPersonFaceDefaultHeaders { +export interface GetDynamicPersonGroupPersonsDefaultHeaders { /** String error code indicating what went wrong. */ "x-ms-error-code"?: string; } -export interface UpdateLargePersonGroupPersonFaceDefaultResponse extends HttpResponse { +export interface GetDynamicPersonGroupPersonsDefaultResponse extends HttpResponse { status: string; body: FaceErrorResponseOutput; - headers: RawHttpHeaders & UpdateLargePersonGroupPersonFaceDefaultHeaders; + headers: RawHttpHeaders & GetDynamicPersonGroupPersonsDefaultHeaders; } diff --git a/sdk/face/ai-vision-face-rest/test/public/livenessSession.spec.ts b/sdk/face/ai-vision-face-rest/test/public/livenessSession.spec.ts index e09e66d5a211..e1de1262890b 100644 --- a/sdk/face/ai-vision-face-rest/test/public/livenessSession.spec.ts +++ b/sdk/face/ai-vision-face-rest/test/public/livenessSession.spec.ts @@ -3,9 +3,11 @@ import { createRecorder, createClient } from "./utils/recordedClient.js"; import { assert, beforeEach, afterEach, it, describe } from "vitest"; -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; -import { FaceClient, LivenessResponseBodyOutput, isUnexpected } from "../../src/index.js"; +import type { FaceClient, LivenessResponseBodyOutput } from "../../src/index.js"; +import { isUnexpected } from "../../src/index.js"; // The crypto module is not available in browser environment, so implement a simple randomUUID function. const randomUUID = (): string => diff --git a/sdk/face/ai-vision-face-rest/test/public/longRunningOperation.spec.ts b/sdk/face/ai-vision-face-rest/test/public/longRunningOperation.spec.ts index aa8341239745..7c6d54639c8f 100644 --- a/sdk/face/ai-vision-face-rest/test/public/longRunningOperation.spec.ts +++ b/sdk/face/ai-vision-face-rest/test/public/longRunningOperation.spec.ts @@ -3,9 +3,10 @@ import { createRecorder, createClient } from "./utils/recordedClient.js"; import { assert, beforeEach, afterEach, it, describe } from "vitest"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; -import { FaceClient, getLongRunningPoller, isUnexpected } from "../../src/index.js"; +import type { FaceClient } from "../../src/index.js"; +import { getLongRunningPoller, isUnexpected } from "../../src/index.js"; // The crypto module is not available in browser environment, so implement a simple randomUUID function. const randomUUID = (): string => diff --git a/sdk/face/ai-vision-face-rest/test/public/node/livenessSession.spec.ts b/sdk/face/ai-vision-face-rest/test/public/node/livenessSession.spec.ts index c1fd6cfc759e..5519e37a43d3 100644 --- a/sdk/face/ai-vision-face-rest/test/public/node/livenessSession.spec.ts +++ b/sdk/face/ai-vision-face-rest/test/public/node/livenessSession.spec.ts @@ -6,9 +6,10 @@ import { readFileSync } from "fs"; import { createRecorder, createClient } from "../utils/recordedClient.js"; import { assert, beforeEach, afterEach, it, describe } from "vitest"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; -import { FaceClient, isUnexpected } from "../../../src/index.js"; +import type { FaceClient } from "../../../src/index.js"; +import { isUnexpected } from "../../../src/index.js"; describe("SessionWithVerify", () => { let recorder: Recorder; 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 5f4a8c8635e5..f9bb38994601 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 @@ -1,15 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - Recorder, - RecorderStartOptions, - VitestTestContext, - assertEnvironmentVariable, -} from "@azure-tools/test-recorder"; +import type { RecorderStartOptions, VitestTestContext } from "@azure-tools/test-recorder"; +import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { AzureKeyCredential } from "@azure/core-auth"; -import createFaceClient, { FaceClient, FaceClientOptions } from "../../../src/index.js"; +import type { FaceClient, FaceClientOptions } from "../../../src/index.js"; +import createFaceClient from "../../../src/index.js"; const envSetupForPlayback: Record = { FACE_ENDPOINT: "https://faceendpoint.cognitiveservices.azure.com/", diff --git a/sdk/face/ai-vision-face-rest/tsconfig.json b/sdk/face/ai-vision-face-rest/tsconfig.json index 75ce705069dc..f4fd69464783 100644 --- a/sdk/face/ai-vision-face-rest/tsconfig.json +++ b/sdk/face/ai-vision-face-rest/tsconfig.json @@ -4,7 +4,8 @@ "module": "NodeNext", "moduleResolution": "NodeNext", "rootDir": ".", - "paths": { "@azure-rest/ai-vision-face": ["./src/index"] } + "paths": { "@azure-rest/ai-vision-face": ["./src/index"] }, + "skipLibCheck": true }, "include": [ "./src/**/*.ts", diff --git a/sdk/face/ai-vision-face-rest/tsp-location.yaml b/sdk/face/ai-vision-face-rest/tsp-location.yaml index 3c246b130875..8447029e0fcd 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: 1d2253d1e221541cf05ae5d0dd95bd28c0846238 +commit: e6fde2ac19d0202f0e72217a3e0f9edb63dba273 repo: Azure/azure-rest-api-specs diff --git a/sdk/face/ai-vision-face-rest/vitest.browser.config.ts b/sdk/face/ai-vision-face-rest/vitest.browser.config.ts index 33366e6842aa..5e0dc418cfa2 100644 --- a/sdk/face/ai-vision-face-rest/vitest.browser.config.ts +++ b/sdk/face/ai-vision-face-rest/vitest.browser.config.ts @@ -32,6 +32,6 @@ export default defineConfig({ reporter: ["text", "json", "html"], reportsDirectory: "coverage-browser", }, - testTimeout: 60000, + testTimeout: 1200000, }, }); diff --git a/sdk/face/ai-vision-face-rest/vitest.config.ts b/sdk/face/ai-vision-face-rest/vitest.config.ts index 35b425436c9f..b488baf19d82 100644 --- a/sdk/face/ai-vision-face-rest/vitest.config.ts +++ b/sdk/face/ai-vision-face-rest/vitest.config.ts @@ -27,6 +27,6 @@ export default defineConfig({ reporter: ["text", "json", "html"], reportsDirectory: "coverage", }, - testTimeout: 60000, + testTimeout: 1200000, }, }); diff --git a/sdk/formrecognizer/ai-form-recognizer/review/ai-form-recognizer.api.md b/sdk/formrecognizer/ai-form-recognizer/review/ai-form-recognizer.api.md index 8f687dd1f99c..ca1d558b9bf3 100644 --- a/sdk/formrecognizer/ai-form-recognizer/review/ai-form-recognizer.api.md +++ b/sdk/formrecognizer/ai-form-recognizer/review/ai-form-recognizer.api.md @@ -5,13 +5,13 @@ ```ts import { AzureKeyCredential } from '@azure/core-auth'; -import { CommonClientOptions } from '@azure/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PollerLike } from '@azure/core-lro'; +import type { PollOperationState } from '@azure/core-lro'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AddressValue { diff --git a/sdk/formrecognizer/ai-form-recognizer/src/azureKeyCredentialPolicy.ts b/sdk/formrecognizer/ai-form-recognizer/src/azureKeyCredentialPolicy.ts index 88bc3615b2e4..be285ec989c4 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/azureKeyCredentialPolicy.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/azureKeyCredentialPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyCredential } from "@azure/core-auth"; -import { PipelinePolicy, PipelineResponse } from "@azure/core-rest-pipeline"; +import type { KeyCredential } from "@azure/core-auth"; +import type { PipelinePolicy, PipelineResponse } from "@azure/core-rest-pipeline"; const APIM_SUBSCRIPTION_KEY_HEADER = "Ocp-Apim-Subscription-Key"; diff --git a/sdk/formrecognizer/ai-form-recognizer/src/documentAnalysisClient.ts b/sdk/formrecognizer/ai-form-recognizer/src/documentAnalysisClient.ts index 1510fb91b26a..882dfff3598d 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/documentAnalysisClient.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/documentAnalysisClient.ts @@ -1,28 +1,28 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyCredential, TokenCredential } from "@azure/core-auth"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; import { createTracingClient } from "@azure/core-tracing"; -import { TracingClient } from "@azure/core-tracing"; +import type { TracingClient } from "@azure/core-tracing"; import { FORM_RECOGNIZER_API_VERSION, SDK_VERSION } from "./constants"; -import { AnalyzeDocumentRequest, AnalyzeResultOperation, GeneratedClient } from "./generated"; +import type { AnalyzeDocumentRequest, AnalyzeResultOperation, GeneratedClient } from "./generated"; import { accept1 } from "./generated/models/parameters"; -import { +import type { AnalysisOperationDefinition, AnalysisPoller, AnalyzeResult, DocumentAnalysisPollOperationState, FormRecognizerRequestBody, - toAnalyzeResultFromGenerated, - toDocumentAnalysisPollOperationState, } from "./lro/analysis"; -import { OperationContext, lro } from "./lro/util/poller"; -import { AnalyzeDocumentOptions } from "./options/AnalyzeDocumentOptions"; -import { DocumentAnalysisClientOptions } from "./options/FormRecognizerClientOptions"; -import { DocumentModel } from "./documentModel"; +import { toAnalyzeResultFromGenerated, toDocumentAnalysisPollOperationState } from "./lro/analysis"; +import type { OperationContext } from "./lro/util/poller"; +import { lro } from "./lro/util/poller"; +import type { AnalyzeDocumentOptions } from "./options/AnalyzeDocumentOptions"; +import type { DocumentAnalysisClientOptions } from "./options/FormRecognizerClientOptions"; +import type { DocumentModel } from "./documentModel"; import { makeServiceClient, Mappers, SERIALIZER } from "./util"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { ClassifyDocumentOptions } from "./options/ClassifyDocumentOptions"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { ClassifyDocumentOptions } from "./options/ClassifyDocumentOptions"; /** * A client for interacting with the Form Recognizer service's analysis features. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/documentModel.ts b/sdk/formrecognizer/ai-form-recognizer/src/documentModel.ts index d5e1a6d439a1..f7b567d6fec5 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/documentModel.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/documentModel.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DocumentFieldSchema, DocumentModelDetails } from "./generated"; -import { AnalyzedDocument, AnalyzeResult } from "./lro/analysis"; -import { DocumentField } from "./models/fields"; +import type { DocumentFieldSchema, DocumentModelDetails } from "./generated"; +import type { AnalyzedDocument, AnalyzeResult } from "./lro/analysis"; +import type { DocumentField } from "./models/fields"; import { isAcronymic, uncapitalize } from "./util"; /** diff --git a/sdk/formrecognizer/ai-form-recognizer/src/documentModelAdministrationClient.ts b/sdk/formrecognizer/ai-form-recognizer/src/documentModelAdministrationClient.ts index 2a9d74556ffa..1e5e0f1ee8e0 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/documentModelAdministrationClient.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/documentModelAdministrationClient.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyCredential, TokenCredential } from "@azure/core-auth"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { TracingClient, createTracingClient } from "@azure/core-tracing"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { TracingClient } from "@azure/core-tracing"; +import { createTracingClient } from "@azure/core-tracing"; import { SDK_VERSION } from "./constants"; -import { +import type { CopyAuthorization, GeneratedClient, ResourceDetails, @@ -16,18 +17,19 @@ import { DocumentClassifierDetails, } from "./generated"; import { accept1 } from "./generated/models/parameters"; -import { +import type { TrainingOperationDefinition, DocumentModelOperationState, DocumentModelPoller, - toTrainingPollOperationState, DocumentModelBuildResponse, AdministrationOperationState, DocumentClassifierPoller, DocumentClassifierOperationState, } from "./lro/administration"; -import { OperationContext, lro } from "./lro/util/poller"; -import { +import { toTrainingPollOperationState } from "./lro/administration"; +import type { OperationContext } from "./lro/util/poller"; +import { lro } from "./lro/util/poller"; +import type { BeginCopyModelOptions, DeleteDocumentModelOptions, DocumentModelAdministrationClientOptions, @@ -39,15 +41,15 @@ import { ListOperationsOptions, PollerOptions, } from "./options"; -import { BeginBuildDocumentClassifierOptions } from "./options/BuildDocumentClassifierOptions"; -import { +import type { BeginBuildDocumentClassifierOptions } from "./options/BuildDocumentClassifierOptions"; +import type { BeginBuildDocumentModelOptions, BeginComposeDocumentModelOptions, DocumentModelBuildMode, } from "./options/BuildModelOptions"; import { Mappers, SERIALIZER, makeServiceClient } from "./util"; -import { FullOperationResponse, OperationOptions } from "@azure/core-client"; -import { +import type { FullOperationResponse, OperationOptions } from "@azure/core-client"; +import type { DocumentModelSource, DocumentClassifierDocumentTypeSources, AzureBlobSource, diff --git a/sdk/formrecognizer/ai-form-recognizer/src/error.ts b/sdk/formrecognizer/ai-form-recognizer/src/error.ts index d7013e2627ce..1143e129d9c7 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/error.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/error.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ErrorModel, InnerError } from "./generated"; +import type { ErrorModel, InnerError } from "./generated"; /** * Returns the innermost error that has a message field. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/lro/administration.ts b/sdk/formrecognizer/ai-form-recognizer/src/lro/administration.ts index 5b702278a16e..4559c1023ce8 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/lro/administration.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/lro/administration.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PollOperationState, PollerLike } from "@azure/core-lro"; -import { OperationOptions } from "@azure/core-client"; +import type { PollOperationState, PollerLike } from "@azure/core-lro"; +import type { OperationOptions } from "@azure/core-client"; import { FormRecognizerError } from "../error"; -import { +import type { DocumentModelDetails, OperationStatus, DocumentModelBuildOperationDetails, @@ -13,8 +13,8 @@ import { DocumentClassifierDetails, DocumentClassifierBuildOperationDetails, } from "../generated"; -import { PollerOptions } from "../options/PollerOptions"; -import { OperationContext } from "./util/poller"; +import type { PollerOptions } from "../options/PollerOptions"; +import type { OperationContext } from "./util/poller"; /** * The possible types of all administration operation states. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/lro/analysis.ts b/sdk/formrecognizer/ai-form-recognizer/src/lro/analysis.ts index fefd367cb630..972a9100bbc2 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/lro/analysis.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/lro/analysis.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PollOperationState, PollerLike } from "@azure/core-lro"; +import type { PollOperationState, PollerLike } from "@azure/core-lro"; import { FormRecognizerError } from "../error"; -import { +import type { AnalyzeResult as GeneratedAnalyzeResult, AnalyzeResultOperation, AnalyzeResultOperationStatus as AnalyzeOperationStatus, @@ -11,16 +11,17 @@ import { DocumentSpan, DocumentStyle, } from "../generated"; -import { DocumentField, toAnalyzedDocumentFieldsFromGenerated } from "../models/fields"; -import { PollerOptions } from "../options"; -import { AnalyzeDocumentOptions } from "../options/AnalyzeDocumentOptions"; +import type { DocumentField } from "../models/fields"; +import { toAnalyzedDocumentFieldsFromGenerated } from "../models/fields"; +import type { PollerOptions } from "../options"; +import type { AnalyzeDocumentOptions } from "../options/AnalyzeDocumentOptions"; import { toBoundingPolygon, toBoundingRegions, toDocumentTableFromGenerated, toKeyValuePairFromGenerated, } from "../transforms/polygon"; -import { +import type { BoundingRegion, DocumentTable, DocumentKeyValuePair, @@ -29,7 +30,7 @@ import { DocumentParagraph, DocumentFormula, } from "../models/documentElements"; -import { +import type { Document as GeneratedDocument, DocumentPage as GeneratedDocumentPage, DocumentLine as GeneratedDocumentLine, diff --git a/sdk/formrecognizer/ai-form-recognizer/src/lro/util/delayMs.ts b/sdk/formrecognizer/ai-form-recognizer/src/lro/util/delayMs.ts index 75e35a834875..b9a7c716607e 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/lro/util/delayMs.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/lro/util/delayMs.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; import { maybemap } from "../../util"; type CancellationToken = Parameters[0]; diff --git a/sdk/formrecognizer/ai-form-recognizer/src/lro/util/poller.ts b/sdk/formrecognizer/ai-form-recognizer/src/lro/util/poller.ts index fd19fe248e4b..d7eae754eee6 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/lro/util/poller.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/lro/util/poller.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PollOperationState, PollerLike } from "@azure/core-lro"; +import type { PollOperationState, PollerLike } from "@azure/core-lro"; import { delayMs } from "./delayMs"; -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; const DEFAULT_POLLING_INTERVAL = 5000; diff --git a/sdk/formrecognizer/ai-form-recognizer/src/models/documentElements.ts b/sdk/formrecognizer/ai-form-recognizer/src/models/documentElements.ts index 5d4043a68861..1c3e1517efcb 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/models/documentElements.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/models/documentElements.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Point2D } from "../transforms/polygon"; -import { +import type { Point2D } from "../transforms/polygon"; +import type { DocumentSpan, DocumentTableCellKind, DocumentField as GeneratedDocumentField, diff --git a/sdk/formrecognizer/ai-form-recognizer/src/models/fields.ts b/sdk/formrecognizer/ai-form-recognizer/src/models/fields.ts index bb706aeb8021..dd77afe92eba 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/models/fields.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/models/fields.ts @@ -1,12 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DocumentSpan } from ".."; +import type { DocumentSpan } from ".."; -import { AddressValue, CurrencyValue, DocumentField as GeneratedDocumentField } from "../generated"; +import type { + AddressValue, + CurrencyValue, + DocumentField as GeneratedDocumentField, +} from "../generated"; import { toBoundingRegions } from "../transforms/polygon"; import { capitalize } from "../util"; -import { BoundingRegion } from "./documentElements"; +import type { BoundingRegion } from "./documentElements"; /** * Fields that are common to all DocumentField variants. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/options/AnalyzeDocumentOptions.ts b/sdk/formrecognizer/ai-form-recognizer/src/options/AnalyzeDocumentOptions.ts index c2b0736c11e5..a62d30a203cf 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/options/AnalyzeDocumentOptions.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/options/AnalyzeDocumentOptions.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { +import type { OperationOptions } from "@azure/core-client"; +import type { AnalyzeResult, AnalyzedDocument, DocumentAnalysisPollOperationState, } from "../lro/analysis"; -import { PollerOptions } from "./PollerOptions"; +import type { PollerOptions } from "./PollerOptions"; /** * Add-on capabilities (features) that can be enabled for the request. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/options/BeginCopyModelOptions.ts b/sdk/formrecognizer/ai-form-recognizer/src/options/BeginCopyModelOptions.ts index 5dac2b4efd0e..5504f2b570c6 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/options/BeginCopyModelOptions.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/options/BeginCopyModelOptions.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { DocumentModelOperationState } from "../lro/administration"; -import { PollerOptions } from "./PollerOptions"; +import type { OperationOptions } from "@azure/core-client"; +import type { DocumentModelOperationState } from "../lro/administration"; +import type { PollerOptions } from "./PollerOptions"; /** * Options for the copy model operation. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/options/BuildDocumentClassifierOptions.ts b/sdk/formrecognizer/ai-form-recognizer/src/options/BuildDocumentClassifierOptions.ts index 7e9a20f50a05..de1af5714dd5 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/options/BuildDocumentClassifierOptions.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/options/BuildDocumentClassifierOptions.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { DocumentClassifierOperationState } from "../lro/administration"; -import { PollerOptions } from "./PollerOptions"; +import type { OperationOptions } from "@azure/core-client"; +import type { DocumentClassifierOperationState } from "../lro/administration"; +import type { PollerOptions } from "./PollerOptions"; /** * Options for the document classifier build operation. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/options/BuildModelOptions.ts b/sdk/formrecognizer/ai-form-recognizer/src/options/BuildModelOptions.ts index 29a127dcf6d7..e1e3829559e7 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/options/BuildModelOptions.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/options/BuildModelOptions.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { DocumentModelOperationState } from "../lro/administration"; -import { PollerOptions } from "./PollerOptions"; +import type { OperationOptions } from "@azure/core-client"; +import type { DocumentModelOperationState } from "../lro/administration"; +import type { PollerOptions } from "./PollerOptions"; /** * Supported model build modes. The model build mode selects the engine that the service uses to train the model based diff --git a/sdk/formrecognizer/ai-form-recognizer/src/options/ClassifyDocumentOptions.ts b/sdk/formrecognizer/ai-form-recognizer/src/options/ClassifyDocumentOptions.ts index 39ec577eb96e..ee15d025ea3d 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/options/ClassifyDocumentOptions.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/options/ClassifyDocumentOptions.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { DocumentAnalysisPollOperationState } from "../lro/analysis"; -import { PollerOptions } from "./PollerOptions"; +import type { OperationOptions } from "@azure/core-client"; +import type { DocumentAnalysisPollOperationState } from "../lro/analysis"; +import type { PollerOptions } from "./PollerOptions"; /** * Options for the document classification operation. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/options/DeleteModelOptions.ts b/sdk/formrecognizer/ai-form-recognizer/src/options/DeleteModelOptions.ts index 1fcbd4c773ce..3fb0df0c8a0b 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/options/DeleteModelOptions.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/options/DeleteModelOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; /** * Options for model deletion. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/options/FormRecognizerClientOptions.ts b/sdk/formrecognizer/ai-form-recognizer/src/options/FormRecognizerClientOptions.ts index 6766c837ae8c..cf95428e3ce4 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/options/FormRecognizerClientOptions.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/options/FormRecognizerClientOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions } from "@azure/core-client"; +import type { CommonClientOptions } from "@azure/core-client"; /** * Valid string index types supported by the Form Recognizer service and SDK clients. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/options/GetCopyAuthorizationOptions.ts b/sdk/formrecognizer/ai-form-recognizer/src/options/GetCopyAuthorizationOptions.ts index 9aff347de00d..49c6d3291f46 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/options/GetCopyAuthorizationOptions.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/options/GetCopyAuthorizationOptions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { CommonModelCreationOptions } from "./BuildModelOptions"; +import type { OperationOptions } from "@azure/core-client"; +import type { CommonModelCreationOptions } from "./BuildModelOptions"; /** * Options for the get copy authorization method. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/options/GetModelOptions.ts b/sdk/formrecognizer/ai-form-recognizer/src/options/GetModelOptions.ts index 395fc852b7df..a21eefa8f3b5 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/options/GetModelOptions.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/options/GetModelOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; /** * Options for retrieving model information. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/options/GetOperationOptions.ts b/sdk/formrecognizer/ai-form-recognizer/src/options/GetOperationOptions.ts index 4e5c0fb09c3d..886703466123 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/options/GetOperationOptions.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/options/GetOperationOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; /** * Options for retrieving an operation state. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/options/GetResourceDetailsOptions.ts b/sdk/formrecognizer/ai-form-recognizer/src/options/GetResourceDetailsOptions.ts index 98d722b2f69b..e988d61ac020 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/options/GetResourceDetailsOptions.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/options/GetResourceDetailsOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; /** * Options for retrieving Form Recognizer resource information. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/options/ListModelsOptions.ts b/sdk/formrecognizer/ai-form-recognizer/src/options/ListModelsOptions.ts index e30410204ad2..546951dbb3f1 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/options/ListModelsOptions.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/options/ListModelsOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; /** * Options for listing models. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/options/ListOperationsOptions.ts b/sdk/formrecognizer/ai-form-recognizer/src/options/ListOperationsOptions.ts index 78f49a735fbf..76d5fba80f1b 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/options/ListOperationsOptions.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/options/ListOperationsOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; /** * Options for listing operations. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/options/PollerOptions.ts b/sdk/formrecognizer/ai-form-recognizer/src/options/PollerOptions.ts index bfd75cab7892..4ce559427e2e 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/options/PollerOptions.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/options/PollerOptions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { PollOperationState } from "@azure/core-lro"; +import type { OperationOptions } from "@azure/core-client"; +import type { PollOperationState } from "@azure/core-lro"; /** * Options for long-running operations (pollers) in the Form Recognizer clients. diff --git a/sdk/formrecognizer/ai-form-recognizer/src/transforms/polygon.ts b/sdk/formrecognizer/ai-form-recognizer/src/transforms/polygon.ts index 200e6cac47e2..b09104a9704a 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/transforms/polygon.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/transforms/polygon.ts @@ -1,12 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { BoundingRegion as GeneratedBoundingRegion, DocumentKeyValuePair as GeneratedDocumentKeyValuePair, DocumentTable as GeneratedDocumentTable, } from "../generated"; -import { BoundingRegion, DocumentKeyValuePair, DocumentTable } from "../models/documentElements"; +import type { + BoundingRegion, + DocumentKeyValuePair, + DocumentTable, +} from "../models/documentElements"; /** * Represents a point used to define bounding polygons. The unit is either 'pixel' or 'inch' (See {@link LengthUnit}). diff --git a/sdk/formrecognizer/ai-form-recognizer/src/util.ts b/sdk/formrecognizer/ai-form-recognizer/src/util.ts index c3c1d9c939db..13a55f434c79 100644 --- a/sdk/formrecognizer/ai-form-recognizer/src/util.ts +++ b/sdk/formrecognizer/ai-form-recognizer/src/util.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; import { createFormRecognizerAzureKeyCredentialPolicy } from "./azureKeyCredentialPolicy"; import { DEFAULT_COGNITIVE_SCOPE, FORM_RECOGNIZER_API_VERSION } from "./constants"; -import { GeneratedClient, GeneratedClientOptionalParams } from "./generated"; +import type { GeneratedClientOptionalParams } from "./generated"; +import { GeneratedClient } from "./generated"; import { DEFAULT_GENERATED_CLIENT_OPTIONS } from "./options/FormRecognizerClientOptions"; import * as Mappers from "./generated/models/mappers"; diff --git a/sdk/formrecognizer/ai-form-recognizer/test/internal/convenienceModelAssignability.ts b/sdk/formrecognizer/ai-form-recognizer/test/internal/convenienceModelAssignability.ts index 817e7baaa786..8e3c99e02f41 100644 --- a/sdk/formrecognizer/ai-form-recognizer/test/internal/convenienceModelAssignability.ts +++ b/sdk/formrecognizer/ai-form-recognizer/test/internal/convenienceModelAssignability.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { Document as GeneratedDocument, DocumentKeyValueElement as GeneratedDocumentKeyValueElement, DocumentLine as GeneratedDocumentLine, @@ -14,7 +14,7 @@ import { DocumentBarcode as GeneratedDocumentBarcode, DocumentFormula as GeneratedDocumentFormula, } from "../../src/generated"; -import { +import type { Document, DocumentKeyValueElement, DocumentLine, diff --git a/sdk/formrecognizer/ai-form-recognizer/test/private/getChildren.spec.ts b/sdk/formrecognizer/ai-form-recognizer/test/private/getChildren.spec.ts index b8a3cfd6ed45..16b61b60a1d9 100644 --- a/sdk/formrecognizer/ai-form-recognizer/test/private/getChildren.spec.ts +++ b/sdk/formrecognizer/ai-form-recognizer/test/private/getChildren.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DocumentSpan } from "../../src"; +import type { DocumentSpan } from "../../src"; import { contains, fastGetChildren, diff --git a/sdk/formrecognizer/ai-form-recognizer/test/private/poller.spec.ts b/sdk/formrecognizer/ai-form-recognizer/test/private/poller.spec.ts index 05eb151756f5..43909d52c219 100644 --- a/sdk/formrecognizer/ai-form-recognizer/test/private/poller.spec.ts +++ b/sdk/formrecognizer/ai-form-recognizer/test/private/poller.spec.ts @@ -3,7 +3,7 @@ import { assert } from "@azure-tools/test-utils"; import { lro } from "../../src/lro/util/poller"; -import { PollOperationState } from "@azure/core-lro"; +import type { PollOperationState } from "@azure/core-lro"; import { AbortError } from "@azure/abort-controller"; describe("custom poller", function () { diff --git a/sdk/formrecognizer/ai-form-recognizer/test/private/tracing.spec.ts b/sdk/formrecognizer/ai-form-recognizer/test/private/tracing.spec.ts index c81d3eec4d1e..b29ad1d9385f 100644 --- a/sdk/formrecognizer/ai-form-recognizer/test/private/tracing.spec.ts +++ b/sdk/formrecognizer/ai-form-recognizer/test/private/tracing.spec.ts @@ -6,10 +6,10 @@ import { DocumentAnalysisClient } from "../../src/documentAnalysisClient"; import { DocumentModelAdministrationClient } from "../../src/documentModelAdministrationClient"; import { assert } from "@azure-tools/test-utils"; -import { HttpClient, PipelineRequest } from "@azure/core-rest-pipeline"; -import { OperationTracingOptions } from "@azure/core-tracing"; -import { CopyAuthorization } from "../../src/generated"; -import { FormRecognizerRequestBody } from "../../src/lro/analysis"; +import type { HttpClient, PipelineRequest } from "@azure/core-rest-pipeline"; +import type { OperationTracingOptions } from "@azure/core-tracing"; +import type { CopyAuthorization } from "../../src/generated"; +import type { FormRecognizerRequestBody } from "../../src/lro/analysis"; // #region FakeClient diff --git a/sdk/formrecognizer/ai-form-recognizer/test/public/browser/analysis.spec.ts b/sdk/formrecognizer/ai-form-recognizer/test/public/browser/analysis.spec.ts index 85c28206f93d..c5849519150b 100644 --- a/sdk/formrecognizer/ai-form-recognizer/test/public/browser/analysis.spec.ts +++ b/sdk/formrecognizer/ai-form-recognizer/test/public/browser/analysis.spec.ts @@ -2,10 +2,11 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { DocumentAnalysisClient } from "../../../src"; -import { assertEnvironmentVariable, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { createRecordedClient, testPollingOptions } from "../../utils/recordedClients"; describe("analysis (browser)", () => { diff --git a/sdk/formrecognizer/ai-form-recognizer/test/public/node/analysis.spec.ts b/sdk/formrecognizer/ai-form-recognizer/test/public/node/analysis.spec.ts index 2145158aeb15..18db664c9109 100644 --- a/sdk/formrecognizer/ai-form-recognizer/test/public/node/analysis.spec.ts +++ b/sdk/formrecognizer/ai-form-recognizer/test/public/node/analysis.spec.ts @@ -1,22 +1,25 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { matrix } from "@azure-tools/test-utils"; import { assert } from "chai"; import fs from "fs"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import path from "path"; -import { +import type { AnalyzedDocument, - DocumentAnalysisClient, - DocumentModelAdministrationClient, DocumentTable, DocumentModelDetails, - FormRecognizerFeature, DocumentBarcode, } from "../../../src"; -import { DocumentSelectionMarkField } from "../../../src/models/fields"; +import { + DocumentAnalysisClient, + DocumentModelAdministrationClient, + FormRecognizerFeature, +} from "../../../src"; +import type { DocumentSelectionMarkField } from "../../../src/models/fields"; import { createRecorder, getRandomNumber, @@ -27,7 +30,7 @@ import { DocumentModelBuildMode } from "../../../src/options/BuildModelOptions"; import { createValidator } from "../../utils/fieldValidator"; import { PrebuiltModels } from "../../utils/prebuilts"; -import { PrebuiltIdDocumentDocument } from "../../../samples-dev/prebuilt/prebuilt-idDocument"; +import type { PrebuiltIdDocumentDocument } from "../../../samples-dev/prebuilt/prebuilt-idDocument"; import { ASSET_PATH, makeTestUrl } from "../../utils/etc"; const endpoint = (): string => assertEnvironmentVariable("FORM_RECOGNIZER_ENDPOINT"); diff --git a/sdk/formrecognizer/ai-form-recognizer/test/public/node/classifiers.spec.ts b/sdk/formrecognizer/ai-form-recognizer/test/public/node/classifiers.spec.ts index 5ec3e92e61fc..3db5daa222ef 100644 --- a/sdk/formrecognizer/ai-form-recognizer/test/public/node/classifiers.spec.ts +++ b/sdk/formrecognizer/ai-form-recognizer/test/public/node/classifiers.spec.ts @@ -2,11 +2,12 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { matrix } from "@azure-tools/test-utils"; -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { createRecorder, @@ -14,7 +15,7 @@ import { makeCredential, testPollingOptions, } from "../../utils/recordedClients"; -import { DocumentClassifierDetails } from "../../../src/generated"; +import type { DocumentClassifierDetails } from "../../../src/generated"; import { DocumentModelAdministrationClient } from "../../../src/documentModelAdministrationClient"; import { DocumentAnalysisClient } from "../../../src/documentAnalysisClient"; import path from "path"; diff --git a/sdk/formrecognizer/ai-form-recognizer/test/public/training.spec.ts b/sdk/formrecognizer/ai-form-recognizer/test/public/training.spec.ts index da8a3b89fda1..e788c56b7a62 100644 --- a/sdk/formrecognizer/ai-form-recognizer/test/public/training.spec.ts +++ b/sdk/formrecognizer/ai-form-recognizer/test/public/training.spec.ts @@ -2,11 +2,12 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { getYieldedValue, matrix } from "@azure-tools/test-utils"; -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { createRecorder, @@ -15,11 +16,8 @@ import { testPollingOptions, } from "../utils/recordedClients"; -import { - DocumentAnalysisClient, - DocumentModelAdministrationClient, - DocumentModelDetails, -} from "../../src"; +import type { DocumentModelDetails } from "../../src"; +import { DocumentAnalysisClient, DocumentModelAdministrationClient } from "../../src"; import { DocumentModelBuildMode } from "../../src/options/BuildModelOptions"; const endpoint = (): string => assertEnvironmentVariable("FORM_RECOGNIZER_ENDPOINT"); diff --git a/sdk/formrecognizer/ai-form-recognizer/test/utils/fieldValidator.ts b/sdk/formrecognizer/ai-form-recognizer/test/utils/fieldValidator.ts index be97ba2f9cdd..6473dda9049d 100644 --- a/sdk/formrecognizer/ai-form-recognizer/test/utils/fieldValidator.ts +++ b/sdk/formrecognizer/ai-form-recognizer/test/utils/fieldValidator.ts @@ -8,8 +8,8 @@ import { assert } from "chai"; -import { AnalyzedDocument } from "../../src/lro/analysis"; -import { +import type { AnalyzedDocument } from "../../src/lro/analysis"; +import type { DocumentArrayField, DocumentDateField, DocumentField, diff --git a/sdk/formrecognizer/ai-form-recognizer/test/utils/recordedClients.ts b/sdk/formrecognizer/ai-form-recognizer/test/utils/recordedClients.ts index 5a051f96d8f6..c37b640c64c2 100644 --- a/sdk/formrecognizer/ai-form-recognizer/test/utils/recordedClients.ts +++ b/sdk/formrecognizer/ai-form-recognizer/test/utils/recordedClients.ts @@ -1,22 +1,23 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Test } from "mocha"; +import type { Test } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; import { Recorder, - RecorderStartOptions, assertEnvironmentVariable, env, isPlaybackMode, } from "@azure-tools/test-recorder"; -import { AzureKeyCredential, PollerOptions } from "../../src"; -import { KeyCredential, TokenCredential } from "@azure/core-auth"; +import type { PollerOptions } from "../../src"; +import { AzureKeyCredential } from "../../src"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; import { createClientLogger } from "@azure/logger"; import { createTestCredential } from "@azure-tools/test-credential"; -import { CommonClientOptions } from "@azure/core-client"; -import { PollOperationState } from "@azure/core-lro"; +import type { CommonClientOptions } from "@azure/core-client"; +import type { PollOperationState } from "@azure/core-lro"; export const logger = createClientLogger("ai-form-recognizer:test"); diff --git a/sdk/healthdataaiservices/azure-health-deidentification/review/health-deidentification.api.md b/sdk/healthdataaiservices/azure-health-deidentification/review/health-deidentification.api.md index f30a6e1882c6..2a20f945c003 100644 --- a/sdk/healthdataaiservices/azure-health-deidentification/review/health-deidentification.api.md +++ b/sdk/healthdataaiservices/azure-health-deidentification/review/health-deidentification.api.md @@ -4,23 +4,23 @@ ```ts -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'; -import { ErrorModel } from '@azure-rest/core-client'; -import { ErrorResponse } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { OperationState } from '@azure/core-lro'; -import { Paged } from '@azure/core-paging'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { AbortSignalLike } from '@azure/abort-controller'; +import type { CancelOnProgress } from '@azure/core-lro'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { CreateHttpPollerOptions } from '@azure/core-lro'; +import type { ErrorModel } from '@azure-rest/core-client'; +import type { ErrorResponse } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { OperationState } from '@azure/core-lro'; +import type { Paged } from '@azure/core-paging'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface CancelJob { diff --git a/sdk/healthdataaiservices/azure-health-deidentification/src/clientDefinitions.ts b/sdk/healthdataaiservices/azure-health-deidentification/src/clientDefinitions.ts index 6ecd43f9f845..c153bb2c1725 100644 --- a/sdk/healthdataaiservices/azure-health-deidentification/src/clientDefinitions.ts +++ b/sdk/healthdataaiservices/azure-health-deidentification/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { GetJobParameters, CreateJobParameters, DeleteJobParameters, @@ -10,7 +10,7 @@ import { CancelJobParameters, DeidentifyParameters, } from "./parameters.js"; -import { +import type { GetJob200Response, GetJobDefaultResponse, CreateJob200Response, @@ -27,7 +27,7 @@ import { Deidentify200Response, DeidentifyDefaultResponse, } from "./responses.js"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface GetJob { /** Resource read operation template. */ diff --git a/sdk/healthdataaiservices/azure-health-deidentification/src/deidentificationClient.ts b/sdk/healthdataaiservices/azure-health-deidentification/src/deidentificationClient.ts index b49c63d76be0..b07991a8ff93 100644 --- a/sdk/healthdataaiservices/azure-health-deidentification/src/deidentificationClient.ts +++ b/sdk/healthdataaiservices/azure-health-deidentification/src/deidentificationClient.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "./logger.js"; -import { TokenCredential } from "@azure/core-auth"; -import { DeidentificationClient } from "./clientDefinitions.js"; +import type { TokenCredential } from "@azure/core-auth"; +import type { DeidentificationClient } from "./clientDefinitions.js"; /** The optional parameters for the client */ export interface DeidentificationClientOptions extends ClientOptions { diff --git a/sdk/healthdataaiservices/azure-health-deidentification/src/isUnexpected.ts b/sdk/healthdataaiservices/azure-health-deidentification/src/isUnexpected.ts index 7d20e4f0c7ef..b99766aa2f8b 100644 --- a/sdk/healthdataaiservices/azure-health-deidentification/src/isUnexpected.ts +++ b/sdk/healthdataaiservices/azure-health-deidentification/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { GetJob200Response, GetJobDefaultResponse, CreateJob200Response, diff --git a/sdk/healthdataaiservices/azure-health-deidentification/src/outputModels.ts b/sdk/healthdataaiservices/azure-health-deidentification/src/outputModels.ts index 85cf9bd62e5b..a336f45fe532 100644 --- a/sdk/healthdataaiservices/azure-health-deidentification/src/outputModels.ts +++ b/sdk/healthdataaiservices/azure-health-deidentification/src/outputModels.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Paged } from "@azure/core-paging"; -import { ErrorModel } from "@azure-rest/core-client"; +import type { Paged } from "@azure/core-paging"; +import type { ErrorModel } from "@azure-rest/core-client"; /** A job containing a batch of documents to de-identify. */ export interface DeidentificationJobOutput { diff --git a/sdk/healthdataaiservices/azure-health-deidentification/src/paginateHelper.ts b/sdk/healthdataaiservices/azure-health-deidentification/src/paginateHelper.ts index e27846d32a90..5d541b4e406d 100644 --- a/sdk/healthdataaiservices/azure-health-deidentification/src/paginateHelper.ts +++ b/sdk/healthdataaiservices/azure-health-deidentification/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/healthdataaiservices/azure-health-deidentification/src/parameters.ts b/sdk/healthdataaiservices/azure-health-deidentification/src/parameters.ts index f50fd7260288..22d840140ea7 100644 --- a/sdk/healthdataaiservices/azure-health-deidentification/src/parameters.ts +++ b/sdk/healthdataaiservices/azure-health-deidentification/src/parameters.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; -import { RequestParameters } from "@azure-rest/core-client"; -import { DeidentificationJob, DeidentificationContent } from "./models.js"; +import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { DeidentificationJob, DeidentificationContent } from "./models.js"; export interface GetJobHeaders { /** An opaque, globally-unique, client-generated string identifier for the request. */ diff --git a/sdk/healthdataaiservices/azure-health-deidentification/src/pollingHelper.ts b/sdk/healthdataaiservices/azure-health-deidentification/src/pollingHelper.ts index 55c8e1b30070..5abda1a6550f 100644 --- a/sdk/healthdataaiservices/azure-health-deidentification/src/pollingHelper.ts +++ b/sdk/healthdataaiservices/azure-health-deidentification/src/pollingHelper.ts @@ -1,17 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { CancelOnProgress, CreateHttpPollerOptions, RunningOperation, OperationResponse, OperationState, - createHttpPoller, } from "@azure/core-lro"; -import { +import { createHttpPoller } from "@azure/core-lro"; +import type { CreateJob200Response, CreateJob201Response, CreateJobDefaultResponse, diff --git a/sdk/healthdataaiservices/azure-health-deidentification/src/responses.ts b/sdk/healthdataaiservices/azure-health-deidentification/src/responses.ts index 95c6452476a7..0db6d44e9749 100644 --- a/sdk/healthdataaiservices/azure-health-deidentification/src/responses.ts +++ b/sdk/healthdataaiservices/azure-health-deidentification/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; +import type { DeidentificationJobOutput, PagedDeidentificationJobOutput, PagedDocumentDetailsOutput, diff --git a/sdk/healthdataaiservices/azure-health-deidentification/test/public/jobOperationsTest.spec.ts b/sdk/healthdataaiservices/azure-health-deidentification/test/public/jobOperationsTest.spec.ts index da83e8d9940a..fe2fc07180f2 100644 --- a/sdk/healthdataaiservices/azure-health-deidentification/test/public/jobOperationsTest.spec.ts +++ b/sdk/healthdataaiservices/azure-health-deidentification/test/public/jobOperationsTest.spec.ts @@ -8,12 +8,13 @@ import { getTestEnvironment, } from "./utils/recordedClient.js"; import { assert, beforeEach, afterEach, it, describe } from "vitest"; -import { DeidentificationClient } from "../../src/clientDefinitions.js"; +import type { DeidentificationClient } from "../../src/clientDefinitions.js"; import { createTestCredential } from "@azure-tools/test-credential"; -import { DeidentificationJob } from "../../src/models.js"; -import { DeidentificationJobOutput, DocumentDetailsOutput } from "../../src/outputModels.js"; -import { Recorder, isPlaybackMode, isRecordMode } from "@azure-tools/test-recorder"; -import { ErrorResponse } from "@azure-rest/core-client"; +import type { DeidentificationJob } from "../../src/models.js"; +import type { DeidentificationJobOutput, DocumentDetailsOutput } from "../../src/outputModels.js"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode, isRecordMode } from "@azure-tools/test-recorder"; +import type { ErrorResponse } from "@azure-rest/core-client"; import { getLongRunningPoller } from "../../src/pollingHelper.js"; import { paginate } from "../../src/paginateHelper.js"; import { isUnexpected } from "../../src/isUnexpected.js"; diff --git a/sdk/healthdataaiservices/azure-health-deidentification/test/public/realtimeOperationsTest.spec.ts b/sdk/healthdataaiservices/azure-health-deidentification/test/public/realtimeOperationsTest.spec.ts index d64d3c1a4b6a..793a2bc36b90 100644 --- a/sdk/healthdataaiservices/azure-health-deidentification/test/public/realtimeOperationsTest.spec.ts +++ b/sdk/healthdataaiservices/azure-health-deidentification/test/public/realtimeOperationsTest.spec.ts @@ -3,12 +3,12 @@ import { createRecordedDeidentificationClient, createRecorder } from "./utils/recordedClient.js"; import { assert, beforeEach, afterEach, it, describe } from "vitest"; -import { DeidentificationClient } from "../../src/clientDefinitions.js"; +import type { DeidentificationClient } from "../../src/clientDefinitions.js"; import { createTestCredential } from "@azure-tools/test-credential"; -import { DeidentificationContent } from "../../src/models.js"; -import { DeidentificationResultOutput } from "../../src/outputModels.js"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { DeidentificationContent } from "../../src/models.js"; +import type { DeidentificationResultOutput } from "../../src/outputModels.js"; +import type { Recorder } from "@azure-tools/test-recorder"; const fakeServiceEndpoint = "example.com"; const replaceableVariables: Record = { diff --git a/sdk/healthdataaiservices/azure-health-deidentification/test/public/utils/recordedClient.ts b/sdk/healthdataaiservices/azure-health-deidentification/test/public/utils/recordedClient.ts index e51db09cf329..cdfad48924c2 100644 --- a/sdk/healthdataaiservices/azure-health-deidentification/test/public/utils/recordedClient.ts +++ b/sdk/healthdataaiservices/azure-health-deidentification/test/public/utils/recordedClient.ts @@ -1,14 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - Recorder, - VitestTestContext, - assertEnvironmentVariable, - isPlaybackMode, -} from "@azure-tools/test-recorder"; -import { TokenCredential } from "@azure/core-auth"; -import { DeidentificationClient } from "../../../src/clientDefinitions.js"; +import type { VitestTestContext } from "@azure-tools/test-recorder"; +import { Recorder, assertEnvironmentVariable, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { TokenCredential } from "@azure/core-auth"; +import type { DeidentificationClient } from "../../../src/clientDefinitions.js"; import createClient from "../../../src/deidentificationClient.js"; /** diff --git a/sdk/healthinsights/health-insights-cancerprofiling-rest/review/health-insights-cancerprofiling.api.md b/sdk/healthinsights/health-insights-cancerprofiling-rest/review/health-insights-cancerprofiling.api.md index fa4d2e171536..2954c1c26531 100644 --- a/sdk/healthinsights/health-insights-cancerprofiling-rest/review/health-insights-cancerprofiling.api.md +++ b/sdk/healthinsights/health-insights-cancerprofiling-rest/review/health-insights-cancerprofiling.api.md @@ -4,18 +4,18 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { CreateHttpPollerOptions } from '@azure/core-lro'; -import { ErrorResponse } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationState } from '@azure/core-lro'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RawHttpHeadersInput } 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 type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { CreateHttpPollerOptions } from '@azure/core-lro'; +import type { ErrorResponse } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationState } from '@azure/core-lro'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { SimplePollerLike } from '@azure/core-lro'; +import type { StreamableMethod } from '@azure-rest/core-client'; // @public (undocumented) export type CancerProfilingRestClient = Client & { diff --git a/sdk/healthinsights/health-insights-cancerprofiling-rest/src/cancerProfilingRest.ts b/sdk/healthinsights/health-insights-cancerprofiling-rest/src/cancerProfilingRest.ts index 56e79cd79cee..951ed8cd9e12 100644 --- a/sdk/healthinsights/health-insights-cancerprofiling-rest/src/cancerProfilingRest.ts +++ b/sdk/healthinsights/health-insights-cancerprofiling-rest/src/cancerProfilingRest.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "./logger"; -import { KeyCredential } from "@azure/core-auth"; -import { CancerProfilingRestClient } from "./clientDefinitions"; +import type { KeyCredential } from "@azure/core-auth"; +import type { CancerProfilingRestClient } from "./clientDefinitions"; /** * Initialize a new instance of `CancerProfilingRestClient` diff --git a/sdk/healthinsights/health-insights-cancerprofiling-rest/src/clientDefinitions.ts b/sdk/healthinsights/health-insights-cancerprofiling-rest/src/clientDefinitions.ts index a626ff29faad..c813411be6cf 100644 --- a/sdk/healthinsights/health-insights-cancerprofiling-rest/src/clientDefinitions.ts +++ b/sdk/healthinsights/health-insights-cancerprofiling-rest/src/clientDefinitions.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { GetJobParameters, CreateJobParameters } from "./parameters"; -import { +import type { GetJobParameters, CreateJobParameters } from "./parameters"; +import type { GetJob200Response, GetJobDefaultResponse, CreateJob200Response, CreateJob202Response, CreateJobDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface GetJob { /** Gets the status and details of the Onco Phenotype job. */ diff --git a/sdk/healthinsights/health-insights-cancerprofiling-rest/src/isUnexpected.ts b/sdk/healthinsights/health-insights-cancerprofiling-rest/src/isUnexpected.ts index 1f23d6d03832..64869331e1b8 100644 --- a/sdk/healthinsights/health-insights-cancerprofiling-rest/src/isUnexpected.ts +++ b/sdk/healthinsights/health-insights-cancerprofiling-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { GetJob200Response, GetJobDefaultResponse, CreateJob200Response, diff --git a/sdk/healthinsights/health-insights-cancerprofiling-rest/src/parameters.ts b/sdk/healthinsights/health-insights-cancerprofiling-rest/src/parameters.ts index ff65c8dcc3a8..74b04772b496 100644 --- a/sdk/healthinsights/health-insights-cancerprofiling-rest/src/parameters.ts +++ b/sdk/healthinsights/health-insights-cancerprofiling-rest/src/parameters.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; -import { RequestParameters } from "@azure-rest/core-client"; -import { OncoPhenotypeData } from "./models"; +import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { OncoPhenotypeData } from "./models"; export type GetJobParameters = RequestParameters; diff --git a/sdk/healthinsights/health-insights-cancerprofiling-rest/src/pollingHelper.ts b/sdk/healthinsights/health-insights-cancerprofiling-rest/src/pollingHelper.ts index 61e768ca66f4..b7d10988d757 100644 --- a/sdk/healthinsights/health-insights-cancerprofiling-rest/src/pollingHelper.ts +++ b/sdk/healthinsights/health-insights-cancerprofiling-rest/src/pollingHelper.ts @@ -1,16 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { CreateHttpPollerOptions, LongRunningOperation, LroResponse, OperationState, SimplePollerLike, - createHttpPoller, } from "@azure/core-lro"; -import { +import { createHttpPoller } from "@azure/core-lro"; +import type { CreateJob200Response, CreateJob202Response, CreateJobDefaultResponse, diff --git a/sdk/healthinsights/health-insights-cancerprofiling-rest/src/responses.ts b/sdk/healthinsights/health-insights-cancerprofiling-rest/src/responses.ts index 8d08d475051f..2b9a4ac93604 100644 --- a/sdk/healthinsights/health-insights-cancerprofiling-rest/src/responses.ts +++ b/sdk/healthinsights/health-insights-cancerprofiling-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; -import { OncoPhenotypeResultOutput } from "./outputModels"; +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; +import type { OncoPhenotypeResultOutput } from "./outputModels"; /** The request has succeeded. */ export interface GetJob200Response extends HttpResponse { diff --git a/sdk/healthinsights/health-insights-cancerprofiling-rest/test/public/cancerprofiling.spec.ts b/sdk/healthinsights/health-insights-cancerprofiling-rest/test/public/cancerprofiling.spec.ts index b20f4b2de9c9..78dda0506f1b 100644 --- a/sdk/healthinsights/health-insights-cancerprofiling-rest/test/public/cancerprofiling.spec.ts +++ b/sdk/healthinsights/health-insights-cancerprofiling-rest/test/public/cancerprofiling.spec.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { CancerProfilingRestClient, getLongRunningPoller } from "../../src"; +import type { Context } from "mocha"; +import type { CancerProfilingRestClient } from "../../src"; +import { getLongRunningPoller } from "../../src"; import { createClient, createRecorder } from "./utils/recordedClient"; const patientInfo = { diff --git a/sdk/healthinsights/health-insights-cancerprofiling-rest/test/public/utils/recordedClient.ts b/sdk/healthinsights/health-insights-cancerprofiling-rest/test/public/utils/recordedClient.ts index 8ea5366be326..35e92c644919 100644 --- a/sdk/healthinsights/health-insights-cancerprofiling-rest/test/public/utils/recordedClient.ts +++ b/sdk/healthinsights/health-insights-cancerprofiling-rest/test/public/utils/recordedClient.ts @@ -1,14 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - assertEnvironmentVariable, - Recorder, - RecorderStartOptions, -} from "@azure-tools/test-recorder"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable, Recorder } from "@azure-tools/test-recorder"; import { AzureKeyCredential } from "@azure/core-auth"; -import { Context } from "mocha"; -import CancerProfiling, { CancerProfilingRestClient } from "../../../src"; +import type { Context } from "mocha"; +import type { CancerProfilingRestClient } from "../../../src"; +import CancerProfiling from "../../../src"; import "./env"; const envSetupForPlayback: Record = { diff --git a/sdk/healthinsights/health-insights-clinicalmatching-rest/review/health-insights-clinicalmatching.api.md b/sdk/healthinsights/health-insights-clinicalmatching-rest/review/health-insights-clinicalmatching.api.md index 5c9bd5f7a649..317e13ae9188 100644 --- a/sdk/healthinsights/health-insights-clinicalmatching-rest/review/health-insights-clinicalmatching.api.md +++ b/sdk/healthinsights/health-insights-clinicalmatching-rest/review/health-insights-clinicalmatching.api.md @@ -4,18 +4,18 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { CreateHttpPollerOptions } from '@azure/core-lro'; -import { ErrorResponse } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationState } from '@azure/core-lro'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RawHttpHeadersInput } 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 type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { CreateHttpPollerOptions } from '@azure/core-lro'; +import type { ErrorResponse } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationState } from '@azure/core-lro'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { SimplePollerLike } from '@azure/core-lro'; +import type { StreamableMethod } from '@azure-rest/core-client'; // @public export interface AcceptedAge { diff --git a/sdk/healthinsights/health-insights-clinicalmatching-rest/src/clientDefinitions.ts b/sdk/healthinsights/health-insights-clinicalmatching-rest/src/clientDefinitions.ts index 9e0aa18dcaf7..5d151a61d4cf 100644 --- a/sdk/healthinsights/health-insights-clinicalmatching-rest/src/clientDefinitions.ts +++ b/sdk/healthinsights/health-insights-clinicalmatching-rest/src/clientDefinitions.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { GetJobParameters, CreateJobParameters } from "./parameters"; -import { +import type { GetJobParameters, CreateJobParameters } from "./parameters"; +import type { GetJob200Response, GetJobDefaultResponse, CreateJob200Response, CreateJob202Response, CreateJobDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface GetJob { /** Gets the status and details of the Trial Matcher job. */ diff --git a/sdk/healthinsights/health-insights-clinicalmatching-rest/src/clinicalMatchingRest.ts b/sdk/healthinsights/health-insights-clinicalmatching-rest/src/clinicalMatchingRest.ts index fdf896383b89..c307d2643e21 100644 --- a/sdk/healthinsights/health-insights-clinicalmatching-rest/src/clinicalMatchingRest.ts +++ b/sdk/healthinsights/health-insights-clinicalmatching-rest/src/clinicalMatchingRest.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "./logger"; -import { KeyCredential } from "@azure/core-auth"; -import { ClinicalMatchingRestClient } from "./clientDefinitions"; +import type { KeyCredential } from "@azure/core-auth"; +import type { ClinicalMatchingRestClient } from "./clientDefinitions"; /** * Initialize a new instance of `ClinicalMatchingRestClient` diff --git a/sdk/healthinsights/health-insights-clinicalmatching-rest/src/isUnexpected.ts b/sdk/healthinsights/health-insights-clinicalmatching-rest/src/isUnexpected.ts index b03fe243f86d..75595bb191e8 100644 --- a/sdk/healthinsights/health-insights-clinicalmatching-rest/src/isUnexpected.ts +++ b/sdk/healthinsights/health-insights-clinicalmatching-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { GetJob200Response, GetJobDefaultResponse, CreateJob200Response, diff --git a/sdk/healthinsights/health-insights-clinicalmatching-rest/src/parameters.ts b/sdk/healthinsights/health-insights-clinicalmatching-rest/src/parameters.ts index c62b6a62956e..408b8abd6ddd 100644 --- a/sdk/healthinsights/health-insights-clinicalmatching-rest/src/parameters.ts +++ b/sdk/healthinsights/health-insights-clinicalmatching-rest/src/parameters.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; -import { RequestParameters } from "@azure-rest/core-client"; -import { TrialMatcherData } from "./models"; +import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { TrialMatcherData } from "./models"; export type GetJobParameters = RequestParameters; diff --git a/sdk/healthinsights/health-insights-clinicalmatching-rest/src/pollingHelper.ts b/sdk/healthinsights/health-insights-clinicalmatching-rest/src/pollingHelper.ts index 61e768ca66f4..b7d10988d757 100644 --- a/sdk/healthinsights/health-insights-clinicalmatching-rest/src/pollingHelper.ts +++ b/sdk/healthinsights/health-insights-clinicalmatching-rest/src/pollingHelper.ts @@ -1,16 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { CreateHttpPollerOptions, LongRunningOperation, LroResponse, OperationState, SimplePollerLike, - createHttpPoller, } from "@azure/core-lro"; -import { +import { createHttpPoller } from "@azure/core-lro"; +import type { CreateJob200Response, CreateJob202Response, CreateJobDefaultResponse, diff --git a/sdk/healthinsights/health-insights-clinicalmatching-rest/src/responses.ts b/sdk/healthinsights/health-insights-clinicalmatching-rest/src/responses.ts index 5637ebdd143f..504a9710293f 100644 --- a/sdk/healthinsights/health-insights-clinicalmatching-rest/src/responses.ts +++ b/sdk/healthinsights/health-insights-clinicalmatching-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; -import { TrialMatcherResultOutput } from "./outputModels"; +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; +import type { TrialMatcherResultOutput } from "./outputModels"; /** The request has succeeded. */ export interface GetJob200Response extends HttpResponse { diff --git a/sdk/healthinsights/health-insights-clinicalmatching-rest/test/public/clinicalmatching.spec.ts b/sdk/healthinsights/health-insights-clinicalmatching-rest/test/public/clinicalmatching.spec.ts index 087721a5936f..6452e20dafc3 100644 --- a/sdk/healthinsights/health-insights-clinicalmatching-rest/test/public/clinicalmatching.spec.ts +++ b/sdk/healthinsights/health-insights-clinicalmatching-rest/test/public/clinicalmatching.spec.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { ClinicalMatchingRestClient, getLongRunningPoller } from "../../src"; +import type { Context } from "mocha"; +import type { ClinicalMatchingRestClient } from "../../src"; +import { getLongRunningPoller } from "../../src"; import { createClient, createRecorder } from "./utils/recordedClient"; const clinicalInfoList = [ diff --git a/sdk/healthinsights/health-insights-clinicalmatching-rest/test/public/utils/recordedClient.ts b/sdk/healthinsights/health-insights-clinicalmatching-rest/test/public/utils/recordedClient.ts index 5b3b09498b5a..253678ebd2cc 100644 --- a/sdk/healthinsights/health-insights-clinicalmatching-rest/test/public/utils/recordedClient.ts +++ b/sdk/healthinsights/health-insights-clinicalmatching-rest/test/public/utils/recordedClient.ts @@ -1,14 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - assertEnvironmentVariable, - Recorder, - RecorderStartOptions, -} from "@azure-tools/test-recorder"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable, Recorder } from "@azure-tools/test-recorder"; import { AzureKeyCredential } from "@azure/core-auth"; -import { Context } from "mocha"; -import ClinicalMatching, { ClinicalMatchingRestClient } from "../../../src"; +import type { Context } from "mocha"; +import type { ClinicalMatchingRestClient } from "../../../src"; +import ClinicalMatching from "../../../src"; import "./env"; const envSetupForPlayback: Record = { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/review/health-insights-radiologyinsights.api.md b/sdk/healthinsights/health-insights-radiologyinsights-rest/review/health-insights-radiologyinsights.api.md index 699e3b6a1567..c6d9be534574 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/review/health-insights-radiologyinsights.api.md +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/review/health-insights-radiologyinsights.api.md @@ -4,17 +4,17 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { CreateHttpPollerOptions } from '@azure/core-lro'; -import { ErrorModel } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -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'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { CreateHttpPollerOptions } from '@azure/core-lro'; +import type { ErrorModel } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { OperationState } from '@azure/core-lro'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { SimplePollerLike } from '@azure/core-lro'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AgeMismatchInference extends RadiologyInsightsInferenceParent { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/src/azureHealthInsightsClient.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/src/azureHealthInsightsClient.ts index 0290bcb2dcf4..b646b318053a 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/src/azureHealthInsightsClient.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/src/azureHealthInsightsClient.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientOptions, getClient } from "@azure-rest/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { AzureHealthInsightsClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { AzureHealthInsightsClient } from "./clientDefinitions"; import { logger } from "./logger"; /** diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/src/clientDefinitions.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/src/clientDefinitions.ts index a00553415b05..e35d4a60d70c 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/src/clientDefinitions.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/src/clientDefinitions.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, StreamableMethod } from "@azure-rest/core-client"; -import { CreateJobParameters, GetJobParameters } from "./parameters"; -import { +import type { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { CreateJobParameters, GetJobParameters } from "./parameters"; +import type { CreateJob200Response, CreateJob201Response, CreateJobDefaultResponse, diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/src/isUnexpected.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/src/isUnexpected.ts index 389f0232b4d3..45f2b2c3cb4a 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/src/isUnexpected.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CreateJob200Response, CreateJob201Response, CreateJobDefaultResponse, diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/src/outputModels.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/src/outputModels.ts index fd9a0e1a5f0b..c0accbf8e997 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/src/outputModels.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/src/outputModels.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ErrorModel } from "@azure-rest/core-client"; +import type { ErrorModel } from "@azure-rest/core-client"; /** Response for the Radiology Insights request. */ export interface RadiologyInsightsJobOutput { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/src/parameters.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/src/parameters.ts index 5f330698555c..fbb6ca41dfef 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/src/parameters.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { RadiologyInsightsJob } from "./models"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { RadiologyInsightsJob } from "./models"; /** Get the job query parameter properties */ export interface GetJobQueryParamProperties { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/src/pollingHelper.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/src/pollingHelper.ts index 375b3ad12998..eec9de7b36a0 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/src/pollingHelper.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/src/pollingHelper.ts @@ -1,16 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { CreateHttpPollerOptions, LongRunningOperation, LroResponse, OperationState, SimplePollerLike, - createHttpPoller, } from "@azure/core-lro"; -import { +import { createHttpPoller } from "@azure/core-lro"; +import type { CreateJob200Response, CreateJob201Response, CreateJobDefaultResponse, diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/src/responses.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/src/responses.ts index 65d03ffe2e2f..b14c229f84c0 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/src/responses.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpResponse } from "@azure-rest/core-client"; -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HealthInsightsErrorResponseOutput, RadiologyInsightsJobOutput } from "./outputModels"; +import type { HttpResponse } from "@azure-rest/core-client"; +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HealthInsightsErrorResponseOutput, RadiologyInsightsJobOutput } from "./outputModels"; /** Get the headers of the succeeded request */ export interface GetJob200Headers { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleAgeMismatchInferenceAsync.spec.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleAgeMismatchInferenceAsync.spec.ts index fc1dce85ae99..e7a5a9f51830 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleAgeMismatchInferenceAsync.spec.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleAgeMismatchInferenceAsync.spec.ts @@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { - AzureHealthInsightsClient, - ClinicalDocumentTypeEnum, - getLongRunningPoller, -} from "../../src"; +import type { Context } from "mocha"; +import type { AzureHealthInsightsClient } from "../../src"; +import { ClinicalDocumentTypeEnum, getLongRunningPoller } from "../../src"; import { createRecorder, createTestClient } from "./utils/recordedClient"; const codingData = { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleCompleteOrderDiscrepancyInferenceAsync.spec.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleCompleteOrderDiscrepancyInferenceAsync.spec.ts index 9ba6eb2a7072..8d054489c7ab 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleCompleteOrderDiscrepancyInferenceAsync.spec.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleCompleteOrderDiscrepancyInferenceAsync.spec.ts @@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { - AzureHealthInsightsClient, - ClinicalDocumentTypeEnum, - getLongRunningPoller, -} from "../../src"; +import type { Context } from "mocha"; +import type { AzureHealthInsightsClient } from "../../src"; +import { ClinicalDocumentTypeEnum, getLongRunningPoller } from "../../src"; import { createRecorder, createTestClient } from "./utils/recordedClient"; const codingData = { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleCriticalResultInferenceAsync.spec.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleCriticalResultInferenceAsync.spec.ts index 5829c8ff9094..116c318802a1 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleCriticalResultInferenceAsync.spec.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleCriticalResultInferenceAsync.spec.ts @@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { - AzureHealthInsightsClient, - ClinicalDocumentTypeEnum, - getLongRunningPoller, -} from "../../src"; +import type { Context } from "mocha"; +import type { AzureHealthInsightsClient } from "../../src"; +import { ClinicalDocumentTypeEnum, getLongRunningPoller } from "../../src"; import { createRecorder, createTestClient } from "./utils/recordedClient"; const codingData = { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleFindingInferenceAsync.spec.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleFindingInferenceAsync.spec.ts index c80081daeb57..6dc64f8f5e1f 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleFindingInferenceAsync.spec.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleFindingInferenceAsync.spec.ts @@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { - AzureHealthInsightsClient, - ClinicalDocumentTypeEnum, - getLongRunningPoller, -} from "../../src"; +import type { Context } from "mocha"; +import type { AzureHealthInsightsClient } from "../../src"; +import { ClinicalDocumentTypeEnum, getLongRunningPoller } from "../../src"; import { createRecorder, createTestClient } from "./utils/recordedClient"; const codingData = { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleFollowUpCommunicationAsync.spec.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleFollowUpCommunicationAsync.spec.ts index da3e8ff385f0..0b9d1901896c 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleFollowUpCommunicationAsync.spec.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleFollowUpCommunicationAsync.spec.ts @@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { - AzureHealthInsightsClient, - ClinicalDocumentTypeEnum, - getLongRunningPoller, -} from "../../src"; +import type { Context } from "mocha"; +import type { AzureHealthInsightsClient } from "../../src"; +import { ClinicalDocumentTypeEnum, getLongRunningPoller } from "../../src"; import { createRecorder, createTestClient } from "./utils/recordedClient"; const codingData = { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleFollowUpRecommendationAsync.spec.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleFollowUpRecommendationAsync.spec.ts index f14cf0f82275..19037e7fde74 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleFollowUpRecommendationAsync.spec.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleFollowUpRecommendationAsync.spec.ts @@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { - AzureHealthInsightsClient, - ClinicalDocumentTypeEnum, - getLongRunningPoller, -} from "../../src"; +import type { Context } from "mocha"; +import type { AzureHealthInsightsClient } from "../../src"; +import { ClinicalDocumentTypeEnum, getLongRunningPoller } from "../../src"; import { createRecorder, createTestClient } from "./utils/recordedClient"; const codingData = { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleLateralityDiscrepancyInferenceAsync.spec.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleLateralityDiscrepancyInferenceAsync.spec.ts index f4f4fac55c99..10df7301c2ef 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleLateralityDiscrepancyInferenceAsync.spec.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleLateralityDiscrepancyInferenceAsync.spec.ts @@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { - AzureHealthInsightsClient, - ClinicalDocumentTypeEnum, - getLongRunningPoller, -} from "../../src"; +import type { Context } from "mocha"; +import type { AzureHealthInsightsClient } from "../../src"; +import { ClinicalDocumentTypeEnum, getLongRunningPoller } from "../../src"; import { createRecorder, createTestClient } from "./utils/recordedClient"; const codingData = { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleLimitedOrderDiscrepancyInferenceAsync.spec.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleLimitedOrderDiscrepancyInferenceAsync.spec.ts index 825a099decd1..f10672c8deee 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleLimitedOrderDiscrepancyInferenceAsync.spec.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleLimitedOrderDiscrepancyInferenceAsync.spec.ts @@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { - AzureHealthInsightsClient, - ClinicalDocumentTypeEnum, - getLongRunningPoller, -} from "../../src"; +import type { Context } from "mocha"; +import type { AzureHealthInsightsClient } from "../../src"; +import { ClinicalDocumentTypeEnum, getLongRunningPoller } from "../../src"; import { createRecorder, createTestClient } from "./utils/recordedClient"; const codingData = { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleRadiologyProcedureInferenceAsync.spec.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleRadiologyProcedureInferenceAsync.spec.ts index 9aad8e089ac3..4324afc1c2b4 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleRadiologyProcedureInferenceAsync.spec.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleRadiologyProcedureInferenceAsync.spec.ts @@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { - AzureHealthInsightsClient, - ClinicalDocumentTypeEnum, - getLongRunningPoller, -} from "../../src"; +import type { Context } from "mocha"; +import type { AzureHealthInsightsClient } from "../../src"; +import { ClinicalDocumentTypeEnum, getLongRunningPoller } from "../../src"; import { createRecorder, createTestClient } from "./utils/recordedClient"; const codingData = { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleSexMismatchInferenceAsync.spec.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleSexMismatchInferenceAsync.spec.ts index 72bf387aae0a..0c59597c47fb 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleSexMismatchInferenceAsync.spec.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/SampleSexMismatchInferenceAsync.spec.ts @@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { - AzureHealthInsightsClient, - ClinicalDocumentTypeEnum, - getLongRunningPoller, -} from "../../src"; +import type { Context } from "mocha"; +import type { AzureHealthInsightsClient } from "../../src"; +import { ClinicalDocumentTypeEnum, getLongRunningPoller } from "../../src"; import { createRecorder, createTestClient } from "./utils/recordedClient"; const codingData = { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/Test_RadiologyInsights_async.spec.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/Test_RadiologyInsights_async.spec.ts index 12e926f474e8..183d65118897 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/Test_RadiologyInsights_async.spec.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/Test_RadiologyInsights_async.spec.ts @@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { - AzureHealthInsightsClient, - ClinicalDocumentTypeEnum, - getLongRunningPoller, -} from "../../src"; +import type { Context } from "mocha"; +import type { AzureHealthInsightsClient } from "../../src"; +import { ClinicalDocumentTypeEnum, getLongRunningPoller } from "../../src"; import { createRecorder, createTestClient } from "./utils/recordedClient"; const codingData = { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/utils/recordedClient.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/utils/recordedClient.ts index 35b62615de43..b724a91ec15c 100644 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/utils/recordedClient.ts +++ b/sdk/healthinsights/health-insights-radiologyinsights-rest/test/public/utils/recordedClient.ts @@ -2,14 +2,12 @@ // Licensed under the MIT License. import { createTestCredential } from "@azure-tools/test-credential"; -import { - assertEnvironmentVariable, - Recorder, - RecorderStartOptions, -} from "@azure-tools/test-recorder"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable, Recorder } from "@azure-tools/test-recorder"; import { DefaultAzureCredential, logger } from "@azure/identity"; -import { Context } from "mocha"; -import AHIClient, { AzureHealthInsightsClient } from "../../../src"; +import type { Context } from "mocha"; +import type { AzureHealthInsightsClient } from "../../../src"; +import AHIClient from "../../../src"; import "./env"; const envSetupForPlayback: Record = { diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/vitest.browser.config.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/vitest.browser.config.ts deleted file mode 100644 index 3be6992329dc..000000000000 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/vitest.browser.config.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { defineConfig } from "vitest/config"; - -export default defineConfig({ - define: { - "process.env": process.env, - }, - test: { - reporters: ["basic", "junit"], - outputFile: { - junit: "test-results.browser.xml", - }, - browser: { - enabled: true, - headless: true, - name: "chromium", - provider: "playwright", - }, - fakeTimers: { - toFake: ["setTimeout", "Date"], - }, - watch: false, - include: ["dist-test/browser/**/*.spec.js"], - coverage: { - include: ["dist-test/browser/**/*.spec.js"], - provider: "istanbul", - reporter: ["text", "json", "html"], - reportsDirectory: "coverage-browser", - }, - }, -}); diff --git a/sdk/healthinsights/health-insights-radiologyinsights-rest/vitest.config.ts b/sdk/healthinsights/health-insights-radiologyinsights-rest/vitest.config.ts deleted file mode 100644 index caac6d634062..000000000000 --- a/sdk/healthinsights/health-insights-radiologyinsights-rest/vitest.config.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { defineConfig } from "vitest/config"; - -export default defineConfig({ - test: { - reporters: ["basic", "junit"], - outputFile: { - junit: "test-results.browser.xml", - }, - fakeTimers: { - toFake: ["setTimeout", "Date"], - }, - watch: false, - include: ["test/**/*.spec.ts"], - exclude: ["test/**/browser/*.spec.ts"], - coverage: { - include: ["src/**/*.ts"], - exclude: [ - "src/**/*-browser.mts", - "src/**/*-react-native.mts", - "vitest*.config.ts", - "samples-dev/**/*.ts", - ], - provider: "istanbul", - reporter: ["text", "json", "html"], - reportsDirectory: "coverage", - }, - }, -}); diff --git a/sdk/identity/identity-broker/review/identity-broker.api.md b/sdk/identity/identity-broker/review/identity-broker.api.md index 6ac4c6f3df77..15e30abad4d6 100644 --- a/sdk/identity/identity-broker/review/identity-broker.api.md +++ b/sdk/identity/identity-broker/review/identity-broker.api.md @@ -4,7 +4,7 @@ ```ts -import { IdentityPlugin } from '@azure/identity'; +import type { IdentityPlugin } from '@azure/identity'; // @public export const nativeBrokerPlugin: IdentityPlugin; diff --git a/sdk/identity/identity-broker/src/index.ts b/sdk/identity/identity-broker/src/index.ts index 74a679ad1307..bbfd0cbcbc13 100644 --- a/sdk/identity/identity-broker/src/index.ts +++ b/sdk/identity/identity-broker/src/index.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzurePluginContext } from "../../identity/src/plugins/provider"; -import { IdentityPlugin } from "@azure/identity"; +import type { AzurePluginContext } from "../../identity/src/plugins/provider"; +import type { IdentityPlugin } from "@azure/identity"; import { NativeBrokerPlugin } from "@azure/msal-node-extensions"; /** diff --git a/sdk/identity/identity-broker/test/internal/node/interactiveBrowserCredential.spec.ts b/sdk/identity/identity-broker/test/internal/node/interactiveBrowserCredential.spec.ts index 6c25dd92d34b..84ddcb142a65 100644 --- a/sdk/identity/identity-broker/test/internal/node/interactiveBrowserCredential.spec.ts +++ b/sdk/identity/identity-broker/test/internal/node/interactiveBrowserCredential.spec.ts @@ -1,21 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - InteractiveBrowserCredential, - InteractiveBrowserCredentialNodeOptions, - useIdentityPlugin, -} from "@azure/identity"; -import { - MsalTestCleanup, - msalNodeTestSetup, -} from "../../../../identity/test/node/msalNodeTestSetup"; +import type { InteractiveBrowserCredentialNodeOptions } from "@azure/identity"; +import { InteractiveBrowserCredential, useIdentityPlugin } from "@azure/identity"; +import type { MsalTestCleanup } from "../../../../identity/test/node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../../../identity/test/node/msalNodeTestSetup"; import { PublicClientApplication } from "@azure/msal-node"; -import Sinon from "sinon"; -import { Recorder, isLiveMode, env, isPlaybackMode } from "@azure-tools/test-recorder"; +import type Sinon from "sinon"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isLiveMode, env, isPlaybackMode } from "@azure-tools/test-recorder"; import { nativeBrokerPlugin } from "../../../src"; import { isNodeLike } from "@azure/core-util"; import { assert } from "@azure-tools/test-utils"; -import http from "http"; +import type http from "http"; describe("InteractiveBrowserCredential (internal)", function (this: Mocha.Suite) { let cleanup: MsalTestCleanup; diff --git a/sdk/identity/identity-broker/test/manual/node/authRequestPopTokenChallenge.ts b/sdk/identity/identity-broker/test/manual/node/authRequestPopTokenChallenge.ts index 3a37fa64fec0..8ff0abc25f6a 100644 --- a/sdk/identity/identity-broker/test/manual/node/authRequestPopTokenChallenge.ts +++ b/sdk/identity/identity-broker/test/manual/node/authRequestPopTokenChallenge.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthorizeRequestOnChallengeOptions } from "@azure/core-rest-pipeline"; +import type { AuthorizeRequestOnChallengeOptions } from "@azure/core-rest-pipeline"; export async function authorizeRequestOnPopTokenChallenge( onChallengeOptions: AuthorizeRequestOnChallengeOptions, diff --git a/sdk/identity/identity-broker/test/manual/node/popTokenClient.ts b/sdk/identity/identity-broker/test/manual/node/popTokenClient.ts index c067ed3b0e26..99dc26615d05 100644 --- a/sdk/identity/identity-broker/test/manual/node/popTokenClient.ts +++ b/sdk/identity/identity-broker/test/manual/node/popTokenClient.ts @@ -1,20 +1,21 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions, ServiceClient } from "@azure/core-client"; +import type { CommonClientOptions } from "@azure/core-client"; +import { ServiceClient } from "@azure/core-client"; export class PopTokenClient extends ServiceClient {} export interface PopTokenClientOptions extends CommonClientOptions {} +import type { PipelineResponse } from "@azure/core-rest-pipeline"; import { createEmptyPipeline, createPipelineRequest, createDefaultHttpClient, - PipelineResponse, } from "@azure/core-rest-pipeline"; import { popTokenAuthenticationPolicy } from "./popTokenAuthenticationPolicy"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { authorizeRequestOnPopTokenChallenge } from "./authRequestPopTokenChallenge"; export async function sendGraphRequest(credential: TokenCredential): Promise { diff --git a/sdk/identity/identity-broker/test/manual/node/popTokenSupport.spec.ts b/sdk/identity/identity-broker/test/manual/node/popTokenSupport.spec.ts index 81dd7fcb5182..b6e6577aa985 100644 --- a/sdk/identity/identity-broker/test/manual/node/popTokenSupport.spec.ts +++ b/sdk/identity/identity-broker/test/manual/node/popTokenSupport.spec.ts @@ -1,10 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - InteractiveBrowserCredential, - InteractiveBrowserCredentialNodeOptions, - useIdentityPlugin, -} from "@azure/identity"; +import type { InteractiveBrowserCredentialNodeOptions } from "@azure/identity"; +import { InteractiveBrowserCredential, useIdentityPlugin } from "@azure/identity"; import { env, isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; import { nativeBrokerPlugin } from "../../../src"; diff --git a/sdk/identity/identity-cache-persistence/review/identity-cache-persistence.api.md b/sdk/identity/identity-cache-persistence/review/identity-cache-persistence.api.md index bc816854b790..6685f7fdce3e 100644 --- a/sdk/identity/identity-cache-persistence/review/identity-cache-persistence.api.md +++ b/sdk/identity/identity-cache-persistence/review/identity-cache-persistence.api.md @@ -4,12 +4,11 @@ ```ts -import { IdentityPlugin } from '@azure/identity'; +import type { IdentityPlugin } from '@azure/identity'; // @public export const cachePersistencePlugin: IdentityPlugin; - // (No @packageDocumentation comment for this package) ``` diff --git a/sdk/identity/identity-cache-persistence/src/index.ts b/sdk/identity/identity-cache-persistence/src/index.ts index fdce347b9fc8..cc924cda695f 100644 --- a/sdk/identity/identity-cache-persistence/src/index.ts +++ b/sdk/identity/identity-cache-persistence/src/index.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzurePluginContext } from "../../identity/src/plugins/provider"; -import { IdentityPlugin } from "@azure/identity"; +import type { AzurePluginContext } from "../../identity/src/plugins/provider"; +import type { IdentityPlugin } from "@azure/identity"; import { createPersistenceCachePlugin } from "./provider"; /** diff --git a/sdk/identity/identity-cache-persistence/src/platforms.ts b/sdk/identity/identity-cache-persistence/src/platforms.ts index d78d2b2a4064..7137878fa567 100644 --- a/sdk/identity/identity-cache-persistence/src/platforms.ts +++ b/sdk/identity/identity-cache-persistence/src/platforms.ts @@ -4,15 +4,15 @@ /* eslint-disable tsdoc/syntax */ import * as path from "path"; +import type { IPersistence as Persistence } from "@azure/msal-node-extensions"; import { DataProtectionScope, FilePersistence, FilePersistenceWithDataProtection, KeychainPersistence, LibSecretPersistence, - IPersistence as Persistence, } from "@azure/msal-node-extensions"; -import { TokenCachePersistenceOptions } from "@azure/identity"; +import type { TokenCachePersistenceOptions } from "@azure/identity"; /** * Local application data folder diff --git a/sdk/identity/identity-cache-persistence/src/provider.ts b/sdk/identity/identity-cache-persistence/src/provider.ts index 74a21f0c2d59..d02811ca341f 100644 --- a/sdk/identity/identity-cache-persistence/src/provider.ts +++ b/sdk/identity/identity-cache-persistence/src/provider.ts @@ -1,9 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MsalPersistenceOptions, msalPersistencePlatforms } from "./platforms"; -import { IPersistence as Persistence, PersistenceCachePlugin } from "@azure/msal-node-extensions"; -import { ICachePlugin as CachePlugin } from "@azure/msal-node"; +import type { MsalPersistenceOptions } from "./platforms"; +import { msalPersistencePlatforms } from "./platforms"; +import type { IPersistence as Persistence } from "@azure/msal-node-extensions"; +import { PersistenceCachePlugin } from "@azure/msal-node-extensions"; +import type { ICachePlugin as CachePlugin } from "@azure/msal-node"; /** * This is used to gain access to the underlying Persistence instance, which we use for testing diff --git a/sdk/identity/identity-cache-persistence/test/internal/node/clientCertificateCredential.spec.ts b/sdk/identity/identity-cache-persistence/test/internal/node/clientCertificateCredential.spec.ts index 90b99a54791c..e14863ed7f67 100644 --- a/sdk/identity/identity-cache-persistence/test/internal/node/clientCertificateCredential.spec.ts +++ b/sdk/identity/identity-cache-persistence/test/internal/node/clientCertificateCredential.spec.ts @@ -6,18 +6,15 @@ import * as path from "path"; -import { - ClientCertificateCredential, - TokenCachePersistenceOptions, -} from "../../../../identity/src"; -import { - MsalTestCleanup, - msalNodeTestSetup, -} from "../../../../identity/test/node/msalNodeTestSetup"; -import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { TokenCachePersistenceOptions } from "../../../../identity/src"; +import { ClientCertificateCredential } from "../../../../identity/src"; +import type { MsalTestCleanup } from "../../../../identity/test/node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../../../identity/test/node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import { ConfidentialClientApplication } from "@azure/msal-node"; -import Sinon from "sinon"; +import type Sinon from "sinon"; import assert from "assert"; import { createPersistence } from "./setup.spec"; diff --git a/sdk/identity/identity-cache-persistence/test/internal/node/clientSecretCredential.spec.ts b/sdk/identity/identity-cache-persistence/test/internal/node/clientSecretCredential.spec.ts index 37eb38c00f28..17f3bd8a3b7c 100644 --- a/sdk/identity/identity-cache-persistence/test/internal/node/clientSecretCredential.spec.ts +++ b/sdk/identity/identity-cache-persistence/test/internal/node/clientSecretCredential.spec.ts @@ -4,15 +4,15 @@ /* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ /* eslint-disable sort-imports */ -import { ClientSecretCredential, TokenCachePersistenceOptions } from "../../../../identity/src"; -import { - MsalTestCleanup, - msalNodeTestSetup, -} from "../../../../identity/test/node/msalNodeTestSetup"; -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { TokenCachePersistenceOptions } from "../../../../identity/src"; +import { ClientSecretCredential } from "../../../../identity/src"; +import type { MsalTestCleanup } from "../../../../identity/test/node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../../../identity/test/node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { ConfidentialClientApplication } from "@azure/msal-node"; -import Sinon from "sinon"; +import type Sinon from "sinon"; import assert from "assert"; import { createPersistence } from "./setup.spec"; diff --git a/sdk/identity/identity-cache-persistence/test/internal/node/deviceCodeCredential.spec.ts b/sdk/identity/identity-cache-persistence/test/internal/node/deviceCodeCredential.spec.ts index c804ae4b5b7f..5f4437ae2b80 100644 --- a/sdk/identity/identity-cache-persistence/test/internal/node/deviceCodeCredential.spec.ts +++ b/sdk/identity/identity-cache-persistence/test/internal/node/deviceCodeCredential.spec.ts @@ -4,15 +4,15 @@ /* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ /* eslint-disable sort-imports */ -import { DeviceCodeCredential, TokenCachePersistenceOptions } from "../../../../identity/src"; -import { - MsalTestCleanup, - msalNodeTestSetup, -} from "../../../../identity/test/node/msalNodeTestSetup"; -import { Recorder, isLiveMode } from "@azure-tools/test-recorder"; +import type { TokenCachePersistenceOptions } from "../../../../identity/src"; +import { DeviceCodeCredential } from "../../../../identity/src"; +import type { MsalTestCleanup } from "../../../../identity/test/node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../../../identity/test/node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isLiveMode } from "@azure-tools/test-recorder"; import { PublicClientApplication } from "@azure/msal-node"; -import Sinon from "sinon"; +import type Sinon from "sinon"; import assert from "assert"; import { createPersistence } from "./setup.spec"; diff --git a/sdk/identity/identity-cache-persistence/test/internal/node/usernamePasswordCredential.spec.ts b/sdk/identity/identity-cache-persistence/test/internal/node/usernamePasswordCredential.spec.ts index ca3dbdcea427..725f5f892734 100644 --- a/sdk/identity/identity-cache-persistence/test/internal/node/usernamePasswordCredential.spec.ts +++ b/sdk/identity/identity-cache-persistence/test/internal/node/usernamePasswordCredential.spec.ts @@ -4,15 +4,15 @@ /* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ /* eslint-disable sort-imports */ -import { - MsalTestCleanup, - msalNodeTestSetup, -} from "../../../../identity/test/node/msalNodeTestSetup"; -import { Recorder, env } from "@azure-tools/test-recorder"; -import { TokenCachePersistenceOptions, UsernamePasswordCredential } from "../../../../identity/src"; +import type { MsalTestCleanup } from "../../../../identity/test/node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../../../identity/test/node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; +import type { TokenCachePersistenceOptions } from "../../../../identity/src"; +import { UsernamePasswordCredential } from "../../../../identity/src"; import { PublicClientApplication } from "@azure/msal-node"; -import Sinon from "sinon"; +import type Sinon from "sinon"; import assert from "assert"; import { createPersistence } from "./setup.spec"; diff --git a/sdk/identity/identity-vscode/review/identity-vscode.api.md b/sdk/identity/identity-vscode/review/identity-vscode.api.md index 6aac48819298..34f975d30241 100644 --- a/sdk/identity/identity-vscode/review/identity-vscode.api.md +++ b/sdk/identity/identity-vscode/review/identity-vscode.api.md @@ -4,12 +4,11 @@ ```ts -import { IdentityPlugin } from '@azure/identity'; +import type { IdentityPlugin } from '@azure/identity'; // @public export const vsCodePlugin: IdentityPlugin; - // (No @packageDocumentation comment for this package) ``` diff --git a/sdk/identity/identity-vscode/src/index.ts b/sdk/identity/identity-vscode/src/index.ts index 1ddb720c3ccd..2715f9877a6e 100644 --- a/sdk/identity/identity-vscode/src/index.ts +++ b/sdk/identity/identity-vscode/src/index.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzurePluginContext } from "../../identity/src/plugins/provider"; -import { IdentityPlugin } from "@azure/identity"; +import type { AzurePluginContext } from "../../identity/src/plugins/provider"; +import type { IdentityPlugin } from "@azure/identity"; import keytar from "keytar"; const VSCodeServiceName = "VS Code Azure"; diff --git a/sdk/identity/identity-vscode/test/public/node/visualStudioCodeCredential.spec.ts b/sdk/identity/identity-vscode/test/public/node/visualStudioCodeCredential.spec.ts index 758d9336092a..ae303c57b374 100644 --- a/sdk/identity/identity-vscode/test/public/node/visualStudioCodeCredential.spec.ts +++ b/sdk/identity/identity-vscode/test/public/node/visualStudioCodeCredential.spec.ts @@ -5,11 +5,10 @@ /* eslint-disable @typescript-eslint/no-require-imports */ /* eslint-disable sort-imports */ -import { - MsalTestCleanup, - msalNodeTestSetup, -} from "../../../../identity/test/node/msalNodeTestSetup"; -import { Recorder, isRecordMode } from "@azure-tools/test-recorder"; +import type { MsalTestCleanup } from "../../../../identity/test/node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../../../identity/test/node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isRecordMode } from "@azure-tools/test-recorder"; import { VisualStudioCodeCredential } from "@azure/identity"; import assert from "assert"; import sinon from "sinon"; diff --git a/sdk/identity/identity/review/identity.api.md b/sdk/identity/identity/review/identity.api.md index bbae14742ceb..458f14f93c04 100644 --- a/sdk/identity/identity/review/identity.api.md +++ b/sdk/identity/identity/review/identity.api.md @@ -5,10 +5,10 @@ ```ts import { AccessToken } from '@azure/core-auth'; -import { AzureLogger } from '@azure/logger'; -import { CommonClientOptions } from '@azure/core-client'; +import type { AzureLogger } from '@azure/logger'; +import type { CommonClientOptions } from '@azure/core-client'; import { GetTokenOptions } from '@azure/core-auth'; -import { LogPolicyOptions } from '@azure/core-rest-pipeline'; +import type { LogPolicyOptions } from '@azure/core-rest-pipeline'; import { TokenCredential } from '@azure/core-auth'; import type { TracingContext } from '@azure/core-auth'; diff --git a/sdk/identity/identity/src/client/identityClient.ts b/sdk/identity/identity/src/client/identityClient.ts index 2ad79e0ca7ba..9dc6520f07bc 100644 --- a/sdk/identity/identity/src/client/identityClient.ts +++ b/sdk/identity/identity/src/client/identityClient.ts @@ -2,24 +2,20 @@ // Licensed under the MIT License. import type { INetworkModule, NetworkRequestOptions, NetworkResponse } from "@azure/msal-node"; -import { AccessToken, GetTokenOptions } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions } from "@azure/core-auth"; import { ServiceClient } from "@azure/core-client"; import { isNode } from "@azure/core-util"; -import { - PipelineRequest, - PipelineResponse, - createHttpHeaders, - createPipelineRequest, -} from "@azure/core-rest-pipeline"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { AuthenticationError, AuthenticationErrorName } from "../errors"; import { getIdentityTokenEndpointSuffix } from "../util/identityTokenEndpoint"; import { DefaultAuthorityHost, SDK_VERSION } from "../constants"; import { tracingClient } from "../util/tracing"; import { logger } from "../util/logging"; -import { TokenCredentialOptions } from "../tokenCredentialOptions"; +import type { TokenCredentialOptions } from "../tokenCredentialOptions"; +import type { TokenResponseParsedBody } from "../credentials/managedIdentityCredential/utils"; import { - TokenResponseParsedBody, parseExpirationTimestamp, parseRefreshTimestamp, } from "../credentials/managedIdentityCredential/utils"; diff --git a/sdk/identity/identity/src/credentials/authorizationCodeCredential.browser.ts b/sdk/identity/identity/src/credentials/authorizationCodeCredential.browser.ts index 4dfbc9952245..a60af240b740 100644 --- a/sdk/identity/identity/src/credentials/authorizationCodeCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/authorizationCodeCredential.browser.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; import { credentialLogger, formatError } from "../util/logging"; -import { AuthorizationCodeCredentialOptions } from "./authorizationCodeCredentialOptions"; +import type { AuthorizationCodeCredentialOptions } from "./authorizationCodeCredentialOptions"; const BrowserNotSupportedError = new Error( "AuthorizationCodeCredential is not supported in the browser. InteractiveBrowserCredential is more appropriate for this use case.", diff --git a/sdk/identity/identity/src/credentials/authorizationCodeCredential.ts b/sdk/identity/identity/src/credentials/authorizationCodeCredential.ts index a5145ba1c7b6..44476bc934c8 100644 --- a/sdk/identity/identity/src/credentials/authorizationCodeCredential.ts +++ b/sdk/identity/identity/src/credentials/authorizationCodeCredential.ts @@ -1,17 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; import { processMultiTenantRequest, resolveAdditionallyAllowedTenantIds, } from "../util/tenantIdUtils"; -import { AuthorizationCodeCredentialOptions } from "./authorizationCodeCredentialOptions"; +import type { AuthorizationCodeCredentialOptions } from "./authorizationCodeCredentialOptions"; import { checkTenantId } from "../util/tenantIdUtils"; import { credentialLogger } from "../util/logging"; import { ensureScopes } from "../util/scopeUtils"; import { tracingClient } from "../util/tracing"; -import { MsalClient, createMsalClient } from "../msal/nodeFlows/msalClient"; +import type { MsalClient } from "../msal/nodeFlows/msalClient"; +import { createMsalClient } from "../msal/nodeFlows/msalClient"; const logger = credentialLogger("AuthorizationCodeCredential"); diff --git a/sdk/identity/identity/src/credentials/authorizationCodeCredentialOptions.ts b/sdk/identity/identity/src/credentials/authorizationCodeCredentialOptions.ts index 1c99cddad76a..479ac66e4ccc 100644 --- a/sdk/identity/identity/src/credentials/authorizationCodeCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/authorizationCodeCredentialOptions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthorityValidationOptions } from "./authorityValidationOptions"; -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { AuthorityValidationOptions } from "./authorityValidationOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Options for the {@link AuthorizationCodeCredential} diff --git a/sdk/identity/identity/src/credentials/azureApplicationCredential.browser.ts b/sdk/identity/identity/src/credentials/azureApplicationCredential.browser.ts index 87a630a7e3eb..377f9cc029d9 100644 --- a/sdk/identity/identity/src/credentials/azureApplicationCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/azureApplicationCredential.browser.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { credentialLogger, formatError } from "../util/logging"; -import { AccessToken } from "@azure/core-auth"; +import type { AccessToken } from "@azure/core-auth"; import { ChainedTokenCredential } from "./chainedTokenCredential"; -import { TokenCredentialOptions } from "../tokenCredentialOptions"; +import type { TokenCredentialOptions } from "../tokenCredentialOptions"; const BrowserNotSupportedError = new Error( "ApplicationCredential is not supported in the browser. Use InteractiveBrowserCredential instead.", diff --git a/sdk/identity/identity/src/credentials/azureApplicationCredential.ts b/sdk/identity/identity/src/credentials/azureApplicationCredential.ts index f83acc61b185..0ede7dd69f2e 100644 --- a/sdk/identity/identity/src/credentials/azureApplicationCredential.ts +++ b/sdk/identity/identity/src/credentials/azureApplicationCredential.ts @@ -6,7 +6,7 @@ import { createEnvironmentCredential, } from "./defaultAzureCredential"; -import { AzureApplicationCredentialOptions } from "./azureApplicationCredentialOptions"; +import type { AzureApplicationCredentialOptions } from "./azureApplicationCredentialOptions"; import { ChainedTokenCredential } from "./chainedTokenCredential"; /** diff --git a/sdk/identity/identity/src/credentials/azureApplicationCredentialOptions.ts b/sdk/identity/identity/src/credentials/azureApplicationCredentialOptions.ts index 39d4b54a46a8..a4e1a35c5e76 100644 --- a/sdk/identity/identity/src/credentials/azureApplicationCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/azureApplicationCredentialOptions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Provides options to configure the {@link AzureApplicationCredential} class. diff --git a/sdk/identity/identity/src/credentials/azureCliCredential.browser.ts b/sdk/identity/identity/src/credentials/azureCliCredential.browser.ts index 2f226b45d974..ae00807f4ad4 100644 --- a/sdk/identity/identity/src/credentials/azureCliCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/azureCliCredential.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; import { credentialLogger, formatError } from "../util/logging"; const BrowserNotSupportedError = new Error("AzureCliCredential is not supported in the browser."); diff --git a/sdk/identity/identity/src/credentials/azureCliCredential.ts b/sdk/identity/identity/src/credentials/azureCliCredential.ts index 31664284cdf0..6e03a39819eb 100644 --- a/sdk/identity/identity/src/credentials/azureCliCredential.ts +++ b/sdk/identity/identity/src/credentials/azureCliCredential.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; import { checkTenantId, processMultiTenantRequest, @@ -10,7 +10,7 @@ import { import { credentialLogger, formatError, formatSuccess } from "../util/logging"; import { ensureValidScopeForDevTimeCreds, getScopeResource } from "../util/scopeUtils"; -import { AzureCliCredentialOptions } from "./azureCliCredentialOptions"; +import type { AzureCliCredentialOptions } from "./azureCliCredentialOptions"; import { CredentialUnavailableError } from "../errors"; import child_process from "child_process"; import { tracingClient } from "../util/tracing"; diff --git a/sdk/identity/identity/src/credentials/azureCliCredentialOptions.ts b/sdk/identity/identity/src/credentials/azureCliCredentialOptions.ts index e620f9ed6db8..7e71f47a4940 100644 --- a/sdk/identity/identity/src/credentials/azureCliCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/azureCliCredentialOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Options for the {@link AzureCliCredential} diff --git a/sdk/identity/identity/src/credentials/azureDeveloperCliCredential.browser.ts b/sdk/identity/identity/src/credentials/azureDeveloperCliCredential.browser.ts index b54b4e465595..3aa21eafc64e 100644 --- a/sdk/identity/identity/src/credentials/azureDeveloperCliCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/azureDeveloperCliCredential.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; import { credentialLogger, formatError } from "../util/logging"; const BrowserNotSupportedError = new Error( diff --git a/sdk/identity/identity/src/credentials/azureDeveloperCliCredential.ts b/sdk/identity/identity/src/credentials/azureDeveloperCliCredential.ts index 909701a035a9..a713281cfc5c 100644 --- a/sdk/identity/identity/src/credentials/azureDeveloperCliCredential.ts +++ b/sdk/identity/identity/src/credentials/azureDeveloperCliCredential.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; import { credentialLogger, formatError, formatSuccess } from "../util/logging"; -import { AzureDeveloperCliCredentialOptions } from "./azureDeveloperCliCredentialOptions"; +import type { AzureDeveloperCliCredentialOptions } from "./azureDeveloperCliCredentialOptions"; import { CredentialUnavailableError } from "../errors"; import child_process from "child_process"; import { diff --git a/sdk/identity/identity/src/credentials/azureDeveloperCliCredentialOptions.ts b/sdk/identity/identity/src/credentials/azureDeveloperCliCredentialOptions.ts index 5a3b94634ccc..27ed72d40cb2 100644 --- a/sdk/identity/identity/src/credentials/azureDeveloperCliCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/azureDeveloperCliCredentialOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Options for the {@link AzureDeveloperCliCredential} diff --git a/sdk/identity/identity/src/credentials/azurePipelinesCredential.browser.ts b/sdk/identity/identity/src/credentials/azurePipelinesCredential.browser.ts index e2a05cf08a79..c34011644a10 100644 --- a/sdk/identity/identity/src/credentials/azurePipelinesCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/azurePipelinesCredential.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; import { credentialLogger, formatError } from "../util/logging"; const BrowserNotSupportedError = new Error( diff --git a/sdk/identity/identity/src/credentials/azurePipelinesCredential.ts b/sdk/identity/identity/src/credentials/azurePipelinesCredential.ts index 214503d26b29..fe4038fe6ce2 100644 --- a/sdk/identity/identity/src/credentials/azurePipelinesCredential.ts +++ b/sdk/identity/identity/src/credentials/azurePipelinesCredential.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; import { AuthenticationError, CredentialUnavailableError } from "../errors"; import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; -import { AzurePipelinesCredentialOptions } from "./azurePipelinesCredentialOptions"; +import type { AzurePipelinesCredentialOptions } from "./azurePipelinesCredentialOptions"; import { ClientAssertionCredential } from "./clientAssertionCredential"; import { IdentityClient } from "../client/identityClient"; -import { PipelineResponse } from "@azure/core-rest-pipeline"; +import type { PipelineResponse } from "@azure/core-rest-pipeline"; import { checkTenantId } from "../util/tenantIdUtils"; import { credentialLogger } from "../util/logging"; diff --git a/sdk/identity/identity/src/credentials/azurePipelinesCredentialOptions.ts b/sdk/identity/identity/src/credentials/azurePipelinesCredentialOptions.ts index 4f16a88144bb..e5ddc67c0c79 100644 --- a/sdk/identity/identity/src/credentials/azurePipelinesCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/azurePipelinesCredentialOptions.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthorityValidationOptions } from "./authorityValidationOptions"; -import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { AuthorityValidationOptions } from "./authorityValidationOptions"; +import type { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Optional parameters for the {@link AzurePipelinesCredential} class. diff --git a/sdk/identity/identity/src/credentials/azurePowerShellCredential.browser.ts b/sdk/identity/identity/src/credentials/azurePowerShellCredential.browser.ts index 855c6b93963c..a9ad0d68cd36 100644 --- a/sdk/identity/identity/src/credentials/azurePowerShellCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/azurePowerShellCredential.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; import { credentialLogger, formatError } from "../util/logging"; const BrowserNotSupportedError = new Error( diff --git a/sdk/identity/identity/src/credentials/azurePowerShellCredential.ts b/sdk/identity/identity/src/credentials/azurePowerShellCredential.ts index 4946ec768056..1581f3555c3e 100644 --- a/sdk/identity/identity/src/credentials/azurePowerShellCredential.ts +++ b/sdk/identity/identity/src/credentials/azurePowerShellCredential.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; import { checkTenantId, processMultiTenantRequest, @@ -10,7 +10,7 @@ import { import { credentialLogger, formatError, formatSuccess } from "../util/logging"; import { ensureValidScopeForDevTimeCreds, getScopeResource } from "../util/scopeUtils"; -import { AzurePowerShellCredentialOptions } from "./azurePowerShellCredentialOptions"; +import type { AzurePowerShellCredentialOptions } from "./azurePowerShellCredentialOptions"; import { CredentialUnavailableError } from "../errors"; import { processUtils } from "../util/processUtils"; import { tracingClient } from "../util/tracing"; diff --git a/sdk/identity/identity/src/credentials/azurePowerShellCredentialOptions.ts b/sdk/identity/identity/src/credentials/azurePowerShellCredentialOptions.ts index 52ccd309a03e..15cd9ac8101d 100644 --- a/sdk/identity/identity/src/credentials/azurePowerShellCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/azurePowerShellCredentialOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Options for the {@link AzurePowerShellCredential} diff --git a/sdk/identity/identity/src/credentials/brokerAuthOptions.ts b/sdk/identity/identity/src/credentials/brokerAuthOptions.ts index e8c83c1d30a9..9a79fde0f45a 100644 --- a/sdk/identity/identity/src/credentials/brokerAuthOptions.ts +++ b/sdk/identity/identity/src/credentials/brokerAuthOptions.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { BrokerOptions } from "../msal/nodeFlows/brokerOptions"; +import type { BrokerOptions } from "../msal/nodeFlows/brokerOptions"; /** * Configuration options for InteractiveBrowserCredential diff --git a/sdk/identity/identity/src/credentials/chainedTokenCredential.ts b/sdk/identity/identity/src/credentials/chainedTokenCredential.ts index d8fc483a83a4..1f2d60fd8c1f 100644 --- a/sdk/identity/identity/src/credentials/chainedTokenCredential.ts +++ b/sdk/identity/identity/src/credentials/chainedTokenCredential.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; import { AggregateAuthenticationError, CredentialUnavailableError } from "../errors"; import { credentialLogger, formatError, formatSuccess } from "../util/logging"; import { tracingClient } from "../util/tracing"; diff --git a/sdk/identity/identity/src/credentials/clientAssertionCredential.browser.ts b/sdk/identity/identity/src/credentials/clientAssertionCredential.browser.ts index 4395dde54d34..baf7a3967908 100644 --- a/sdk/identity/identity/src/credentials/clientAssertionCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/clientAssertionCredential.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; import { credentialLogger, formatError } from "../util/logging"; const BrowserNotSupportedError = new Error( diff --git a/sdk/identity/identity/src/credentials/clientAssertionCredential.ts b/sdk/identity/identity/src/credentials/clientAssertionCredential.ts index 3d30f25e2920..761751f9782e 100644 --- a/sdk/identity/identity/src/credentials/clientAssertionCredential.ts +++ b/sdk/identity/identity/src/credentials/clientAssertionCredential.ts @@ -1,14 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import { MsalClient, createMsalClient } from "../msal/nodeFlows/msalClient"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { MsalClient } from "../msal/nodeFlows/msalClient"; +import { createMsalClient } from "../msal/nodeFlows/msalClient"; import { processMultiTenantRequest, resolveAdditionallyAllowedTenantIds, } from "../util/tenantIdUtils"; -import { ClientAssertionCredentialOptions } from "./clientAssertionCredentialOptions"; +import type { ClientAssertionCredentialOptions } from "./clientAssertionCredentialOptions"; import { CredentialUnavailableError } from "../errors"; import { credentialLogger } from "../util/logging"; import { tracingClient } from "../util/tracing"; diff --git a/sdk/identity/identity/src/credentials/clientAssertionCredentialOptions.ts b/sdk/identity/identity/src/credentials/clientAssertionCredentialOptions.ts index 949a10f2daf9..1f04b0df87ab 100644 --- a/sdk/identity/identity/src/credentials/clientAssertionCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/clientAssertionCredentialOptions.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthorityValidationOptions } from "./authorityValidationOptions"; -import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { AuthorityValidationOptions } from "./authorityValidationOptions"; +import type { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Options for the {@link ClientAssertionCredential} diff --git a/sdk/identity/identity/src/credentials/clientCertificateCredential.browser.ts b/sdk/identity/identity/src/credentials/clientCertificateCredential.browser.ts index 803f911063de..16d0ecf023a9 100644 --- a/sdk/identity/identity/src/credentials/clientCertificateCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/clientCertificateCredential.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; import { credentialLogger, formatError } from "../util/logging"; const BrowserNotSupportedError = new Error( diff --git a/sdk/identity/identity/src/credentials/clientCertificateCredential.ts b/sdk/identity/identity/src/credentials/clientCertificateCredential.ts index 3584e5f468e7..e7ea916c438d 100644 --- a/sdk/identity/identity/src/credentials/clientCertificateCredential.ts +++ b/sdk/identity/identity/src/credentials/clientCertificateCredential.ts @@ -1,16 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import { MsalClient, createMsalClient } from "../msal/nodeFlows/msalClient"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { MsalClient } from "../msal/nodeFlows/msalClient"; +import { createMsalClient } from "../msal/nodeFlows/msalClient"; import { createHash, createPrivateKey } from "crypto"; import { processMultiTenantRequest, resolveAdditionallyAllowedTenantIds, } from "../util/tenantIdUtils"; -import { CertificateParts } from "../msal/types"; -import { ClientCertificateCredentialOptions } from "./clientCertificateCredentialOptions"; +import type { CertificateParts } from "../msal/types"; +import type { ClientCertificateCredentialOptions } from "./clientCertificateCredentialOptions"; import { credentialLogger } from "../util/logging"; import { readFile } from "fs/promises"; import { tracingClient } from "../util/tracing"; diff --git a/sdk/identity/identity/src/credentials/clientCertificateCredentialOptions.ts b/sdk/identity/identity/src/credentials/clientCertificateCredentialOptions.ts index 3de8e803916f..009042d5d797 100644 --- a/sdk/identity/identity/src/credentials/clientCertificateCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/clientCertificateCredentialOptions.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthorityValidationOptions } from "./authorityValidationOptions"; -import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { AuthorityValidationOptions } from "./authorityValidationOptions"; +import type { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Optional parameters for the {@link ClientCertificateCredential} class. diff --git a/sdk/identity/identity/src/credentials/clientSecretCredential.browser.ts b/sdk/identity/identity/src/credentials/clientSecretCredential.browser.ts index e3a7f8e97777..0813354d7c01 100644 --- a/sdk/identity/identity/src/credentials/clientSecretCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/clientSecretCredential.browser.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; import { credentialLogger, formatError, formatSuccess } from "../util/logging"; import { processMultiTenantRequest, resolveAdditionallyAllowedTenantIds, } from "../util/tenantIdUtils"; -import { ClientSecretCredentialOptions } from "./clientSecretCredentialOptions"; +import type { ClientSecretCredentialOptions } from "./clientSecretCredentialOptions"; import { IdentityClient } from "../client/identityClient"; import { getIdentityTokenEndpointSuffix } from "../util/identityTokenEndpoint"; import { tracingClient } from "../util/tracing"; diff --git a/sdk/identity/identity/src/credentials/clientSecretCredential.ts b/sdk/identity/identity/src/credentials/clientSecretCredential.ts index bebf776a7bd0..9a26f6fc8abc 100644 --- a/sdk/identity/identity/src/credentials/clientSecretCredential.ts +++ b/sdk/identity/identity/src/credentials/clientSecretCredential.ts @@ -1,14 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import { MsalClient, createMsalClient } from "../msal/nodeFlows/msalClient"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { MsalClient } from "../msal/nodeFlows/msalClient"; +import { createMsalClient } from "../msal/nodeFlows/msalClient"; import { processMultiTenantRequest, resolveAdditionallyAllowedTenantIds, } from "../util/tenantIdUtils"; -import { ClientSecretCredentialOptions } from "./clientSecretCredentialOptions"; +import type { ClientSecretCredentialOptions } from "./clientSecretCredentialOptions"; import { CredentialUnavailableError } from "../errors"; import { credentialLogger } from "../util/logging"; import { ensureScopes } from "../util/scopeUtils"; diff --git a/sdk/identity/identity/src/credentials/clientSecretCredentialOptions.ts b/sdk/identity/identity/src/credentials/clientSecretCredentialOptions.ts index 97cfea78e074..ea768cc31da7 100644 --- a/sdk/identity/identity/src/credentials/clientSecretCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/clientSecretCredentialOptions.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthorityValidationOptions } from "./authorityValidationOptions"; -import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { AuthorityValidationOptions } from "./authorityValidationOptions"; +import type { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Optional parameters for the {@link ClientSecretCredential} class. diff --git a/sdk/identity/identity/src/credentials/credentialPersistenceOptions.ts b/sdk/identity/identity/src/credentials/credentialPersistenceOptions.ts index ad6cd4c5d64a..9706b7342c55 100644 --- a/sdk/identity/identity/src/credentials/credentialPersistenceOptions.ts +++ b/sdk/identity/identity/src/credentials/credentialPersistenceOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCachePersistenceOptions } from "../msal/nodeFlows/tokenCachePersistenceOptions"; +import type { TokenCachePersistenceOptions } from "../msal/nodeFlows/tokenCachePersistenceOptions"; /** * Shared configuration options for credentials that support persistent token diff --git a/sdk/identity/identity/src/credentials/defaultAzureCredential.browser.ts b/sdk/identity/identity/src/credentials/defaultAzureCredential.browser.ts index bb3b6559621d..852c1ba29f9f 100644 --- a/sdk/identity/identity/src/credentials/defaultAzureCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/defaultAzureCredential.browser.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { credentialLogger, formatError } from "../util/logging"; -import { AccessToken } from "@azure/core-auth"; +import type { AccessToken } from "@azure/core-auth"; import { ChainedTokenCredential } from "./chainedTokenCredential"; -import { TokenCredentialOptions } from "../tokenCredentialOptions"; +import type { TokenCredentialOptions } from "../tokenCredentialOptions"; const BrowserNotSupportedError = new Error( "DefaultAzureCredential is not supported in the browser. Use InteractiveBrowserCredential instead.", diff --git a/sdk/identity/identity/src/credentials/defaultAzureCredential.ts b/sdk/identity/identity/src/credentials/defaultAzureCredential.ts index 503c90781570..23d1e6ec852e 100644 --- a/sdk/identity/identity/src/credentials/defaultAzureCredential.ts +++ b/sdk/identity/identity/src/credentials/defaultAzureCredential.ts @@ -1,25 +1,25 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { DefaultAzureCredentialClientIdOptions, DefaultAzureCredentialOptions, DefaultAzureCredentialResourceIdOptions, } from "./defaultAzureCredentialOptions"; -import { - ManagedIdentityCredential, +import type { ManagedIdentityCredentialClientIdOptions, ManagedIdentityCredentialResourceIdOptions, } from "./managedIdentityCredential"; +import { ManagedIdentityCredential } from "./managedIdentityCredential"; import { AzureCliCredential } from "./azureCliCredential"; import { AzureDeveloperCliCredential } from "./azureDeveloperCliCredential"; import { AzurePowerShellCredential } from "./azurePowerShellCredential"; import { ChainedTokenCredential } from "./chainedTokenCredential"; import { EnvironmentCredential } from "./environmentCredential"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { WorkloadIdentityCredential } from "./workloadIdentityCredential"; -import { WorkloadIdentityCredentialOptions } from "./workloadIdentityCredentialOptions"; +import type { WorkloadIdentityCredentialOptions } from "./workloadIdentityCredentialOptions"; import { credentialLogger } from "../util/logging"; const logger = credentialLogger("DefaultAzureCredential"); diff --git a/sdk/identity/identity/src/credentials/defaultAzureCredentialOptions.ts b/sdk/identity/identity/src/credentials/defaultAzureCredentialOptions.ts index 36c91c556d7a..73266ef4e925 100644 --- a/sdk/identity/identity/src/credentials/defaultAzureCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/defaultAzureCredentialOptions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthorityValidationOptions } from "./authorityValidationOptions"; -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { AuthorityValidationOptions } from "./authorityValidationOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Provides options to configure the {@link DefaultAzureCredential} class. diff --git a/sdk/identity/identity/src/credentials/deviceCodeCredential.browser.ts b/sdk/identity/identity/src/credentials/deviceCodeCredential.browser.ts index 013e7d939f06..49ca1e3076e8 100644 --- a/sdk/identity/identity/src/credentials/deviceCodeCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/deviceCodeCredential.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; import { credentialLogger, formatError } from "../util/logging"; diff --git a/sdk/identity/identity/src/credentials/deviceCodeCredential.ts b/sdk/identity/identity/src/credentials/deviceCodeCredential.ts index a84476dd4a0f..02e0027afb8c 100644 --- a/sdk/identity/identity/src/credentials/deviceCodeCredential.ts +++ b/sdk/identity/identity/src/credentials/deviceCodeCredential.ts @@ -1,22 +1,23 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; import { processMultiTenantRequest, resolveAdditionallyAllowedTenantIds, resolveTenantId, } from "../util/tenantIdUtils"; -import { +import type { DeviceCodeCredentialOptions, DeviceCodeInfo, DeviceCodePromptCallback, } from "./deviceCodeCredentialOptions"; -import { AuthenticationRecord } from "../msal/types"; +import type { AuthenticationRecord } from "../msal/types"; import { credentialLogger } from "../util/logging"; import { ensureScopes } from "../util/scopeUtils"; import { tracingClient } from "../util/tracing"; -import { MsalClient, createMsalClient } from "../msal/nodeFlows/msalClient"; +import type { MsalClient } from "../msal/nodeFlows/msalClient"; +import { createMsalClient } from "../msal/nodeFlows/msalClient"; import { DeveloperSignOnClientId } from "../constants"; const logger = credentialLogger("DeviceCodeCredential"); diff --git a/sdk/identity/identity/src/credentials/deviceCodeCredentialOptions.ts b/sdk/identity/identity/src/credentials/deviceCodeCredentialOptions.ts index d292300aba9d..46440da225e4 100644 --- a/sdk/identity/identity/src/credentials/deviceCodeCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/deviceCodeCredentialOptions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; -import { InteractiveCredentialOptions } from "./interactiveCredentialOptions"; +import type { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; +import type { InteractiveCredentialOptions } from "./interactiveCredentialOptions"; /** * Provides the user code and verification URI where the code must be diff --git a/sdk/identity/identity/src/credentials/environmentCredential.browser.ts b/sdk/identity/identity/src/credentials/environmentCredential.browser.ts index 0dc2c2bb5aaf..3a3f7d620501 100644 --- a/sdk/identity/identity/src/credentials/environmentCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/environmentCredential.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; import { credentialLogger, formatError } from "../util/logging"; const BrowserNotSupportedError = new Error( diff --git a/sdk/identity/identity/src/credentials/environmentCredential.ts b/sdk/identity/identity/src/credentials/environmentCredential.ts index 114855683c12..55160007459e 100644 --- a/sdk/identity/identity/src/credentials/environmentCredential.ts +++ b/sdk/identity/identity/src/credentials/environmentCredential.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; import { AuthenticationError, CredentialUnavailableError } from "../errors"; import { credentialLogger, formatError, formatSuccess, processEnvVars } from "../util/logging"; import { ClientCertificateCredential } from "./clientCertificateCredential"; import { ClientSecretCredential } from "./clientSecretCredential"; -import { EnvironmentCredentialOptions } from "./environmentCredentialOptions"; +import type { EnvironmentCredentialOptions } from "./environmentCredentialOptions"; import { UsernamePasswordCredential } from "./usernamePasswordCredential"; import { checkTenantId } from "../util/tenantIdUtils"; import { tracingClient } from "../util/tracing"; diff --git a/sdk/identity/identity/src/credentials/environmentCredentialOptions.ts b/sdk/identity/identity/src/credentials/environmentCredentialOptions.ts index 70cb9380a34e..3cab9668f733 100644 --- a/sdk/identity/identity/src/credentials/environmentCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/environmentCredentialOptions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthorityValidationOptions } from "./authorityValidationOptions"; -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { AuthorityValidationOptions } from "./authorityValidationOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Enables authentication to Microsoft Entra ID depending on the available environment variables. diff --git a/sdk/identity/identity/src/credentials/interactiveBrowserCredential.browser.ts b/sdk/identity/identity/src/credentials/interactiveBrowserCredential.browser.ts index bd0f488a6c1e..cc9d8de99a65 100644 --- a/sdk/identity/identity/src/credentials/interactiveBrowserCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/interactiveBrowserCredential.browser.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import { +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { InteractiveBrowserCredentialInBrowserOptions, InteractiveBrowserCredentialNodeOptions, } from "./interactiveBrowserCredentialOptions"; @@ -12,10 +12,10 @@ import { resolveAdditionallyAllowedTenantIds, } from "../util/tenantIdUtils"; -import { AuthenticationRecord } from "../msal/types"; +import type { AuthenticationRecord } from "../msal/types"; import { MSALAuthCode } from "../msal/browserFlows/msalAuthCode"; -import { MsalBrowserFlowOptions } from "../msal/browserFlows/msalBrowserCommon"; -import { MsalFlow } from "../msal/browserFlows/flows"; +import type { MsalBrowserFlowOptions } from "../msal/browserFlows/msalBrowserCommon"; +import type { MsalFlow } from "../msal/browserFlows/flows"; import { ensureScopes } from "../util/scopeUtils"; import { tracingClient } from "../util/tracing"; diff --git a/sdk/identity/identity/src/credentials/interactiveBrowserCredential.ts b/sdk/identity/identity/src/credentials/interactiveBrowserCredential.ts index fa5c4e8a56c7..0804d1c43652 100644 --- a/sdk/identity/identity/src/credentials/interactiveBrowserCredential.ts +++ b/sdk/identity/identity/src/credentials/interactiveBrowserCredential.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import { +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { InteractiveBrowserCredentialInBrowserOptions, InteractiveBrowserCredentialNodeOptions, } from "./interactiveBrowserCredentialOptions"; @@ -12,11 +12,12 @@ import { resolveTenantId, } from "../util/tenantIdUtils"; -import { AuthenticationRecord } from "../msal/types"; +import type { AuthenticationRecord } from "../msal/types"; import { credentialLogger } from "../util/logging"; import { ensureScopes } from "../util/scopeUtils"; import { tracingClient } from "../util/tracing"; -import { MsalClient, MsalClientOptions, createMsalClient } from "../msal/nodeFlows/msalClient"; +import type { MsalClient, MsalClientOptions } from "../msal/nodeFlows/msalClient"; +import { createMsalClient } from "../msal/nodeFlows/msalClient"; import { DeveloperSignOnClientId } from "../constants"; const logger = credentialLogger("InteractiveBrowserCredential"); diff --git a/sdk/identity/identity/src/credentials/interactiveBrowserCredentialOptions.ts b/sdk/identity/identity/src/credentials/interactiveBrowserCredentialOptions.ts index 2aa1dc40daf6..7c807a7eb7a4 100644 --- a/sdk/identity/identity/src/credentials/interactiveBrowserCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/interactiveBrowserCredentialOptions.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { BrowserCustomizationOptions } from "./browserCustomizationOptions"; -import { BrokerAuthOptions } from "./brokerAuthOptions"; -import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; -import { InteractiveCredentialOptions } from "./interactiveCredentialOptions"; +import type { BrowserCustomizationOptions } from "./browserCustomizationOptions"; +import type { BrokerAuthOptions } from "./brokerAuthOptions"; +import type { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; +import type { InteractiveCredentialOptions } from "./interactiveCredentialOptions"; /** * (Browser-only feature) diff --git a/sdk/identity/identity/src/credentials/interactiveCredentialOptions.ts b/sdk/identity/identity/src/credentials/interactiveCredentialOptions.ts index 1320b71465af..449e56e665c0 100644 --- a/sdk/identity/identity/src/credentials/interactiveCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/interactiveCredentialOptions.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthenticationRecord } from "../msal/types"; -import { AuthorityValidationOptions } from "./authorityValidationOptions"; -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { AuthenticationRecord } from "../msal/types"; +import type { AuthorityValidationOptions } from "./authorityValidationOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Common constructor options for the Identity credentials that requires user interaction. diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/appServiceMsi2017.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/appServiceMsi2017.ts index e3ae577fcb49..fe0d1b1e4756 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/appServiceMsi2017.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/appServiceMsi2017.ts @@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - PipelineRequestOptions, - createHttpHeaders, - createPipelineRequest, -} from "@azure/core-rest-pipeline"; -import { GetTokenOptions } from "@azure/core-auth"; +import type { PipelineRequestOptions } from "@azure/core-rest-pipeline"; +import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; +import type { GetTokenOptions } from "@azure/core-auth"; import { credentialLogger } from "../../util/logging"; -import { MSI, MSIConfiguration, MSIToken } from "./models"; +import type { MSI, MSIConfiguration, MSIToken } from "./models"; import { mapScopesToResource } from "./utils"; const msiName = "ManagedIdentityCredential - AppServiceMSI 2017"; diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/appServiceMsi2019.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/appServiceMsi2019.ts index 0bb43c67aa19..0af03a8e7cab 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/appServiceMsi2019.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/appServiceMsi2019.ts @@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - PipelineRequestOptions, - createHttpHeaders, - createPipelineRequest, -} from "@azure/core-rest-pipeline"; -import { GetTokenOptions } from "@azure/core-auth"; +import type { PipelineRequestOptions } from "@azure/core-rest-pipeline"; +import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; +import type { GetTokenOptions } from "@azure/core-auth"; import { credentialLogger } from "../../util/logging"; -import { MSI, MSIConfiguration, MSIToken } from "./models"; +import type { MSI, MSIConfiguration, MSIToken } from "./models"; import { mapScopesToResource } from "./utils"; const msiName = "ManagedIdentityCredential - AppServiceMSI 2019"; diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/arcMsi.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/arcMsi.ts index 63ce7e429fdd..b6c3ea3331ff 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/arcMsi.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/arcMsi.ts @@ -1,16 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MSI, MSIConfiguration, MSIToken } from "./models"; -import { - PipelineRequestOptions, - createHttpHeaders, - createPipelineRequest, -} from "@azure/core-rest-pipeline"; +import type { MSI, MSIConfiguration, MSIToken } from "./models"; +import type { PipelineRequestOptions } from "@azure/core-rest-pipeline"; +import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; import { AuthenticationError } from "../../errors"; -import { GetTokenOptions } from "@azure/core-auth"; -import { IdentityClient } from "../../client/identityClient"; +import type { GetTokenOptions } from "@azure/core-auth"; +import type { IdentityClient } from "../../client/identityClient"; import { azureArcAPIVersion } from "./constants"; import { credentialLogger } from "../../util/logging"; import fs from "node:fs"; diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/cloudShellMsi.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/cloudShellMsi.ts index 457d4888edda..bbb84ca9a929 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/cloudShellMsi.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/cloudShellMsi.ts @@ -1,14 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - PipelineRequestOptions, - createHttpHeaders, - createPipelineRequest, -} from "@azure/core-rest-pipeline"; +import type { PipelineRequestOptions } from "@azure/core-rest-pipeline"; +import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; import { credentialLogger } from "../../util/logging"; -import { GetTokenOptions } from "@azure/core-auth"; -import { MSI, MSIConfiguration, MSIToken } from "./models"; +import type { GetTokenOptions } from "@azure/core-auth"; +import type { MSI, MSIConfiguration, MSIToken } from "./models"; import { mapScopesToResource } from "./utils"; const msiName = "ManagedIdentityCredential - CloudShellMSI"; diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/fabricMsi.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/fabricMsi.ts index 462256075e95..10903274ee0c 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/fabricMsi.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/fabricMsi.ts @@ -2,14 +2,11 @@ // Licensed under the MIT License. import https from "https"; -import { - PipelineRequestOptions, - createHttpHeaders, - createPipelineRequest, -} from "@azure/core-rest-pipeline"; -import { GetTokenOptions } from "@azure/core-auth"; +import type { PipelineRequestOptions } from "@azure/core-rest-pipeline"; +import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; +import type { GetTokenOptions } from "@azure/core-auth"; import { credentialLogger } from "../../util/logging"; -import { MSI, MSIConfiguration, MSIToken } from "./models"; +import type { MSI, MSIConfiguration, MSIToken } from "./models"; import { mapScopesToResource } from "./utils"; import { azureFabricVersion } from "./constants"; diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/imdsMsi.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/imdsMsi.ts index 1335a8aaab55..f00807bc4d54 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/imdsMsi.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/imdsMsi.ts @@ -1,18 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MSI, MSIConfiguration, MSIToken } from "./models"; -import { - PipelineRequestOptions, - PipelineResponse, - createHttpHeaders, - createPipelineRequest, -} from "@azure/core-rest-pipeline"; +import type { MSI, MSIConfiguration, MSIToken } from "./models"; +import type { PipelineRequestOptions, PipelineResponse } from "@azure/core-rest-pipeline"; +import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; import { delay, isError } from "@azure/core-util"; import { imdsApiVersion, imdsEndpointPath, imdsHost } from "./constants"; import { AuthenticationError } from "../../errors"; -import { GetTokenOptions } from "@azure/core-auth"; +import type { GetTokenOptions } from "@azure/core-auth"; import { credentialLogger } from "../../util/logging"; import { mapScopesToResource } from "./utils"; import { tracingClient } from "../../util/tracing"; diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/imdsRetryPolicy.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/imdsRetryPolicy.ts index 4decbd31e614..503dd2cbda2f 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/imdsRetryPolicy.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/imdsRetryPolicy.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelinePolicy, retryPolicy } from "@azure/core-rest-pipeline"; +import type { PipelinePolicy } from "@azure/core-rest-pipeline"; +import { retryPolicy } from "@azure/core-rest-pipeline"; -import { MSIConfiguration } from "./models"; +import type { MSIConfiguration } from "./models"; import { calculateRetryDelay } from "@azure/core-util"; // Matches the default retry configuration in expontentialRetryStrategy.ts diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/index.browser.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/index.browser.ts index e1d625c44d64..6b3202c628ab 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/index.browser.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/index.browser.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; -import { TokenCredentialOptions } from "../../tokenCredentialOptions"; +import type { TokenCredentialOptions } from "../../tokenCredentialOptions"; import { credentialLogger, formatError } from "../../util/logging"; const BrowserNotSupportedError = new Error( diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/index.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/index.ts index 9f12f2b15a04..2f2e34511a9a 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/index.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/index.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import { LegacyMsiProvider } from "./legacyMsiProvider"; -import { TokenCredentialOptions } from "../../tokenCredentialOptions"; +import type { LegacyMsiProvider } from "./legacyMsiProvider"; +import type { TokenCredentialOptions } from "../../tokenCredentialOptions"; import { MsalMsiProvider } from "./msalMsiProvider"; /** diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/legacyMsiProvider.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/legacyMsiProvider.ts index 9095405c253a..9a80e63cfdcb 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/legacyMsiProvider.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/legacyMsiProvider.ts @@ -1,21 +1,22 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions } from "@azure/core-auth"; -import { AppTokenProviderParameters, ConfidentialClientApplication } from "@azure/msal-node"; +import type { AccessToken, GetTokenOptions } from "@azure/core-auth"; +import type { AppTokenProviderParameters } from "@azure/msal-node"; +import { ConfidentialClientApplication } from "@azure/msal-node"; import { AuthenticationError, AuthenticationRequiredError, CredentialUnavailableError, } from "../../errors"; -import { MSI, MSIConfiguration, MSIToken } from "./models"; -import { MsalResult, MsalToken, ValidMsalToken } from "../../msal/types"; +import type { MSI, MSIConfiguration, MSIToken } from "./models"; +import type { MsalResult, MsalToken, ValidMsalToken } from "../../msal/types"; import { cloudShellMsi } from "./cloudShellMsi"; import { credentialLogger, formatError, formatSuccess } from "../../util/logging"; import { DeveloperSignOnClientId } from "../../constants"; import { IdentityClient } from "../../client/identityClient"; -import { TokenCredentialOptions } from "../../tokenCredentialOptions"; +import type { TokenCredentialOptions } from "../../tokenCredentialOptions"; import { appServiceMsi2017 } from "./appServiceMsi2017"; import { appServiceMsi2019 } from "./appServiceMsi2019"; import { arcMsi } from "./arcMsi"; diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/models.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/models.ts index 4415122130e9..175fbe2a0d94 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/models.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/models.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions } from "@azure/core-auth"; -import { IdentityClient } from "../../client/identityClient"; +import type { IdentityClient } from "../../client/identityClient"; /** * @internal diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/msalMsiProvider.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/msalMsiProvider.ts index fc2fcfa52333..b0819f36b8a9 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/msalMsiProvider.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/msalMsiProvider.ts @@ -1,16 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions } from "@azure/core-auth"; import { AuthenticationRequiredError, CredentialUnavailableError } from "../../errors"; -import { MsalToken, ValidMsalToken } from "../../msal/types"; +import type { MsalToken, ValidMsalToken } from "../../msal/types"; import { credentialLogger, formatError, formatSuccess } from "../../util/logging"; import { defaultLoggerCallback, getMSALLogLevel } from "../../msal/utils"; import { IdentityClient } from "../../client/identityClient"; -import { MSIConfiguration } from "./models"; +import type { MSIConfiguration } from "./models"; import { ManagedIdentityApplication } from "@azure/msal-node"; -import { TokenCredentialOptions } from "../../tokenCredentialOptions"; +import type { TokenCredentialOptions } from "../../tokenCredentialOptions"; import { getLogLevel } from "@azure/logger"; import { imdsMsi } from "./imdsMsi"; import { imdsRetryPolicy } from "./imdsRetryPolicy"; diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/tokenExchangeMsi.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/tokenExchangeMsi.ts index 122e3036ef73..60311e7c362a 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/tokenExchangeMsi.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/tokenExchangeMsi.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions } from "@azure/core-auth"; -import { MSI, MSIConfiguration } from "./models"; +import type { AccessToken, GetTokenOptions } from "@azure/core-auth"; +import type { MSI, MSIConfiguration } from "./models"; import { WorkloadIdentityCredential } from "../workloadIdentityCredential"; import { credentialLogger } from "../../util/logging"; -import { WorkloadIdentityCredentialOptions } from "../workloadIdentityCredentialOptions"; +import type { WorkloadIdentityCredentialOptions } from "../workloadIdentityCredentialOptions"; const msiName = "ManagedIdentityCredential - Token Exchange"; const logger = credentialLogger(msiName); diff --git a/sdk/identity/identity/src/credentials/multiTenantTokenCredentialOptions.ts b/sdk/identity/identity/src/credentials/multiTenantTokenCredentialOptions.ts index fba3c8402c54..9017baf814a8 100644 --- a/sdk/identity/identity/src/credentials/multiTenantTokenCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/multiTenantTokenCredentialOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredentialOptions } from "../tokenCredentialOptions"; +import type { TokenCredentialOptions } from "../tokenCredentialOptions"; /** * Options for multi-tenant applications which allows for additionally allowed tenants. diff --git a/sdk/identity/identity/src/credentials/onBehalfOfCredential.browser.ts b/sdk/identity/identity/src/credentials/onBehalfOfCredential.browser.ts index 24d7478f3c35..48c45e4ce165 100644 --- a/sdk/identity/identity/src/credentials/onBehalfOfCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/onBehalfOfCredential.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; import { credentialLogger, formatError } from "../util/logging"; const credentialName = "OnBehalfOfCredential"; diff --git a/sdk/identity/identity/src/credentials/onBehalfOfCredential.ts b/sdk/identity/identity/src/credentials/onBehalfOfCredential.ts index 0a3c16c534f9..8b3c25c8cdc0 100644 --- a/sdk/identity/identity/src/credentials/onBehalfOfCredential.ts +++ b/sdk/identity/identity/src/credentials/onBehalfOfCredential.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import { MsalClient, createMsalClient } from "../msal/nodeFlows/msalClient"; -import { +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { MsalClient } from "../msal/nodeFlows/msalClient"; +import { createMsalClient } from "../msal/nodeFlows/msalClient"; +import type { OnBehalfOfCredentialAssertionOptions, OnBehalfOfCredentialCertificateOptions, OnBehalfOfCredentialOptions, @@ -15,11 +16,11 @@ import { resolveAdditionallyAllowedTenantIds, } from "../util/tenantIdUtils"; -import { CertificateParts } from "../msal/types"; -import { ClientCertificatePEMCertificatePath } from "./clientCertificateCredential"; -import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; +import type { CertificateParts } from "../msal/types"; +import type { ClientCertificatePEMCertificatePath } from "./clientCertificateCredential"; +import type { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; import { CredentialUnavailableError } from "../errors"; -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; import { createHash } from "node:crypto"; import { ensureScopes } from "../util/scopeUtils"; import { readFile } from "node:fs/promises"; diff --git a/sdk/identity/identity/src/credentials/onBehalfOfCredentialOptions.ts b/sdk/identity/identity/src/credentials/onBehalfOfCredentialOptions.ts index 5cd4cdfb8a82..a5cefdac355f 100644 --- a/sdk/identity/identity/src/credentials/onBehalfOfCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/onBehalfOfCredentialOptions.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthorityValidationOptions } from "./authorityValidationOptions"; -import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { AuthorityValidationOptions } from "./authorityValidationOptions"; +import type { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Defines the parameters to authenticate the {@link OnBehalfOfCredential} with a secret. diff --git a/sdk/identity/identity/src/credentials/usernamePasswordCredential.browser.ts b/sdk/identity/identity/src/credentials/usernamePasswordCredential.browser.ts index 7ba145ad895c..a03b64006240 100644 --- a/sdk/identity/identity/src/credentials/usernamePasswordCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/usernamePasswordCredential.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; import { checkTenantId, processMultiTenantRequest, @@ -10,7 +10,7 @@ import { import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; import { credentialLogger, formatSuccess } from "../util/logging"; import { IdentityClient } from "../client/identityClient"; -import { UsernamePasswordCredentialOptions } from "./usernamePasswordCredentialOptions"; +import type { UsernamePasswordCredentialOptions } from "./usernamePasswordCredentialOptions"; import { getIdentityTokenEndpointSuffix } from "../util/identityTokenEndpoint"; import { tracingClient } from "../util/tracing"; diff --git a/sdk/identity/identity/src/credentials/usernamePasswordCredential.ts b/sdk/identity/identity/src/credentials/usernamePasswordCredential.ts index 79c4757fa252..a9b11a8a75c1 100644 --- a/sdk/identity/identity/src/credentials/usernamePasswordCredential.ts +++ b/sdk/identity/identity/src/credentials/usernamePasswordCredential.ts @@ -1,15 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import { MsalClient, createMsalClient } from "../msal/nodeFlows/msalClient"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { MsalClient } from "../msal/nodeFlows/msalClient"; +import { createMsalClient } from "../msal/nodeFlows/msalClient"; import { processMultiTenantRequest, resolveAdditionallyAllowedTenantIds, } from "../util/tenantIdUtils"; import { CredentialUnavailableError } from "../errors"; -import { UsernamePasswordCredentialOptions } from "./usernamePasswordCredentialOptions"; +import type { UsernamePasswordCredentialOptions } from "./usernamePasswordCredentialOptions"; import { credentialLogger } from "../util/logging"; import { ensureScopes } from "../util/scopeUtils"; import { tracingClient } from "../util/tracing"; diff --git a/sdk/identity/identity/src/credentials/usernamePasswordCredentialOptions.ts b/sdk/identity/identity/src/credentials/usernamePasswordCredentialOptions.ts index cffb3fd30a77..5a2ff7047558 100644 --- a/sdk/identity/identity/src/credentials/usernamePasswordCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/usernamePasswordCredentialOptions.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthorityValidationOptions } from "./authorityValidationOptions"; -import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { AuthorityValidationOptions } from "./authorityValidationOptions"; +import type { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Defines options for the {@link UsernamePasswordCredential} class. diff --git a/sdk/identity/identity/src/credentials/visualStudioCodeCredential.browser.ts b/sdk/identity/identity/src/credentials/visualStudioCodeCredential.browser.ts index 9890a06e1cfb..81e0cde7075a 100644 --- a/sdk/identity/identity/src/credentials/visualStudioCodeCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/visualStudioCodeCredential.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; import { credentialLogger, formatError } from "../util/logging"; const BrowserNotSupportedError = new Error( diff --git a/sdk/identity/identity/src/credentials/visualStudioCodeCredential.ts b/sdk/identity/identity/src/credentials/visualStudioCodeCredential.ts index e33b5f6871bc..99c7501c540c 100644 --- a/sdk/identity/identity/src/credentials/visualStudioCodeCredential.ts +++ b/sdk/identity/identity/src/credentials/visualStudioCodeCredential.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; import { credentialLogger, formatError, formatSuccess } from "../util/logging"; import { processMultiTenantRequest, @@ -10,8 +10,8 @@ import { import { AzureAuthorityHosts } from "../constants"; import { CredentialUnavailableError } from "../errors"; import { IdentityClient } from "../client/identityClient"; -import { VisualStudioCodeCredentialOptions } from "./visualStudioCodeCredentialOptions"; -import { VSCodeCredentialFinder } from "./visualStudioCodeCredentialPlugin"; +import type { VisualStudioCodeCredentialOptions } from "./visualStudioCodeCredentialOptions"; +import type { VSCodeCredentialFinder } from "./visualStudioCodeCredentialPlugin"; import { checkTenantId } from "../util/tenantIdUtils"; import fs from "fs"; import os from "os"; diff --git a/sdk/identity/identity/src/credentials/visualStudioCodeCredentialOptions.ts b/sdk/identity/identity/src/credentials/visualStudioCodeCredentialOptions.ts index 36895243f816..d2270457212d 100644 --- a/sdk/identity/identity/src/credentials/visualStudioCodeCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/visualStudioCodeCredentialOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Provides options to configure the Visual Studio Code credential. diff --git a/sdk/identity/identity/src/credentials/workloadIdentityCredential.browser.ts b/sdk/identity/identity/src/credentials/workloadIdentityCredential.browser.ts index cb1f91ff2432..44c363779035 100644 --- a/sdk/identity/identity/src/credentials/workloadIdentityCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/workloadIdentityCredential.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; import { credentialLogger, formatError } from "../util/logging"; const BrowserNotSupportedError = new Error( diff --git a/sdk/identity/identity/src/credentials/workloadIdentityCredential.ts b/sdk/identity/identity/src/credentials/workloadIdentityCredential.ts index 7b301478cddb..979b0bdc565a 100644 --- a/sdk/identity/identity/src/credentials/workloadIdentityCredential.ts +++ b/sdk/identity/identity/src/credentials/workloadIdentityCredential.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; import { credentialLogger, processEnvVars } from "../util/logging"; import { ClientAssertionCredential } from "./clientAssertionCredential"; import { CredentialUnavailableError } from "../errors"; -import { WorkloadIdentityCredentialOptions } from "./workloadIdentityCredentialOptions"; +import type { WorkloadIdentityCredentialOptions } from "./workloadIdentityCredentialOptions"; import { checkTenantId } from "../util/tenantIdUtils"; import { readFile } from "fs/promises"; diff --git a/sdk/identity/identity/src/credentials/workloadIdentityCredentialOptions.ts b/sdk/identity/identity/src/credentials/workloadIdentityCredentialOptions.ts index 30f2b7ca57ed..8e26e7aca22e 100644 --- a/sdk/identity/identity/src/credentials/workloadIdentityCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/workloadIdentityCredentialOptions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthorityValidationOptions } from "./authorityValidationOptions"; -import { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; +import type { AuthorityValidationOptions } from "./authorityValidationOptions"; +import type { MultiTenantTokenCredentialOptions } from "./multiTenantTokenCredentialOptions"; /** * Options for the {@link WorkloadIdentityCredential} diff --git a/sdk/identity/identity/src/errors.ts b/sdk/identity/identity/src/errors.ts index ef877d2205ff..d22f6424c71d 100644 --- a/sdk/identity/identity/src/errors.ts +++ b/sdk/identity/identity/src/errors.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { GetTokenOptions } from "@azure/core-auth"; +import type { GetTokenOptions } from "@azure/core-auth"; /** * See the official documentation for more details: diff --git a/sdk/identity/identity/src/index.ts b/sdk/identity/identity/src/index.ts index a95c6d08d118..0758577ab5e6 100644 --- a/sdk/identity/identity/src/index.ts +++ b/sdk/identity/identity/src/index.ts @@ -5,7 +5,7 @@ export * from "./plugins/consumer"; export { IdentityPlugin } from "./plugins/provider"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { DefaultAzureCredential } from "./credentials/defaultAzureCredential"; export { diff --git a/sdk/identity/identity/src/msal/browserFlows/flows.ts b/sdk/identity/identity/src/msal/browserFlows/flows.ts index 6f7a9bbea885..fbce9411bb60 100644 --- a/sdk/identity/identity/src/msal/browserFlows/flows.ts +++ b/sdk/identity/identity/src/msal/browserFlows/flows.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken } from "@azure/core-auth"; -import { AuthenticationRecord } from "../types"; -import { CredentialFlowGetTokenOptions } from "../credentials"; -import { CredentialLogger } from "../../util/logging"; +import type { AccessToken } from "@azure/core-auth"; +import type { AuthenticationRecord } from "../types"; +import type { CredentialFlowGetTokenOptions } from "../credentials"; +import type { CredentialLogger } from "../../util/logging"; /** * Union of the constructor parameters that all MSAL flow types take. diff --git a/sdk/identity/identity/src/msal/browserFlows/msalAuthCode.ts b/sdk/identity/identity/src/msal/browserFlows/msalAuthCode.ts index ba1c74f4694e..545a27cbc2e0 100644 --- a/sdk/identity/identity/src/msal/browserFlows/msalAuthCode.ts +++ b/sdk/identity/identity/src/msal/browserFlows/msalAuthCode.ts @@ -3,7 +3,8 @@ import * as msalBrowser from "@azure/msal-browser"; -import { MsalBrowser, MsalBrowserFlowOptions } from "./msalBrowserCommon"; +import type { MsalBrowserFlowOptions } from "./msalBrowserCommon"; +import { MsalBrowser } from "./msalBrowserCommon"; import { defaultLoggerCallback, getMSALLogLevel, @@ -12,10 +13,10 @@ import { publicToMsal, } from "../utils"; -import { AccessToken } from "@azure/core-auth"; -import { AuthenticationRecord } from "../types"; +import type { AccessToken } from "@azure/core-auth"; +import type { AuthenticationRecord } from "../types"; import { AuthenticationRequiredError } from "../../errors"; -import { CredentialFlowGetTokenOptions } from "../credentials"; +import type { CredentialFlowGetTokenOptions } from "../credentials"; import { getLogLevel } from "@azure/logger"; // We keep a copy of the redirect hash. diff --git a/sdk/identity/identity/src/msal/browserFlows/msalBrowserCommon.ts b/sdk/identity/identity/src/msal/browserFlows/msalBrowserCommon.ts index f272e2582cf2..7df357e1319d 100644 --- a/sdk/identity/identity/src/msal/browserFlows/msalBrowserCommon.ts +++ b/sdk/identity/identity/src/msal/browserFlows/msalBrowserCommon.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as msalBrowser from "@azure/msal-browser"; +import type * as msalBrowser from "@azure/msal-browser"; -import { AccessToken, GetTokenOptions } from "@azure/core-auth"; -import { AuthenticationRecord, MsalResult } from "../types"; +import type { AccessToken, GetTokenOptions } from "@azure/core-auth"; +import type { AuthenticationRecord, MsalResult } from "../types"; import { AuthenticationRequiredError, CredentialUnavailableError } from "../../errors"; -import { CredentialLogger, formatSuccess } from "../../util/logging"; -import { MsalFlow, MsalFlowOptions } from "./flows"; +import type { CredentialLogger } from "../../util/logging"; +import { formatSuccess } from "../../util/logging"; +import type { MsalFlow, MsalFlowOptions } from "./flows"; import { ensureValidMsalToken, getAuthority, getKnownAuthorities, msalToPublic } from "../utils"; import { processMultiTenantRequest, @@ -15,11 +16,11 @@ import { resolveTenantId, } from "../../util/tenantIdUtils"; -import { BrowserLoginStyle } from "../../credentials/interactiveBrowserCredentialOptions"; -import { CredentialFlowGetTokenOptions } from "../credentials"; +import type { BrowserLoginStyle } from "../../credentials/interactiveBrowserCredentialOptions"; +import type { CredentialFlowGetTokenOptions } from "../credentials"; import { DefaultTenantId } from "../../constants"; -import { LogPolicyOptions } from "@azure/core-rest-pipeline"; -import { MultiTenantTokenCredentialOptions } from "../../credentials/multiTenantTokenCredentialOptions"; +import type { LogPolicyOptions } from "@azure/core-rest-pipeline"; +import type { MultiTenantTokenCredentialOptions } from "../../credentials/multiTenantTokenCredentialOptions"; /** * Union of the constructor parameters that all MSAL flow types take. diff --git a/sdk/identity/identity/src/msal/credentials.ts b/sdk/identity/identity/src/msal/credentials.ts index 03b03e1c06a0..7b3eb912d4e9 100644 --- a/sdk/identity/identity/src/msal/credentials.ts +++ b/sdk/identity/identity/src/msal/credentials.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions } from "@azure/core-auth"; -import { AuthenticationRecord } from "./types"; +import type { AccessToken, GetTokenOptions } from "@azure/core-auth"; +import type { AuthenticationRecord } from "./types"; /** * The MSAL clients `getToken` requests can receive a `correlationId` and `disableAutomaticAuthentication`. diff --git a/sdk/identity/identity/src/msal/nodeFlows/msalClient.ts b/sdk/identity/identity/src/msal/nodeFlows/msalClient.ts index 356286c5893f..12dc6e3799f7 100644 --- a/sdk/identity/identity/src/msal/nodeFlows/msalClient.ts +++ b/sdk/identity/identity/src/msal/nodeFlows/msalClient.ts @@ -3,10 +3,12 @@ import * as msal from "@azure/msal-node"; -import { AccessToken, GetTokenOptions } from "@azure/core-auth"; -import { AuthenticationRecord, CertificateParts } from "../types"; -import { CredentialLogger, credentialLogger, formatSuccess } from "../../util/logging"; -import { PluginConfiguration, msalPlugins } from "./msalPlugins"; +import type { AccessToken, GetTokenOptions } from "@azure/core-auth"; +import type { AuthenticationRecord, CertificateParts } from "../types"; +import type { CredentialLogger } from "../../util/logging"; +import { credentialLogger, formatSuccess } from "../../util/logging"; +import type { PluginConfiguration } from "./msalPlugins"; +import { msalPlugins } from "./msalPlugins"; import { defaultLoggerCallback, ensureValidMsalToken, @@ -20,11 +22,11 @@ import { } from "../utils"; import { AuthenticationRequiredError } from "../../errors"; -import { BrokerOptions } from "./brokerOptions"; -import { DeviceCodePromptCallback } from "../../credentials/deviceCodeCredentialOptions"; +import type { BrokerOptions } from "./brokerOptions"; +import type { DeviceCodePromptCallback } from "../../credentials/deviceCodeCredentialOptions"; import { IdentityClient } from "../../client/identityClient"; -import { InteractiveBrowserCredentialNodeOptions } from "../../credentials/interactiveBrowserCredentialOptions"; -import { TokenCachePersistenceOptions } from "./tokenCachePersistenceOptions"; +import type { InteractiveBrowserCredentialNodeOptions } from "../../credentials/interactiveBrowserCredentialOptions"; +import type { TokenCachePersistenceOptions } from "./tokenCachePersistenceOptions"; import { calculateRegionalAuthority } from "../../regionalAuthority"; import { getLogLevel } from "@azure/logger"; import open from "open"; diff --git a/sdk/identity/identity/src/msal/nodeFlows/msalPlugins.ts b/sdk/identity/identity/src/msal/nodeFlows/msalPlugins.ts index 2046f2ddc129..8b989200d8ac 100644 --- a/sdk/identity/identity/src/msal/nodeFlows/msalPlugins.ts +++ b/sdk/identity/identity/src/msal/nodeFlows/msalPlugins.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as msalNode from "@azure/msal-node"; +import type * as msalNode from "@azure/msal-node"; import { CACHE_CAE_SUFFIX, CACHE_NON_CAE_SUFFIX, DEFAULT_TOKEN_CACHE_NAME } from "../../constants"; -import { MsalClientOptions } from "./msalClient"; -import { NativeBrokerPluginControl } from "../../plugins/provider"; -import { TokenCachePersistenceOptions } from "./tokenCachePersistenceOptions"; +import type { MsalClientOptions } from "./msalClient"; +import type { NativeBrokerPluginControl } from "../../plugins/provider"; +import type { TokenCachePersistenceOptions } from "./tokenCachePersistenceOptions"; /** * Configuration for the plugins used by the MSAL node client. diff --git a/sdk/identity/identity/src/msal/utils.ts b/sdk/identity/identity/src/msal/utils.ts index 2a15d810bab0..bf0b632626cd 100644 --- a/sdk/identity/identity/src/msal/utils.ts +++ b/sdk/identity/identity/src/msal/utils.ts @@ -1,15 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthenticationRecord, MsalAccountInfo, MsalToken, ValidMsalToken } from "./types"; +import type { AuthenticationRecord, MsalAccountInfo, MsalToken, ValidMsalToken } from "./types"; import { AuthenticationRequiredError, CredentialUnavailableError } from "../errors"; -import { CredentialLogger, credentialLogger, formatError } from "../util/logging"; +import type { CredentialLogger } from "../util/logging"; +import { credentialLogger, formatError } from "../util/logging"; import { DefaultAuthorityHost, DefaultTenantId } from "../constants"; import { randomUUID as coreRandomUUID, isNode, isNodeLike } from "@azure/core-util"; import { AbortError } from "@azure/abort-controller"; -import { AzureLogLevel } from "@azure/logger"; -import { GetTokenOptions } from "@azure/core-auth"; +import type { AzureLogLevel } from "@azure/logger"; +import type { GetTokenOptions } from "@azure/core-auth"; import { msalCommon } from "./msal"; export interface ILoggerCallback { diff --git a/sdk/identity/identity/src/plugins/consumer.ts b/sdk/identity/identity/src/plugins/consumer.ts index 91f948d48ccc..62dbf23a6f2a 100644 --- a/sdk/identity/identity/src/plugins/consumer.ts +++ b/sdk/identity/identity/src/plugins/consumer.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzurePluginContext, IdentityPlugin } from "./provider"; +import type { AzurePluginContext, IdentityPlugin } from "./provider"; import { msalNodeFlowCacheControl, msalNodeFlowNativeBrokerControl, diff --git a/sdk/identity/identity/src/plugins/provider.ts b/sdk/identity/identity/src/plugins/provider.ts index 2e3d18223d27..7fed077c19e6 100644 --- a/sdk/identity/identity/src/plugins/provider.ts +++ b/sdk/identity/identity/src/plugins/provider.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCachePersistenceOptions } from "../msal/nodeFlows/tokenCachePersistenceOptions"; -import { VSCodeCredentialFinder } from "../credentials/visualStudioCodeCredentialPlugin"; +import type { TokenCachePersistenceOptions } from "../msal/nodeFlows/tokenCachePersistenceOptions"; +import type { VSCodeCredentialFinder } from "../credentials/visualStudioCodeCredentialPlugin"; /** * The type of an Azure Identity plugin, a function accepting a plugin diff --git a/sdk/identity/identity/src/tokenCredentialOptions.ts b/sdk/identity/identity/src/tokenCredentialOptions.ts index 0feda6a602c5..1d6e2b50d803 100644 --- a/sdk/identity/identity/src/tokenCredentialOptions.ts +++ b/sdk/identity/identity/src/tokenCredentialOptions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions } from "@azure/core-client"; -import { LogPolicyOptions } from "@azure/core-rest-pipeline"; +import type { CommonClientOptions } from "@azure/core-client"; +import type { LogPolicyOptions } from "@azure/core-rest-pipeline"; /** * Provides options to configure how the Identity library makes authentication diff --git a/sdk/identity/identity/src/util/logging.ts b/sdk/identity/identity/src/util/logging.ts index fc39f7c1fd5e..793dda5d8a73 100644 --- a/sdk/identity/identity/src/util/logging.ts +++ b/sdk/identity/identity/src/util/logging.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureLogger, createClientLogger } from "@azure/logger"; +import type { AzureLogger } from "@azure/logger"; +import { createClientLogger } from "@azure/logger"; /** * The AzureLogger used for all clients within the identity package diff --git a/sdk/identity/identity/src/util/processMultiTenantRequest.browser.ts b/sdk/identity/identity/src/util/processMultiTenantRequest.browser.ts index 7935b753f5fe..4633914bf412 100644 --- a/sdk/identity/identity/src/util/processMultiTenantRequest.browser.ts +++ b/sdk/identity/identity/src/util/processMultiTenantRequest.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { GetTokenOptions } from "@azure/core-auth"; +import type { GetTokenOptions } from "@azure/core-auth"; function createConfigurationErrorMessage(tenantId: string): string { return `The current credential is not configured to acquire tokens for tenant ${tenantId}. To enable acquiring tokens for this tenant add it to the AdditionallyAllowedTenants on the credential options, or add "*" to AdditionallyAllowedTenants to allow acquiring tokens for any tenant.`; diff --git a/sdk/identity/identity/src/util/processMultiTenantRequest.ts b/sdk/identity/identity/src/util/processMultiTenantRequest.ts index a78573e8723c..0121b8132e02 100644 --- a/sdk/identity/identity/src/util/processMultiTenantRequest.ts +++ b/sdk/identity/identity/src/util/processMultiTenantRequest.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { GetTokenOptions } from "@azure/core-auth"; +import type { GetTokenOptions } from "@azure/core-auth"; import { CredentialUnavailableError } from "../errors"; -import { CredentialLogger } from "./logging"; +import type { CredentialLogger } from "./logging"; function createConfigurationErrorMessage(tenantId: string): string { return `The current credential is not configured to acquire tokens for tenant ${tenantId}. To enable acquiring tokens for this tenant add it to the AdditionallyAllowedTenants on the credential options, or add "*" to AdditionallyAllowedTenants to allow acquiring tokens for any tenant.`; diff --git a/sdk/identity/identity/src/util/scopeUtils.ts b/sdk/identity/identity/src/util/scopeUtils.ts index 024474d3e370..68b0fb69fa6a 100644 --- a/sdk/identity/identity/src/util/scopeUtils.ts +++ b/sdk/identity/identity/src/util/scopeUtils.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CredentialLogger, formatError } from "./logging"; +import type { CredentialLogger } from "./logging"; +import { formatError } from "./logging"; /** * Ensures the scopes value is an array. diff --git a/sdk/identity/identity/src/util/subscriptionUtils.ts b/sdk/identity/identity/src/util/subscriptionUtils.ts index 60c55e112349..1e4bbcaf63ba 100644 --- a/sdk/identity/identity/src/util/subscriptionUtils.ts +++ b/sdk/identity/identity/src/util/subscriptionUtils.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CredentialLogger, formatError } from "./logging"; +import type { CredentialLogger } from "./logging"; +import { formatError } from "./logging"; /** * @internal diff --git a/sdk/identity/identity/src/util/tenantIdUtils.ts b/sdk/identity/identity/src/util/tenantIdUtils.ts index 227fe3b2c975..9c5fe9b4fd8f 100644 --- a/sdk/identity/identity/src/util/tenantIdUtils.ts +++ b/sdk/identity/identity/src/util/tenantIdUtils.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { ALL_TENANTS, DeveloperSignOnClientId } from "../constants"; -import { CredentialLogger, formatError } from "./logging"; +import type { CredentialLogger } from "./logging"; +import { formatError } from "./logging"; export { processMultiTenantRequest } from "./processMultiTenantRequest"; /** diff --git a/sdk/identity/identity/test/authTestUtils.ts b/sdk/identity/identity/test/authTestUtils.ts index 50efb7c910ce..e299951e17c5 100644 --- a/sdk/identity/identity/test/authTestUtils.ts +++ b/sdk/identity/identity/test/authTestUtils.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AuthenticationError, AzureAuthorityHosts } from "../src"; +import type { AuthenticationError } from "../src"; +import { AzureAuthorityHosts } from "../src"; import { assert } from "chai"; /** diff --git a/sdk/identity/identity/test/httpRequests.browser.ts b/sdk/identity/identity/test/httpRequests.browser.ts index 8da591024ad7..a62929679447 100644 --- a/sdk/identity/identity/test/httpRequests.browser.ts +++ b/sdk/identity/identity/test/httpRequests.browser.ts @@ -2,10 +2,15 @@ // Licensed under the MIT License. import * as sinon from "sinon"; -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import { AzureLogLevel, AzureLogger, getLogLevel, setLogLevel } from "@azure/logger"; -import { IdentityTestContextInterface, RawTestResponse, TestResponse } from "./httpRequestsCommon"; -import { RestError } from "@azure/core-rest-pipeline"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AzureLogLevel } from "@azure/logger"; +import { AzureLogger, getLogLevel, setLogLevel } from "@azure/logger"; +import type { + IdentityTestContextInterface, + RawTestResponse, + TestResponse, +} from "./httpRequestsCommon"; +import type { RestError } from "@azure/core-rest-pipeline"; import { getError } from "./authTestUtils"; /** diff --git a/sdk/identity/identity/test/httpRequests.ts b/sdk/identity/identity/test/httpRequests.ts index 8ae6a9030c90..852c53a6cf02 100644 --- a/sdk/identity/identity/test/httpRequests.ts +++ b/sdk/identity/identity/test/httpRequests.ts @@ -3,18 +3,20 @@ import http from "http"; import https from "https"; -import { AccessToken, GetTokenOptions, TokenCredential } from "../src"; -import { AzureLogLevel, AzureLogger, getLogLevel, setLogLevel } from "@azure/logger"; -import { ClientRequest, IncomingHttpHeaders, IncomingMessage } from "http"; -import { +import type { AccessToken, GetTokenOptions, TokenCredential } from "../src"; +import type { AzureLogLevel } from "@azure/logger"; +import { AzureLogger, getLogLevel, setLogLevel } from "@azure/logger"; +import type { ClientRequest, IncomingHttpHeaders, IncomingMessage } from "http"; +import type { IdentityTestContextInterface, RawTestResponse, TestResponse, - createResponse, } from "./httpRequestsCommon"; -import Sinon, * as sinon from "sinon"; +import { createResponse } from "./httpRequestsCommon"; +import type Sinon from "sinon"; +import * as sinon from "sinon"; import { PassThrough } from "stream"; -import { RestError } from "@azure/core-rest-pipeline"; +import type { RestError } from "@azure/core-rest-pipeline"; import { getError } from "./authTestUtils"; import { openIdConfigurationResponse } from "./msalTestUtils"; diff --git a/sdk/identity/identity/test/httpRequestsCommon.ts b/sdk/identity/identity/test/httpRequestsCommon.ts index 2255c934ccb0..b4c37df1ed36 100644 --- a/sdk/identity/identity/test/httpRequestsCommon.ts +++ b/sdk/identity/identity/test/httpRequestsCommon.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as sinon from "sinon"; -import { AccessToken, GetTokenOptions, TokenCredential } from "../src"; -import { AzureLogLevel, AzureLogger } from "@azure/logger"; -import { RawHttpHeaders, RestError } from "@azure/core-rest-pipeline"; +import type * as sinon from "sinon"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "../src"; +import type { AzureLogLevel, AzureLogger } from "@azure/logger"; +import type { RawHttpHeaders, RestError } from "@azure/core-rest-pipeline"; /** * A simple structure representing a response. diff --git a/sdk/identity/identity/test/integration/azureFunctionsTest.spec.ts b/sdk/identity/identity/test/integration/azureFunctionsTest.spec.ts index 3c5e2f90b74b..aee773464bfa 100644 --- a/sdk/identity/identity/test/integration/azureFunctionsTest.spec.ts +++ b/sdk/identity/identity/test/integration/azureFunctionsTest.spec.ts @@ -4,7 +4,7 @@ import { ServiceClient } from "@azure/core-client"; import { createPipelineRequest } from "@azure/core-rest-pipeline"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { isLiveMode } from "@azure-tools/test-recorder"; describe("AzureFunctions Integration test", function () { diff --git a/sdk/identity/identity/test/integration/azureVMUserAssignedTest.spec.ts b/sdk/identity/identity/test/integration/azureVMUserAssignedTest.spec.ts index 965b72670287..4edd4b22377c 100644 --- a/sdk/identity/identity/test/integration/azureVMUserAssignedTest.spec.ts +++ b/sdk/identity/identity/test/integration/azureVMUserAssignedTest.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { isLiveMode } from "@azure-tools/test-recorder"; import { ManagedIdentityCredential } from "../../src"; diff --git a/sdk/identity/identity/test/integration/azureWebAppsTest.spec.ts b/sdk/identity/identity/test/integration/azureWebAppsTest.spec.ts index 9354f1b97a18..0a96096d3fcd 100644 --- a/sdk/identity/identity/test/integration/azureWebAppsTest.spec.ts +++ b/sdk/identity/identity/test/integration/azureWebAppsTest.spec.ts @@ -4,7 +4,7 @@ import { ServiceClient } from "@azure/core-client"; import { createPipelineRequest } from "@azure/core-rest-pipeline"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { isLiveMode } from "@azure-tools/test-recorder"; describe("AzureWebApps Integration test", function () { diff --git a/sdk/identity/identity/test/internal/identityClient.spec.ts b/sdk/identity/identity/test/internal/identityClient.spec.ts index e3ae1adb7258..abb8b7fb5522 100644 --- a/sdk/identity/identity/test/internal/identityClient.spec.ts +++ b/sdk/identity/identity/test/internal/identityClient.spec.ts @@ -1,15 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - IdentityClient, - TokenResponse, - getIdentityClientAuthorityHost, -} from "../../src/client/identityClient"; +import type { TokenResponse } from "../../src/client/identityClient"; +import { IdentityClient, getIdentityClientAuthorityHost } from "../../src/client/identityClient"; import { IdentityTestContext, prepareMSALResponses } from "../httpRequests"; -import { IdentityTestContextInterface, createResponse } from "../httpRequestsCommon"; +import type { IdentityTestContextInterface } from "../httpRequestsCommon"; +import { createResponse } from "../httpRequestsCommon"; import { ClientSecretCredential } from "../../src"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { PlaybackTenantId } from "../msalTestUtils"; import { assert } from "chai"; import { isExpectedError } from "../authTestUtils"; diff --git a/sdk/identity/identity/test/internal/logger.spec.ts b/sdk/identity/identity/test/internal/logger.spec.ts index 424d67ace078..a4a2bee835e4 100644 --- a/sdk/identity/identity/test/internal/logger.spec.ts +++ b/sdk/identity/identity/test/internal/logger.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "../../src"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "../../src"; +import type { CredentialLogger } from "../../src/util/logging"; import { - CredentialLogger, credentialLogger, credentialLoggerInstance, formatError, diff --git a/sdk/identity/identity/test/internal/node/azureApplicationCredential.spec.ts b/sdk/identity/identity/test/internal/node/azureApplicationCredential.spec.ts index 25f19baf3f28..3cab08141d7a 100644 --- a/sdk/identity/identity/test/internal/node/azureApplicationCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/azureApplicationCredential.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { IdentityTestContextInterface, createResponse } from "../../httpRequestsCommon"; +import type { IdentityTestContextInterface } from "../../httpRequestsCommon"; +import { createResponse } from "../../httpRequestsCommon"; import { AzureApplicationCredential } from "../../../src/credentials/azureApplicationCredential"; import { IdentityTestContext } from "../../httpRequests"; diff --git a/sdk/identity/identity/test/internal/node/azureCliCredential.spec.ts b/sdk/identity/identity/test/internal/node/azureCliCredential.spec.ts index 2d5bdf290f63..11f800215769 100644 --- a/sdk/identity/identity/test/internal/node/azureCliCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/azureCliCredential.spec.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import Sinon, { createSandbox } from "sinon"; +import type Sinon from "sinon"; +import { createSandbox } from "sinon"; import { AzureCliCredential } from "../../../src/credentials/azureCliCredential"; -import { GetTokenOptions } from "@azure/core-auth"; +import type { GetTokenOptions } from "@azure/core-auth"; import { assert } from "@azure-tools/test-utils"; import child_process from "child_process"; diff --git a/sdk/identity/identity/test/internal/node/azureDeveloperCliCredential.spec.ts b/sdk/identity/identity/test/internal/node/azureDeveloperCliCredential.spec.ts index bc64068020b7..04b1ce0ce00d 100644 --- a/sdk/identity/identity/test/internal/node/azureDeveloperCliCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/azureDeveloperCliCredential.spec.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import Sinon, { createSandbox } from "sinon"; +import type Sinon from "sinon"; +import { createSandbox } from "sinon"; import { AzureDeveloperCliCredential } from "../../../src/credentials/azureDeveloperCliCredential"; -import { GetTokenOptions } from "@azure/core-auth"; +import type { GetTokenOptions } from "@azure/core-auth"; import { assert } from "@azure-tools/test-utils"; import child_process from "child_process"; diff --git a/sdk/identity/identity/test/internal/node/azurePipelinesCredential.spec.ts b/sdk/identity/identity/test/internal/node/azurePipelinesCredential.spec.ts index 52b59c245b75..4399f8315d9e 100644 --- a/sdk/identity/identity/test/internal/node/azurePipelinesCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/azurePipelinesCredential.spec.ts @@ -1,11 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - PipelineResponse, - createHttpHeaders, - createPipelineRequest, -} from "@azure/core-rest-pipeline"; +import type { PipelineResponse } from "@azure/core-rest-pipeline"; +import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; import { handleOidcResponse } from "../../../src/credentials/azurePipelinesCredential"; import { assert } from "@azure-tools/test-utils"; diff --git a/sdk/identity/identity/test/internal/node/azurePowerShellCredential.spec.ts b/sdk/identity/identity/test/internal/node/azurePowerShellCredential.spec.ts index b4241d75e160..c511f9caf95d 100644 --- a/sdk/identity/identity/test/internal/node/azurePowerShellCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/azurePowerShellCredential.spec.ts @@ -10,7 +10,7 @@ import { powerShellPublicErrorMessages, } from "../../../src/credentials/azurePowerShellCredential"; import { AzurePowerShellCredential } from "../../../src"; -import { GetTokenOptions } from "@azure/core-auth"; +import type { GetTokenOptions } from "@azure/core-auth"; import Sinon from "sinon"; import { assert } from "@azure-tools/test-utils"; import { commandStack } from "../../../src/credentials/azurePowerShellCredential"; diff --git a/sdk/identity/identity/test/internal/node/chainedTokenCredential.spec.ts b/sdk/identity/identity/test/internal/node/chainedTokenCredential.spec.ts index d76d987e1319..bfa962418402 100644 --- a/sdk/identity/identity/test/internal/node/chainedTokenCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/chainedTokenCredential.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, ChainedTokenCredential, TokenCredential } from "../../../src"; +import type { AccessToken, TokenCredential } from "../../../src"; +import { ChainedTokenCredential } from "../../../src"; import Sinon from "sinon"; import { assert } from "chai"; import { logger as chainedTokenCredentialLogger } from "../../../src/credentials/chainedTokenCredential"; diff --git a/sdk/identity/identity/test/internal/node/clientAssertionCredential.spec.ts b/sdk/identity/identity/test/internal/node/clientAssertionCredential.spec.ts index f3a82ed368ba..3025edcc297e 100644 --- a/sdk/identity/identity/test/internal/node/clientAssertionCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/clientAssertionCredential.spec.ts @@ -3,11 +3,12 @@ import * as path from "path"; -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; import { ClientAssertionCredential } from "../../../src"; import { ConfidentialClientApplication } from "@azure/msal-node"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import type Sinon from "sinon"; import { assert } from "chai"; import { createJWTTokenFromCertificate } from "../../public/node/utils/utils"; diff --git a/sdk/identity/identity/test/internal/node/clientCertificateCredential.spec.ts b/sdk/identity/identity/test/internal/node/clientCertificateCredential.spec.ts index 29123eae319f..daeb43b65a93 100644 --- a/sdk/identity/identity/test/internal/node/clientCertificateCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/clientCertificateCredential.spec.ts @@ -3,11 +3,13 @@ import * as path from "path"; -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { ClientCertificateCredential } from "../../../src"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { assert } from "chai"; import { parseCertificate } from "../../../src/credentials/clientCertificateCredential"; diff --git a/sdk/identity/identity/test/internal/node/clientSecretCredential.spec.ts b/sdk/identity/identity/test/internal/node/clientSecretCredential.spec.ts index 300ec9cea9ba..f8dcc1a382c3 100644 --- a/sdk/identity/identity/test/internal/node/clientSecretCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/clientSecretCredential.spec.ts @@ -4,13 +4,15 @@ /* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ import { AzureLogger, setLogLevel } from "@azure/logger"; -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, delay, env, isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { delay, env, isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; import { ClientSecretCredential } from "../../../src"; import { ConfidentialClientApplication } from "@azure/msal-node"; -import { Context } from "mocha"; -import { GetTokenOptions } from "@azure/core-auth"; +import type { Context } from "mocha"; +import type { GetTokenOptions } from "@azure/core-auth"; import Sinon from "sinon"; import { assert } from "chai"; diff --git a/sdk/identity/identity/test/internal/node/deviceCodeCredential.spec.ts b/sdk/identity/identity/test/internal/node/deviceCodeCredential.spec.ts index 5bbf7c12b725..6c3f3d474b29 100644 --- a/sdk/identity/identity/test/internal/node/deviceCodeCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/deviceCodeCredential.spec.ts @@ -1,12 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, env, isLiveMode } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isLiveMode } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; import { DeviceCodeCredential } from "../../../src"; import { PublicClientApplication } from "@azure/msal-node"; -import Sinon from "sinon"; +import type Sinon from "sinon"; import { assert } from "chai"; describe("DeviceCodeCredential (internal)", function () { diff --git a/sdk/identity/identity/test/internal/node/interactiveBrowserCredential.spec.ts b/sdk/identity/identity/test/internal/node/interactiveBrowserCredential.spec.ts index 1436be9b0415..3df94e947b24 100644 --- a/sdk/identity/identity/test/internal/node/interactiveBrowserCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/interactiveBrowserCredential.spec.ts @@ -3,17 +3,17 @@ /* eslint-disable @typescript-eslint/no-namespace */ -import { - InteractiveBrowserCredential, - InteractiveBrowserCredentialNodeOptions, -} from "../../../src"; -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { InteractiveBrowserCredentialNodeOptions } from "../../../src"; +import { InteractiveBrowserCredential } from "../../../src"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; -import Sinon from "sinon"; +import type { Context } from "mocha"; +import type Sinon from "sinon"; import { assert } from "chai"; -import http from "http"; +import type http from "http"; import { interactiveBrowserMockable } from "../../../src/msal/nodeFlows/msalClient"; declare global { diff --git a/sdk/identity/identity/test/internal/node/legacyMsiProvider.spec.ts b/sdk/identity/identity/test/internal/node/legacyMsiProvider.spec.ts index 913ce96d5310..a22b5b88be5b 100644 --- a/sdk/identity/identity/test/internal/node/legacyMsiProvider.spec.ts +++ b/sdk/identity/identity/test/internal/node/legacyMsiProvider.spec.ts @@ -4,15 +4,16 @@ import * as arcMsi from "../../../src/credentials/managedIdentityCredential/arcMsi"; import { AzureLogger, setLogLevel } from "@azure/logger"; -import { IdentityTestContextInterface, createResponse } from "../../httpRequestsCommon"; +import type { IdentityTestContextInterface } from "../../httpRequestsCommon"; +import { createResponse } from "../../httpRequestsCommon"; import { imdsApiVersion, imdsEndpointPath, imdsHost, } from "../../../src/credentials/managedIdentityCredential/constants"; -import { Context } from "mocha"; -import { GetTokenOptions } from "@azure/core-auth"; +import type { Context } from "mocha"; +import type { GetTokenOptions } from "@azure/core-auth"; import { IdentityTestContext } from "../../httpRequests"; import { LegacyMsiProvider } from "../../../src/credentials/managedIdentityCredential/legacyMsiProvider"; import { RestError } from "@azure/core-rest-pipeline"; diff --git a/sdk/identity/identity/test/internal/node/managedIdentityCredential/arcMsi.spec.ts b/sdk/identity/identity/test/internal/node/managedIdentityCredential/arcMsi.spec.ts index 622d3c4edef0..1a8c045c4343 100644 --- a/sdk/identity/identity/test/internal/node/managedIdentityCredential/arcMsi.spec.ts +++ b/sdk/identity/identity/test/internal/node/managedIdentityCredential/arcMsi.spec.ts @@ -6,7 +6,7 @@ import { validateKeyFile, } from "../../../../src/credentials/managedIdentityCredential/arcMsi"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import Sinon from "sinon"; import { assert } from "chai"; import fs from "node:fs"; diff --git a/sdk/identity/identity/test/internal/node/managedIdentityCredential/imdsRetryPolicy.spec.ts b/sdk/identity/identity/test/internal/node/managedIdentityCredential/imdsRetryPolicy.spec.ts index c5b44aaffd8e..cf76af21c7b3 100644 --- a/sdk/identity/identity/test/internal/node/managedIdentityCredential/imdsRetryPolicy.spec.ts +++ b/sdk/identity/identity/test/internal/node/managedIdentityCredential/imdsRetryPolicy.spec.ts @@ -1,14 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - PipelineRequest, - RestError, - SendRequest, - createHttpHeaders, -} from "@azure/core-rest-pipeline"; +import type { PipelineRequest, SendRequest } from "@azure/core-rest-pipeline"; +import { RestError, createHttpHeaders } from "@azure/core-rest-pipeline"; -import { MSIConfiguration } from "../../../../src/credentials/managedIdentityCredential/models"; +import type { MSIConfiguration } from "../../../../src/credentials/managedIdentityCredential/models"; import { assert } from "@azure-tools/test-utils"; import { imdsRetryPolicy } from "../../../../src/credentials/managedIdentityCredential/imdsRetryPolicy"; diff --git a/sdk/identity/identity/test/internal/node/managedIdentityCredential/msalMsiProvider.spec.ts b/sdk/identity/identity/test/internal/node/managedIdentityCredential/msalMsiProvider.spec.ts index b5be62d84e60..584d0c57e972 100644 --- a/sdk/identity/identity/test/internal/node/managedIdentityCredential/msalMsiProvider.spec.ts +++ b/sdk/identity/identity/test/internal/node/managedIdentityCredential/msalMsiProvider.spec.ts @@ -3,13 +3,14 @@ import Sinon from "sinon"; import { assert } from "@azure-tools/test-utils"; -import { AuthError, AuthenticationResult, ManagedIdentityApplication } from "@azure/msal-node"; +import type { AuthenticationResult } from "@azure/msal-node"; +import { AuthError, ManagedIdentityApplication } from "@azure/msal-node"; import { MsalMsiProvider } from "../../../../src/credentials/managedIdentityCredential/msalMsiProvider"; import { tokenExchangeMsi } from "../../../../src/credentials/managedIdentityCredential/tokenExchangeMsi"; import { imdsMsi } from "../../../../src/credentials/managedIdentityCredential/imdsMsi"; import { RestError } from "@azure/core-rest-pipeline"; import { AuthenticationRequiredError, CredentialUnavailableError } from "../../../../src/errors"; -import { AccessToken } from "@azure/core-auth"; +import type { AccessToken } from "@azure/core-auth"; describe("ManagedIdentityCredential (MSAL)", function () { let acquireTokenStub: Sinon.SinonStub; diff --git a/sdk/identity/identity/test/internal/node/msalClient.spec.ts b/sdk/identity/identity/test/internal/node/msalClient.spec.ts index 409db1afaa10..6856450a0e6f 100644 --- a/sdk/identity/identity/test/internal/node/msalClient.spec.ts +++ b/sdk/identity/identity/test/internal/node/msalClient.spec.ts @@ -3,18 +3,20 @@ import * as msalClient from "../../../src/msal/nodeFlows/msalClient"; +import type { AuthenticationResult } from "@azure/msal-node"; import { - AuthenticationResult, ClientApplication, ConfidentialClientApplication, PublicClientApplication, } from "@azure/msal-node"; -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, env, isLiveMode } from "@azure-tools/test-recorder"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isLiveMode } from "@azure-tools/test-recorder"; import { AbortError } from "@azure/abort-controller"; import { AuthenticationRequiredError } from "../../../src/errors"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { DeveloperSignOnClientId } from "../../../src/constants"; import { IdentityClient } from "../../../src/client/identityClient"; import { assert } from "@azure-tools/test-utils"; diff --git a/sdk/identity/identity/test/internal/node/msalPlugins.spec.ts b/sdk/identity/identity/test/internal/node/msalPlugins.spec.ts index 2069369430f9..ad07718056b6 100644 --- a/sdk/identity/identity/test/internal/node/msalPlugins.spec.ts +++ b/sdk/identity/identity/test/internal/node/msalPlugins.spec.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ICachePlugin, INativeBrokerPlugin } from "@azure/msal-node"; +import type { ICachePlugin, INativeBrokerPlugin } from "@azure/msal-node"; +import type { PluginConfiguration } from "../../../src/msal/nodeFlows/msalPlugins"; import { - PluginConfiguration, msalNodeFlowCacheControl, msalNodeFlowNativeBrokerControl, msalPlugins, } from "../../../src/msal/nodeFlows/msalPlugins"; -import { MsalClientOptions } from "../../../src/msal/nodeFlows/msalClient"; +import type { MsalClientOptions } from "../../../src/msal/nodeFlows/msalClient"; import Sinon from "sinon"; import { assert } from "@azure-tools/test-utils"; diff --git a/sdk/identity/identity/test/internal/node/onBehalfOfCredential.spec.ts b/sdk/identity/identity/test/internal/node/onBehalfOfCredential.spec.ts index 281475b40bac..b54cde3752b6 100644 --- a/sdk/identity/identity/test/internal/node/onBehalfOfCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/onBehalfOfCredential.spec.ts @@ -3,7 +3,8 @@ import * as path from "path"; import { IdentityTestContext, prepareMSALResponses } from "../../httpRequests"; -import { IdentityTestContextInterface, createResponse } from "../../httpRequestsCommon"; +import type { IdentityTestContextInterface } from "../../httpRequestsCommon"; +import { createResponse } from "../../httpRequestsCommon"; import { OnBehalfOfCredential } from "../../../src"; import { assert } from "chai"; import { isNode } from "@azure/core-util"; diff --git a/sdk/identity/identity/test/internal/node/usernamePasswordCredential.spec.ts b/sdk/identity/identity/test/internal/node/usernamePasswordCredential.spec.ts index 79f946f6f801..5ed73fa33a13 100644 --- a/sdk/identity/identity/test/internal/node/usernamePasswordCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/usernamePasswordCredential.spec.ts @@ -4,10 +4,12 @@ /* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ import { AzureLogger, setLogLevel } from "@azure/logger"; -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { PublicClientApplication } from "@azure/msal-node"; import Sinon from "sinon"; import { UsernamePasswordCredential } from "../../../src"; diff --git a/sdk/identity/identity/test/internal/node/workloadIdentityCredential.spec.ts b/sdk/identity/identity/test/internal/node/workloadIdentityCredential.spec.ts index 2191579212ef..1349570600ca 100644 --- a/sdk/identity/identity/test/internal/node/workloadIdentityCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/workloadIdentityCredential.spec.ts @@ -3,17 +3,17 @@ /* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ +import type { AccessToken, WorkloadIdentityCredentialOptions } from "../../../src"; import { - AccessToken, DefaultAzureCredential, ManagedIdentityCredential, WorkloadIdentityCredential, - WorkloadIdentityCredentialOptions, } from "../../../src"; -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { AuthenticationResult } from "@azure/msal-node"; -import { Context } from "mocha"; +import type { AuthenticationResult } from "@azure/msal-node"; +import type { Context } from "mocha"; import { assert } from "@azure-tools/test-utils"; import { env } from "@azure-tools/test-recorder"; import path from "path"; diff --git a/sdk/identity/identity/test/node/msalNodeTestSetup.ts b/sdk/identity/identity/test/node/msalNodeTestSetup.ts index fc91b6e138af..83289c049898 100644 --- a/sdk/identity/identity/test/node/msalNodeTestSetup.ts +++ b/sdk/identity/identity/test/node/msalNodeTestSetup.ts @@ -1,12 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - AuthenticationResult, - ConfidentialClientApplication, - PublicClientApplication, -} from "@azure/msal-node"; -import Sinon, { createSandbox } from "sinon"; +import type { AuthenticationResult } from "@azure/msal-node"; +import { ConfidentialClientApplication, PublicClientApplication } from "@azure/msal-node"; +import type Sinon from "sinon"; +import { createSandbox } from "sinon"; import { PlaybackTenantId } from "../msalTestUtils"; import { Recorder } from "@azure-tools/test-recorder"; diff --git a/sdk/identity/identity/test/public/browser/clientSecretCredential.spec.ts b/sdk/identity/identity/test/public/browser/clientSecretCredential.spec.ts index cbfa20f8cd37..f2f242eab5d4 100644 --- a/sdk/identity/identity/test/public/browser/clientSecretCredential.spec.ts +++ b/sdk/identity/identity/test/public/browser/clientSecretCredential.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { IdentityTestContextInterface, createResponse } from "../../httpRequestsCommon"; +import type { IdentityTestContextInterface } from "../../httpRequestsCommon"; +import { createResponse } from "../../httpRequestsCommon"; import { ClientSecretCredential } from "../../../src"; import { IdentityTestContext } from "../../httpRequests"; import { assertClientCredentials } from "../../authTestUtils"; diff --git a/sdk/identity/identity/test/public/browser/usernamePasswordCredential.spec.ts b/sdk/identity/identity/test/public/browser/usernamePasswordCredential.spec.ts index 8fac9dbb4715..cb18fade2940 100644 --- a/sdk/identity/identity/test/public/browser/usernamePasswordCredential.spec.ts +++ b/sdk/identity/identity/test/public/browser/usernamePasswordCredential.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { IdentityTestContextInterface, createResponse } from "../../httpRequestsCommon"; +import type { IdentityTestContextInterface } from "../../httpRequestsCommon"; +import { createResponse } from "../../httpRequestsCommon"; import { IdentityTestContext } from "../../httpRequests"; import { UsernamePasswordCredential } from "../../../src"; import { assert } from "chai"; diff --git a/sdk/identity/identity/test/public/chainedTokenCredential.spec.ts b/sdk/identity/identity/test/public/chainedTokenCredential.spec.ts index f74f44fecc14..2e28eb3c21a1 100644 --- a/sdk/identity/identity/test/public/chainedTokenCredential.spec.ts +++ b/sdk/identity/identity/test/public/chainedTokenCredential.spec.ts @@ -1,13 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { AccessToken, AggregateAuthenticationError, TokenCredential } from "../../src"; import { - AccessToken, - AggregateAuthenticationError, AuthenticationRequiredError, ChainedTokenCredential, CredentialUnavailableError, - TokenCredential, } from "../../src"; import { assert } from "chai"; import { getError } from "../authTestUtils"; diff --git a/sdk/identity/identity/test/public/node/authorityValidation.spec.ts b/sdk/identity/identity/test/public/node/authorityValidation.spec.ts index 566f50d6d2f0..957336eb717c 100644 --- a/sdk/identity/identity/test/public/node/authorityValidation.spec.ts +++ b/sdk/identity/identity/test/public/node/authorityValidation.spec.ts @@ -1,10 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { ClientSecretCredential } from "../../../src"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { assert } from "@azure-tools/test-utils"; describe("AuthorityValidation", function () { diff --git a/sdk/identity/identity/test/public/node/azureApplicationCredential.spec.ts b/sdk/identity/identity/test/public/node/azureApplicationCredential.spec.ts index 8b59ee9e92c4..8002d2b399f6 100644 --- a/sdk/identity/identity/test/public/node/azureApplicationCredential.spec.ts +++ b/sdk/identity/identity/test/public/node/azureApplicationCredential.spec.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Context } from "mocha"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Context } from "mocha"; import { assert } from "@azure-tools/test-utils"; import { getError } from "../../authTestUtils"; diff --git a/sdk/identity/identity/test/public/node/caeARM.spec.ts b/sdk/identity/identity/test/public/node/caeARM.spec.ts index c09f58e041ab..f915b4ee8bb9 100644 --- a/sdk/identity/identity/test/public/node/caeARM.spec.ts +++ b/sdk/identity/identity/test/public/node/caeARM.spec.ts @@ -3,21 +3,19 @@ /* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ -import { - AccessToken, - DeviceCodeCredential, - TokenCredential, - UsernamePasswordCredential, -} from "../../../src"; -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, delay, env } from "@azure-tools/test-recorder"; +import type { AccessToken, TokenCredential } from "../../../src"; +import { DeviceCodeCredential, UsernamePasswordCredential } from "../../../src"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { delay, env } from "@azure-tools/test-recorder"; import { bearerTokenAuthenticationPolicy, createDefaultHttpClient, createEmptyPipeline, createPipelineRequest, } from "@azure/core-rest-pipeline"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { DeveloperSignOnClientId } from "../../../src/constants"; import { IdentityClient } from "../../../src/client/identityClient"; import { assert } from "chai"; diff --git a/sdk/identity/identity/test/public/node/clientCertificateCredential.spec.ts b/sdk/identity/identity/test/public/node/clientCertificateCredential.spec.ts index cc6b9f52817c..e143b0bcefdb 100644 --- a/sdk/identity/identity/test/public/node/clientCertificateCredential.spec.ts +++ b/sdk/identity/identity/test/public/node/clientCertificateCredential.spec.ts @@ -5,12 +5,14 @@ import * as path from "path"; -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, delay, env, isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { delay, env, isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; import { ClientCertificateCredential } from "../../../src"; -import { Context } from "mocha"; -import { PipelineResponse } from "@azure/core-rest-pipeline"; +import type { Context } from "mocha"; +import type { PipelineResponse } from "@azure/core-rest-pipeline"; import { assert } from "@azure-tools/test-utils"; import fs from "fs"; diff --git a/sdk/identity/identity/test/public/node/clientSecretCredential.spec.ts b/sdk/identity/identity/test/public/node/clientSecretCredential.spec.ts index 35478030f0e4..31c642a69d3f 100644 --- a/sdk/identity/identity/test/public/node/clientSecretCredential.spec.ts +++ b/sdk/identity/identity/test/public/node/clientSecretCredential.spec.ts @@ -3,11 +3,13 @@ /* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, delay, env, isRecordMode } from "@azure-tools/test-recorder"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { delay, env, isRecordMode } from "@azure-tools/test-recorder"; import { ClientSecretCredential } from "../../../src"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { assert } from "@azure-tools/test-utils"; describe("ClientSecretCredential", function () { diff --git a/sdk/identity/identity/test/public/node/deviceCodeCredential.spec.ts b/sdk/identity/identity/test/public/node/deviceCodeCredential.spec.ts index 78e8d180cc68..6f822da29f0c 100644 --- a/sdk/identity/identity/test/public/node/deviceCodeCredential.spec.ts +++ b/sdk/identity/identity/test/public/node/deviceCodeCredential.spec.ts @@ -3,11 +3,14 @@ /* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ -import { AbortError } from "@azure/abort-controller"; -import { DeviceCodeCredential, DeviceCodePromptCallback } from "../../../src"; -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, delay, env, isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { AbortError } from "@azure/abort-controller"; +import type { DeviceCodePromptCallback } from "../../../src"; +import { DeviceCodeCredential } from "../../../src"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { delay, env, isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; import { assert } from "@azure-tools/test-utils"; // https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/identity/Azure.Identity/src/Constants.cs#L9 diff --git a/sdk/identity/identity/test/public/node/environmentCredential.spec.ts b/sdk/identity/identity/test/public/node/environmentCredential.spec.ts index be3613158451..cab35b0efb90 100644 --- a/sdk/identity/identity/test/public/node/environmentCredential.spec.ts +++ b/sdk/identity/identity/test/public/node/environmentCredential.spec.ts @@ -4,9 +4,11 @@ /* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ import { EnvironmentCredential, UsernamePasswordCredential } from "../../../src"; -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, isLiveMode } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isLiveMode } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; import { assert } from "@azure-tools/test-utils"; import { getError } from "../../authTestUtils"; import sinon from "sinon"; diff --git a/sdk/identity/identity/test/public/node/multiTenantAuthentication.spec.ts b/sdk/identity/identity/test/public/node/multiTenantAuthentication.spec.ts index 70b66c045144..548b8ecfcf3d 100644 --- a/sdk/identity/identity/test/public/node/multiTenantAuthentication.spec.ts +++ b/sdk/identity/identity/test/public/node/multiTenantAuthentication.spec.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; import { ClientSecretCredential } from "../../../src/credentials/clientSecretCredential"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { IdentityClient } from "../../../src/client/identityClient"; import { assert } from "@azure-tools/test-utils"; diff --git a/sdk/identity/identity/test/public/node/tokenProvider.spec.ts b/sdk/identity/identity/test/public/node/tokenProvider.spec.ts index 6a98bc7925a4..8b96dd0d5754 100644 --- a/sdk/identity/identity/test/public/node/tokenProvider.spec.ts +++ b/sdk/identity/identity/test/public/node/tokenProvider.spec.ts @@ -2,9 +2,11 @@ // Licensed under the MIT License. import { DefaultAzureCredential, getBearerTokenProvider } from "../../../src"; -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, delay, isPlaybackMode } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { delay, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; import { assert } from "@azure-tools/test-utils"; describe("getBearerTokenProvider", function () { diff --git a/sdk/identity/identity/test/public/node/usernamePasswordCredential.spec.ts b/sdk/identity/identity/test/public/node/usernamePasswordCredential.spec.ts index 0ef0f860dfa3..33f904a8cea1 100644 --- a/sdk/identity/identity/test/public/node/usernamePasswordCredential.spec.ts +++ b/sdk/identity/identity/test/public/node/usernamePasswordCredential.spec.ts @@ -3,10 +3,12 @@ /* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, delay } from "@azure-tools/test-recorder"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { delay } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { UsernamePasswordCredential } from "../../../src"; import { assert } from "@azure-tools/test-utils"; import { getUsernamePasswordStaticResources } from "../../msalTestUtils"; diff --git a/sdk/identity/identity/test/public/node/workloadIdentityCredential.spec.ts b/sdk/identity/identity/test/public/node/workloadIdentityCredential.spec.ts index e9ac0462e5a2..6317a5460403 100644 --- a/sdk/identity/identity/test/public/node/workloadIdentityCredential.spec.ts +++ b/sdk/identity/identity/test/public/node/workloadIdentityCredential.spec.ts @@ -5,17 +5,19 @@ import path, { join } from "path"; import { tmpdir } from "os"; -import { MsalTestCleanup, msalNodeTestSetup } from "../../node/msalNodeTestSetup"; -import { Recorder, env } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { MsalTestCleanup } from "../../node/msalNodeTestSetup"; +import { msalNodeTestSetup } from "../../node/msalNodeTestSetup"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; import { assert } from "@azure-tools/test-utils"; import { createJWTTokenFromCertificate } from "./utils/utils"; import { mkdtempSync, rmdirSync, unlinkSync, writeFileSync } from "fs"; +import type { WorkloadIdentityCredentialOptions } from "../../../src"; import { DefaultAzureCredential, ManagedIdentityCredential, WorkloadIdentityCredential, - WorkloadIdentityCredentialOptions, } from "../../../src"; describe.skip("WorkloadIdentityCredential", function () { diff --git a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/review/opentelemetry-instrumentation-azure-sdk.api.md b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/review/opentelemetry-instrumentation-azure-sdk.api.md index 5fb3fca716e9..624967bd2db8 100644 --- a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/review/opentelemetry-instrumentation-azure-sdk.api.md +++ b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/review/opentelemetry-instrumentation-azure-sdk.api.md @@ -5,10 +5,10 @@ ```ts import { AzureLogger } from '@azure/logger'; -import { Instrumentation } from '@opentelemetry/instrumentation'; +import type { Instrumentation } from '@opentelemetry/instrumentation'; import { InstrumentationBase } from '@opentelemetry/instrumentation'; -import { InstrumentationConfig } from '@opentelemetry/instrumentation'; -import { InstrumentationModuleDefinition } from '@opentelemetry/instrumentation'; +import type { InstrumentationConfig } from '@opentelemetry/instrumentation'; +import type { InstrumentationModuleDefinition } from '@opentelemetry/instrumentation'; // @public export class AzureSdkInstrumentation extends InstrumentationBase { diff --git a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/instrumentation-browser.mts b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/instrumentation-browser.mts index e0794aa17df6..1514b25e0e94 100644 --- a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/instrumentation-browser.mts +++ b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/instrumentation-browser.mts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { Instrumentation, - InstrumentationBase, - InstrumentationConfig, + InstrumentationConfig} from "@opentelemetry/instrumentation"; +import { + InstrumentationBase } from "@opentelemetry/instrumentation"; import { OpenTelemetryInstrumenter } from "./instrumenter.js"; diff --git a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/instrumentation.ts b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/instrumentation.ts index ea5257817505..a38df324183e 100644 --- a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/instrumentation.ts +++ b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/instrumentation.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { Instrumentation, - InstrumentationBase, InstrumentationConfig, InstrumentationModuleDefinition, +} from "@opentelemetry/instrumentation"; +import { + InstrumentationBase, InstrumentationNodeModuleDefinition, } from "@opentelemetry/instrumentation"; diff --git a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/instrumenter.ts b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/instrumenter.ts index f5603a9b9cee..2298df1dc179 100644 --- a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/instrumenter.ts +++ b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/instrumenter.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { Span } from "@opentelemetry/api"; import { INVALID_SPAN_CONTEXT, - Span, context, defaultTextMapGetter, defaultTextMapSetter, trace, } from "@opentelemetry/api"; -import { +import type { Instrumenter, InstrumenterSpanOptions, TracingContext, diff --git a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/spanWrapper.ts b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/spanWrapper.ts index 370d66f93ec8..909d97aa8235 100644 --- a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/spanWrapper.ts +++ b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/spanWrapper.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Span, SpanStatusCode } from "@opentelemetry/api"; -import { SpanStatus, TracingSpan, AddEventOptions } from "@azure/core-tracing"; +import type { Span } from "@opentelemetry/api"; +import { SpanStatusCode } from "@opentelemetry/api"; +import type { SpanStatus, TracingSpan, AddEventOptions } from "@azure/core-tracing"; import { isAttributeValue, sanitizeAttributes } from "@opentelemetry/core"; export class OpenTelemetrySpanWrapper implements TracingSpan { diff --git a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/transformations.ts b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/transformations.ts index 4e1b758d9773..532244a210f1 100644 --- a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/transformations.ts +++ b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/src/transformations.ts @@ -1,8 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { InstrumenterSpanOptions, TracingSpanKind, TracingSpanLink } from "@azure/core-tracing"; -import { Link, SpanKind, SpanOptions, trace } from "@opentelemetry/api"; +import type { + InstrumenterSpanOptions, + TracingSpanKind, + TracingSpanLink, +} from "@azure/core-tracing"; +import type { Link, SpanOptions } from "@opentelemetry/api"; +import { SpanKind, trace } from "@opentelemetry/api"; import { sanitizeAttributes } from "@opentelemetry/core"; /** diff --git a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/internal/node/configuration.spec.ts b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/internal/node/configuration.spec.ts index 6015dce4530f..4d7d1f8e9bc4 100644 --- a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/internal/node/configuration.spec.ts +++ b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/internal/node/configuration.spec.ts @@ -2,11 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert } from "vitest"; -import { - KnownEnvironmentKey, - envVarToBoolean, - environmentCache, -} from "../../../src/configuration.js"; +import type { KnownEnvironmentKey } from "../../../src/configuration.js"; +import { envVarToBoolean, environmentCache } from "../../../src/configuration.js"; describe("#envVarToBoolean", () => { const key = "FOO" as KnownEnvironmentKey; diff --git a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/public/instrumenter.spec.ts b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/public/instrumenter.spec.ts index 2a7aabe37171..bb76918a3c7e 100644 --- a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/public/instrumenter.spec.ts +++ b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/public/instrumenter.spec.ts @@ -4,9 +4,9 @@ import { describe, it, assert, expect, beforeEach, afterEach, vi } from "vitest"; import { OpenTelemetryInstrumenter, propagator } from "../../src/instrumenter.js"; import { SpanKind, context, trace } from "@opentelemetry/api"; -import { TracingSpan, TracingSpanKind } from "@azure/core-tracing"; -import { OpenTelemetrySpanWrapper } from "../../src/spanWrapper.js"; -import { Span } from "@opentelemetry/sdk-trace-base"; +import type { TracingSpan, TracingSpanKind } from "@azure/core-tracing"; +import type { OpenTelemetrySpanWrapper } from "../../src/spanWrapper.js"; +import type { Span } from "@opentelemetry/sdk-trace-base"; import { environmentCache } from "../../src/configuration.js"; import { inMemoryExporter } from "./util/setup.js"; import { isTracingSuppressed } from "@opentelemetry/core"; diff --git a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/public/util/testClient.ts b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/public/util/testClient.ts index aac881d83bf3..66855c97138f 100644 --- a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/public/util/testClient.ts +++ b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/public/util/testClient.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationTracingOptions, TracingClient, createTracingClient } from "@azure/core-tracing"; +import type { OperationTracingOptions, TracingClient } from "@azure/core-tracing"; +import { createTracingClient } from "@azure/core-tracing"; +import type { Pipeline, PipelineResponse } from "@azure/core-rest-pipeline"; import { - Pipeline, - PipelineResponse, createDefaultHttpClient, createHttpHeaders, createPipelineFromOptions, diff --git a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/public/util/testHelpers.ts b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/public/util/testHelpers.ts index d8c2200f8201..32c74f2c9db8 100644 --- a/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/public/util/testHelpers.ts +++ b/sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/test/public/util/testHelpers.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { assert } from "vitest"; -import { OpenTelemetrySpanWrapper } from "../../../src/spanWrapper.js"; -import { ReadableSpan } from "@opentelemetry/sdk-trace-base"; +import type { OpenTelemetrySpanWrapper } from "../../../src/spanWrapper.js"; +import type { ReadableSpan } from "@opentelemetry/sdk-trace-base"; import { inMemoryExporter } from "./setup.js"; export function getExportedSpan(span: OpenTelemetrySpanWrapper): ReadableSpan { diff --git a/sdk/iot/iot-modelsrepository/review/iot-modelsrepository.api.md b/sdk/iot/iot-modelsrepository/review/iot-modelsrepository.api.md index 1052c854ce8e..a5b6440fc721 100644 --- a/sdk/iot/iot-modelsrepository/review/iot-modelsrepository.api.md +++ b/sdk/iot/iot-modelsrepository/review/iot-modelsrepository.api.md @@ -4,8 +4,8 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; -import { OperationOptions } from '@azure/core-client'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { OperationOptions } from '@azure/core-client'; // @public export type dependencyResolutionType = "disabled" | "enabled" | "tryFromExpanded"; @@ -38,7 +38,7 @@ export class ModelsRepositoryClient { [dtmi: string]: unknown; }>; get repositoryLocation(): string; - } +} // @public export interface ModelsRepositoryClientOptions extends CommonClientOptions { @@ -47,5 +47,4 @@ export interface ModelsRepositoryClientOptions extends CommonClientOptions { repositoryLocation?: string; } - ``` diff --git a/sdk/iot/iot-modelsrepository/src/dtmiResolver.ts b/sdk/iot/iot-modelsrepository/src/dtmiResolver.ts index 92401752b1c4..e77cc83bb646 100644 --- a/sdk/iot/iot-modelsrepository/src/dtmiResolver.ts +++ b/sdk/iot/iot-modelsrepository/src/dtmiResolver.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { DTDL } from "./psuedoDtdl"; +import type { OperationOptions } from "@azure/core-client"; +import type { DTDL } from "./psuedoDtdl"; import { convertDtmiToPath } from "./dtmiConventions"; import { ModelError } from "./exceptions"; -import { Fetcher } from "./fetcherAbstract"; +import type { Fetcher } from "./fetcherAbstract"; import { logger } from "./logger"; /** diff --git a/sdk/iot/iot-modelsrepository/src/fetcherAbstract.ts b/sdk/iot/iot-modelsrepository/src/fetcherAbstract.ts index d2b28918bde8..1e9b8b20b508 100644 --- a/sdk/iot/iot-modelsrepository/src/fetcherAbstract.ts +++ b/sdk/iot/iot-modelsrepository/src/fetcherAbstract.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { DTDL } from "./psuedoDtdl"; +import type { OperationOptions } from "@azure/core-client"; +import type { DTDL } from "./psuedoDtdl"; /** * Base Interface for Fetchers, which fetch models from endpoints. diff --git a/sdk/iot/iot-modelsrepository/src/fetcherFilesystem.ts b/sdk/iot/iot-modelsrepository/src/fetcherFilesystem.ts index 772f1b4aaa8c..fad283e4f14f 100644 --- a/sdk/iot/iot-modelsrepository/src/fetcherFilesystem.ts +++ b/sdk/iot/iot-modelsrepository/src/fetcherFilesystem.ts @@ -3,10 +3,11 @@ import fs from "fs"; import * as path from "path"; -import { RestError, RestErrorOptions } from "@azure/core-rest-pipeline"; -import { Fetcher } from "./fetcherAbstract"; +import type { RestErrorOptions } from "@azure/core-rest-pipeline"; +import { RestError } from "@azure/core-rest-pipeline"; +import type { Fetcher } from "./fetcherAbstract"; import { logger } from "./logger"; -import { DTDL } from "./psuedoDtdl"; +import type { DTDL } from "./psuedoDtdl"; function readFilePromise(filePath: string): Promise { return new Promise((resolve, reject) => { diff --git a/sdk/iot/iot-modelsrepository/src/fetcherHTTP.ts b/sdk/iot/iot-modelsrepository/src/fetcherHTTP.ts index eb04b7ea3111..3655725f7fd1 100644 --- a/sdk/iot/iot-modelsrepository/src/fetcherHTTP.ts +++ b/sdk/iot/iot-modelsrepository/src/fetcherHTTP.ts @@ -1,19 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions, ServiceClient } from "@azure/core-client"; -import { - createHttpHeaders, - createPipelineRequest, +import type { OperationOptions, ServiceClient } from "@azure/core-client"; +import type { HttpHeaders, HttpMethods, PipelineRequest, PipelineResponse, - RestError, } from "@azure/core-rest-pipeline"; +import { createHttpHeaders, createPipelineRequest, RestError } from "@azure/core-rest-pipeline"; import { logger } from "./logger"; -import { Fetcher } from "./fetcherAbstract"; -import { DTDL } from "./psuedoDtdl"; +import type { Fetcher } from "./fetcherAbstract"; +import type { DTDL } from "./psuedoDtdl"; /** * The HTTP Fetcher implements the Fetcher interface to diff --git a/sdk/iot/iot-modelsrepository/src/interfaces/getModelsOptions.ts b/sdk/iot/iot-modelsrepository/src/interfaces/getModelsOptions.ts index 6da5185ece84..e10fcd5924f5 100644 --- a/sdk/iot/iot-modelsrepository/src/interfaces/getModelsOptions.ts +++ b/sdk/iot/iot-modelsrepository/src/interfaces/getModelsOptions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { dependencyResolutionType } from "../dependencyResolutionType"; +import type { OperationOptions } from "@azure/core-client"; +import type { dependencyResolutionType } from "../dependencyResolutionType"; /** * Options for getting models. diff --git a/sdk/iot/iot-modelsrepository/src/interfaces/modelsRepositoryClientOptions.ts b/sdk/iot/iot-modelsrepository/src/interfaces/modelsRepositoryClientOptions.ts index db8c190aea88..7d20c5062fd3 100644 --- a/sdk/iot/iot-modelsrepository/src/interfaces/modelsRepositoryClientOptions.ts +++ b/sdk/iot/iot-modelsrepository/src/interfaces/modelsRepositoryClientOptions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions } from "@azure/core-client"; -import { dependencyResolutionType } from "../dependencyResolutionType"; +import type { CommonClientOptions } from "@azure/core-client"; +import type { dependencyResolutionType } from "../dependencyResolutionType"; /** * Options for creating a Pipeline to use with ModelsRepositoryClient. diff --git a/sdk/iot/iot-modelsrepository/src/modelsRepositoryClient.ts b/sdk/iot/iot-modelsrepository/src/modelsRepositoryClient.ts index 5fc3483d2993..4a73f396976c 100644 --- a/sdk/iot/iot-modelsrepository/src/modelsRepositoryClient.ts +++ b/sdk/iot/iot-modelsrepository/src/modelsRepositoryClient.ts @@ -9,19 +9,20 @@ import { DEPENDENCY_MODE_ENABLED, DEPENDENCY_MODE_TRY_FROM_EXPANDED, } from "./utils/constants"; -import { createClientPipeline, InternalClientPipelineOptions } from "@azure/core-client"; -import { Fetcher } from "./fetcherAbstract"; +import type { InternalClientPipelineOptions } from "@azure/core-client"; +import { createClientPipeline } from "@azure/core-client"; +import type { Fetcher } from "./fetcherAbstract"; import { isLocalPath, normalize } from "./utils/path"; import { FilesystemFetcher } from "./fetcherFilesystem"; -import { dependencyResolutionType } from "./dependencyResolutionType"; +import type { dependencyResolutionType } from "./dependencyResolutionType"; import { DtmiResolver } from "./dtmiResolver"; import { PseudoParser } from "./psuedoParser"; -import { ModelsRepositoryClientOptions } from "./interfaces/modelsRepositoryClientOptions"; +import type { ModelsRepositoryClientOptions } from "./interfaces/modelsRepositoryClientOptions"; import { logger } from "./logger"; import { IoTModelsRepositoryServiceClient } from "./modelsRepositoryServiceClient"; import { HttpFetcher } from "./fetcherHTTP"; -import { GetModelsOptions } from "./interfaces/getModelsOptions"; -import { DTDL } from "./psuedoDtdl"; +import type { GetModelsOptions } from "./interfaces/getModelsOptions"; +import type { DTDL } from "./psuedoDtdl"; /** * Initializes a new instance of the IoT Models Repository Client. diff --git a/sdk/iot/iot-modelsrepository/src/modelsRepositoryServiceClient.ts b/sdk/iot/iot-modelsrepository/src/modelsRepositoryServiceClient.ts index db6f0d747062..ce07dfd857c9 100644 --- a/sdk/iot/iot-modelsrepository/src/modelsRepositoryServiceClient.ts +++ b/sdk/iot/iot-modelsrepository/src/modelsRepositoryServiceClient.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ServiceClientOptions, ServiceClient } from "@azure/core-client"; +import type { ServiceClientOptions } from "@azure/core-client"; +import { ServiceClient } from "@azure/core-client"; import { DEFAULT_API_VERSION } from "./utils/constants"; interface IoTModelsRepositoryServiceClientOptions extends ServiceClientOptions { diff --git a/sdk/iot/iot-modelsrepository/src/psuedoParser.ts b/sdk/iot/iot-modelsrepository/src/psuedoParser.ts index f1198f666808..f63eb6359a72 100644 --- a/sdk/iot/iot-modelsrepository/src/psuedoParser.ts +++ b/sdk/iot/iot-modelsrepository/src/psuedoParser.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DTDL } from "./psuedoDtdl"; +import type { DTDL } from "./psuedoDtdl"; import { logger } from "./logger"; -import { DtmiResolver } from "./dtmiResolver"; +import type { DtmiResolver } from "./dtmiResolver"; import { RestError } from "@azure/core-rest-pipeline"; /** diff --git a/sdk/iot/iot-modelsrepository/test/node/integration/index.spec.ts b/sdk/iot/iot-modelsrepository/test/node/integration/index.spec.ts index 2c0e3fa21169..4ec1318812b4 100644 --- a/sdk/iot/iot-modelsrepository/test/node/integration/index.spec.ts +++ b/sdk/iot/iot-modelsrepository/test/node/integration/index.spec.ts @@ -2,14 +2,15 @@ // Licensed under the MIT License. /* eslint-disable no-undef */ -import { ModelsRepositoryClient, ModelsRepositoryClientOptions } from "../../../src"; +import type { ModelsRepositoryClientOptions } from "../../../src"; +import { ModelsRepositoryClient } from "../../../src"; import { assert, expect } from "chai"; import * as sinon from "sinon"; -import { dependencyResolutionType } from "../../../src/dependencyResolutionType"; +import type { dependencyResolutionType } from "../../../src/dependencyResolutionType"; import { ServiceClient } from "@azure/core-client"; -import { PipelineRequest } from "@azure/core-rest-pipeline"; +import type { PipelineRequest } from "@azure/core-rest-pipeline"; interface RemoteResolutionScenario { name: string; diff --git a/sdk/keyvault/keyvault-admin/review/keyvault-admin.api.md b/sdk/keyvault/keyvault-admin/review/keyvault-admin.api.md index 264289d49b17..7c94bc9858b2 100644 --- a/sdk/keyvault/keyvault-admin/review/keyvault-admin.api.md +++ b/sdk/keyvault/keyvault-admin/review/keyvault-admin.api.md @@ -4,12 +4,12 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PollerLike } from '@azure/core-lro'; +import type { PollOperationState } from '@azure/core-lro'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AccessControlClientOptions extends CommonClientOptions { diff --git a/sdk/keyvault/keyvault-admin/src/accessControlClient.ts b/sdk/keyvault/keyvault-admin/src/accessControlClient.ts index b832cd2774a7..1ffe3971b472 100644 --- a/sdk/keyvault/keyvault-admin/src/accessControlClient.ts +++ b/sdk/keyvault/keyvault-admin/src/accessControlClient.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. /// -import { +import type { AccessControlClientOptions, CreateRoleAssignmentOptions, DeleteRoleAssignmentOptions, @@ -20,9 +20,9 @@ import { } from "./accessControlModels.js"; import { KeyVaultClient } from "./generated/keyVaultClient.js"; import { LATEST_API_VERSION } from "./constants.js"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { RoleAssignmentsListForScopeOptionalParams } from "./generated/models/index.js"; -import { TokenCredential } from "@azure/core-auth"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { RoleAssignmentsListForScopeOptionalParams } from "./generated/models/index.js"; +import type { TokenCredential } from "@azure/core-auth"; import { keyVaultAuthenticationPolicy } from "@azure/keyvault-common"; import { logger } from "./log.js"; import { mappings } from "./mappings.js"; diff --git a/sdk/keyvault/keyvault-admin/src/accessControlModels.ts b/sdk/keyvault/keyvault-admin/src/accessControlModels.ts index c654d737c2e0..777ee31bccba 100644 --- a/sdk/keyvault/keyvault-admin/src/accessControlModels.ts +++ b/sdk/keyvault/keyvault-admin/src/accessControlModels.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; import { DataAction as KeyVaultDataAction, RoleScope as KeyVaultRoleScope, KnownDataAction as KnownKeyVaultDataAction, KnownRoleScope as KnownKeyVaultRoleScope, } from "./generated/index.js"; -import { SUPPORTED_API_VERSIONS } from "./constants.js"; +import type { SUPPORTED_API_VERSIONS } from "./constants.js"; export { KeyVaultDataAction, KeyVaultRoleScope, KnownKeyVaultDataAction, KnownKeyVaultRoleScope }; diff --git a/sdk/keyvault/keyvault-admin/src/backupClient.ts b/sdk/keyvault/keyvault-admin/src/backupClient.ts index ff8b0ee9a370..3df315bac0a0 100644 --- a/sdk/keyvault/keyvault-admin/src/backupClient.ts +++ b/sdk/keyvault/keyvault-admin/src/backupClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { KeyVaultBackupClientOptions, KeyVaultBackupResult, KeyVaultBeginBackupOptions, @@ -19,8 +19,8 @@ import { KeyVaultRestorePoller } from "./lro/restore/poller.js"; import { KeyVaultSelectiveKeyRestoreOperationState } from "./lro/selectiveKeyRestore/operation.js"; import { KeyVaultSelectiveKeyRestorePoller } from "./lro/selectiveKeyRestore/poller.js"; import { LATEST_API_VERSION } from "./constants.js"; -import { PollerLike } from "@azure/core-lro"; -import { TokenCredential } from "@azure/core-auth"; +import type { PollerLike } from "@azure/core-lro"; +import type { TokenCredential } from "@azure/core-auth"; import { keyVaultAuthenticationPolicy } from "@azure/keyvault-common"; import { logger } from "./log.js"; import { mappings } from "./mappings.js"; diff --git a/sdk/keyvault/keyvault-admin/src/backupClientModels.ts b/sdk/keyvault/keyvault-admin/src/backupClientModels.ts index 7da7c94e8bd4..fd75b39042cf 100644 --- a/sdk/keyvault/keyvault-admin/src/backupClientModels.ts +++ b/sdk/keyvault/keyvault-admin/src/backupClientModels.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; -import { SUPPORTED_API_VERSIONS } from "./constants.js"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { SUPPORTED_API_VERSIONS } from "./constants.js"; /** * The optional parameters accepted by the KeyVaultBackupClient diff --git a/sdk/keyvault/keyvault-admin/src/lro/backup/operation.ts b/sdk/keyvault/keyvault-admin/src/lro/backup/operation.ts index 70e336c24ac9..133268eb6e3d 100644 --- a/sdk/keyvault/keyvault-admin/src/lro/backup/operation.ts +++ b/sdk/keyvault/keyvault-admin/src/lro/backup/operation.ts @@ -1,19 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { FullBackupOperation, FullBackupOptionalParams, FullBackupResponse, FullBackupStatusResponse, } from "../../generated/models/index.js"; -import { - KeyVaultAdminPollOperation, - KeyVaultAdminPollOperationState, -} from "../keyVaultAdminPoller.js"; -import { KeyVaultBackupResult, KeyVaultBeginBackupOptions } from "../../backupClientModels.js"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { KeyVaultClient } from "../../generated/keyVaultClient.js"; +import type { KeyVaultAdminPollOperationState } from "../keyVaultAdminPoller.js"; +import { KeyVaultAdminPollOperation } from "../keyVaultAdminPoller.js"; +import type { KeyVaultBackupResult, KeyVaultBeginBackupOptions } from "../../backupClientModels.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { KeyVaultClient } from "../../generated/keyVaultClient.js"; import { tracingClient } from "../../tracing.js"; /** diff --git a/sdk/keyvault/keyvault-admin/src/lro/backup/poller.ts b/sdk/keyvault/keyvault-admin/src/lro/backup/poller.ts index 1e1dbf896f12..5140c692f7fc 100644 --- a/sdk/keyvault/keyvault-admin/src/lro/backup/poller.ts +++ b/sdk/keyvault/keyvault-admin/src/lro/backup/poller.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyVaultAdminPoller, KeyVaultAdminPollerOptions } from "../keyVaultAdminPoller.js"; -import { +import type { KeyVaultAdminPollerOptions } from "../keyVaultAdminPoller.js"; +import { KeyVaultAdminPoller } from "../keyVaultAdminPoller.js"; +import type { KeyVaultBackupOperationState, - KeyVaultBackupPollOperation, KeyVaultBackupPollOperationState, } from "./operation.js"; -import { KeyVaultBackupResult } from "../../backupClientModels.js"; +import { KeyVaultBackupPollOperation } from "./operation.js"; +import type { KeyVaultBackupResult } from "../../backupClientModels.js"; export interface KeyVaultBackupPollerOptions extends KeyVaultAdminPollerOptions { blobStorageUri: string; diff --git a/sdk/keyvault/keyvault-admin/src/lro/keyVaultAdminPoller.ts b/sdk/keyvault/keyvault-admin/src/lro/keyVaultAdminPoller.ts index 977d2c97a5d6..97f6da621dfd 100644 --- a/sdk/keyvault/keyvault-admin/src/lro/keyVaultAdminPoller.ts +++ b/sdk/keyvault/keyvault-admin/src/lro/keyVaultAdminPoller.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PollOperation, PollOperationState, Poller } from "@azure/core-lro"; -import { KeyVaultClient } from "../generated/keyVaultClient.js"; -import { OperationOptions } from "@azure/core-client"; +import type { PollOperation, PollOperationState } from "@azure/core-lro"; +import { Poller } from "@azure/core-lro"; +import type { KeyVaultClient } from "../generated/keyVaultClient.js"; +import type { OperationOptions } from "@azure/core-client"; /** * Common parameters to a Key Vault Admin Poller. diff --git a/sdk/keyvault/keyvault-admin/src/lro/restore/operation.ts b/sdk/keyvault/keyvault-admin/src/lro/restore/operation.ts index e3a3eaeb1025..dd60804d0558 100644 --- a/sdk/keyvault/keyvault-admin/src/lro/restore/operation.ts +++ b/sdk/keyvault/keyvault-admin/src/lro/restore/operation.ts @@ -1,21 +1,22 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { FullRestoreOperationOptionalParams, FullRestoreOperationResponse, RestoreOperation, RestoreStatusResponse, } from "../../generated/models/index.js"; -import { - KeyVaultAdminPollOperation, - KeyVaultAdminPollOperationState, -} from "../keyVaultAdminPoller.js"; -import { KeyVaultBeginRestoreOptions, KeyVaultRestoreResult } from "../../backupClientModels.js"; - -import { AbortSignalLike } from "@azure/abort-controller"; -import { KeyVaultClient } from "../../generated/keyVaultClient.js"; -import { OperationOptions } from "@azure/core-client"; +import type { KeyVaultAdminPollOperationState } from "../keyVaultAdminPoller.js"; +import { KeyVaultAdminPollOperation } from "../keyVaultAdminPoller.js"; +import type { + KeyVaultBeginRestoreOptions, + KeyVaultRestoreResult, +} from "../../backupClientModels.js"; + +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { KeyVaultClient } from "../../generated/keyVaultClient.js"; +import type { OperationOptions } from "@azure/core-client"; import { tracingClient } from "../../tracing.js"; /** diff --git a/sdk/keyvault/keyvault-admin/src/lro/restore/poller.ts b/sdk/keyvault/keyvault-admin/src/lro/restore/poller.ts index 93c6106a47af..bc1ecb861425 100644 --- a/sdk/keyvault/keyvault-admin/src/lro/restore/poller.ts +++ b/sdk/keyvault/keyvault-admin/src/lro/restore/poller.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyVaultAdminPoller, KeyVaultAdminPollerOptions } from "../keyVaultAdminPoller.js"; -import { +import type { KeyVaultAdminPollerOptions } from "../keyVaultAdminPoller.js"; +import { KeyVaultAdminPoller } from "../keyVaultAdminPoller.js"; +import type { KeyVaultRestoreOperationState, - KeyVaultRestorePollOperation, KeyVaultRestorePollOperationState, } from "./operation.js"; -import { KeyVaultRestoreResult } from "../../backupClientModels.js"; +import { KeyVaultRestorePollOperation } from "./operation.js"; +import type { KeyVaultRestoreResult } from "../../backupClientModels.js"; export interface KeyVaultRestorePollerOptions extends KeyVaultAdminPollerOptions { folderUri: string; diff --git a/sdk/keyvault/keyvault-admin/src/lro/selectiveKeyRestore/operation.ts b/sdk/keyvault/keyvault-admin/src/lro/selectiveKeyRestore/operation.ts index cb56d0f94e03..58526fb5f3aa 100644 --- a/sdk/keyvault/keyvault-admin/src/lro/selectiveKeyRestore/operation.ts +++ b/sdk/keyvault/keyvault-admin/src/lro/selectiveKeyRestore/operation.ts @@ -1,23 +1,21 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - KeyVaultAdminPollOperation, - KeyVaultAdminPollOperationState, -} from "../keyVaultAdminPoller.js"; -import { +import type { KeyVaultAdminPollOperationState } from "../keyVaultAdminPoller.js"; +import { KeyVaultAdminPollOperation } from "../keyVaultAdminPoller.js"; +import type { KeyVaultBeginSelectiveKeyRestoreOptions, KeyVaultSelectiveKeyRestoreResult, } from "../../backupClientModels.js"; -import { +import type { RestoreOperation, RestoreStatusResponse, SelectiveKeyRestoreOperationOptionalParams, SelectiveKeyRestoreOperationResponse, } from "../../generated/models/index.js"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { KeyVaultClient } from "../../generated/keyVaultClient.js"; -import { OperationOptions } from "@azure/core-client"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { KeyVaultClient } from "../../generated/keyVaultClient.js"; +import type { OperationOptions } from "@azure/core-client"; import { tracingClient } from "../../tracing.js"; /** diff --git a/sdk/keyvault/keyvault-admin/src/lro/selectiveKeyRestore/poller.ts b/sdk/keyvault/keyvault-admin/src/lro/selectiveKeyRestore/poller.ts index f0498c3fbf7d..09a8e92aa06f 100644 --- a/sdk/keyvault/keyvault-admin/src/lro/selectiveKeyRestore/poller.ts +++ b/sdk/keyvault/keyvault-admin/src/lro/selectiveKeyRestore/poller.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyVaultAdminPoller, KeyVaultAdminPollerOptions } from "../keyVaultAdminPoller.js"; -import { +import type { KeyVaultAdminPollerOptions } from "../keyVaultAdminPoller.js"; +import { KeyVaultAdminPoller } from "../keyVaultAdminPoller.js"; +import type { KeyVaultSelectiveKeyRestoreOperationState, - KeyVaultSelectiveKeyRestorePollOperation, KeyVaultSelectiveKeyRestorePollOperationState, } from "./operation.js"; -import { KeyVaultSelectiveKeyRestoreResult } from "../../backupClientModels.js"; +import { KeyVaultSelectiveKeyRestorePollOperation } from "./operation.js"; +import type { KeyVaultSelectiveKeyRestoreResult } from "../../backupClientModels.js"; export interface KeyVaultSelectiveKeyRestorePollerOptions extends KeyVaultAdminPollerOptions { keyName: string; diff --git a/sdk/keyvault/keyvault-admin/src/mappings.ts b/sdk/keyvault/keyvault-admin/src/mappings.ts index 70941ae064e5..57ea87ac32ca 100644 --- a/sdk/keyvault/keyvault-admin/src/mappings.ts +++ b/sdk/keyvault/keyvault-admin/src/mappings.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { KeyVaultRoleAssignment, KeyVaultRoleDefinition, KeyVaultRoleScope, } from "./accessControlModels.js"; -import { RoleAssignment, RoleDefinition } from "./generated/models/index.js"; +import type { RoleAssignment, RoleDefinition } from "./generated/models/index.js"; export const mappings = { roleAssignment: { diff --git a/sdk/keyvault/keyvault-admin/src/settingsClient.ts b/sdk/keyvault/keyvault-admin/src/settingsClient.ts index 86ff463e9041..8244b0946b93 100644 --- a/sdk/keyvault/keyvault-admin/src/settingsClient.ts +++ b/sdk/keyvault/keyvault-admin/src/settingsClient.ts @@ -1,12 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { keyVaultAuthenticationPolicy } from "@azure/keyvault-common"; import { LATEST_API_VERSION } from "./constants.js"; -import { KeyVaultClient, Setting as GeneratedSetting } from "./generated/index.js"; +import type { Setting as GeneratedSetting } from "./generated/index.js"; +import { KeyVaultClient } from "./generated/index.js"; import { logger } from "./log.js"; -import { +import type { UpdateSettingOptions, GetSettingOptions, ListSettingsOptions, diff --git a/sdk/keyvault/keyvault-admin/src/settingsClientModels.ts b/sdk/keyvault/keyvault-admin/src/settingsClientModels.ts index 1a7684711708..a11123eeec3c 100644 --- a/sdk/keyvault/keyvault-admin/src/settingsClientModels.ts +++ b/sdk/keyvault/keyvault-admin/src/settingsClientModels.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; -import { SUPPORTED_API_VERSIONS } from "./constants.js"; +import type { SUPPORTED_API_VERSIONS } from "./constants.js"; /** * The optional parameters accepted by the KeyVaultSettingsClient. diff --git a/sdk/keyvault/keyvault-certificates/review/keyvault-certificates.api.md b/sdk/keyvault/keyvault-certificates/review/keyvault-certificates.api.md index 108850591859..a033fbe1bf7a 100644 --- a/sdk/keyvault/keyvault-certificates/review/keyvault-certificates.api.md +++ b/sdk/keyvault/keyvault-certificates/review/keyvault-certificates.api.md @@ -4,15 +4,15 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; +import type { AbortSignalLike } from '@azure/abort-controller'; import { AzureLogger } from '@azure/logger'; -import { CancelOnProgress } from '@azure/core-lro'; -import * as coreClient from '@azure/core-client'; -import { ExtendedCommonClientOptions } from '@azure/core-http-compat'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { CancelOnProgress } from '@azure/core-lro'; +import type * as coreClient from '@azure/core-client'; +import type { ExtendedCommonClientOptions } from '@azure/core-http-compat'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { TokenCredential } from '@azure/core-auth'; +import type { PollOperationState } from '@azure/core-lro'; +import type { TokenCredential } from '@azure/core-auth'; // @public export type ActionType = "EmailContacts" | "AutoRenew"; diff --git a/sdk/keyvault/keyvault-certificates/src/certificatesModels.ts b/sdk/keyvault/keyvault-certificates/src/certificatesModels.ts index a3eaad6ab9e3..fd8dc0c12439 100644 --- a/sdk/keyvault/keyvault-certificates/src/certificatesModels.ts +++ b/sdk/keyvault/keyvault-certificates/src/certificatesModels.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import * as coreClient from "@azure/core-client"; -import { ExtendedCommonClientOptions } from "@azure/core-http-compat"; -import { CancelOnProgress, PollOperationState } from "@azure/core-lro"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import type * as coreClient from "@azure/core-client"; +import type { ExtendedCommonClientOptions } from "@azure/core-http-compat"; +import type { CancelOnProgress, PollOperationState } from "@azure/core-lro"; +import type { DeletionRecoveryLevel, KeyUsageType, JsonWebKeyType as CertificateKeyType, diff --git a/sdk/keyvault/keyvault-certificates/src/index.ts b/sdk/keyvault/keyvault-certificates/src/index.ts index 1ffc0066e6a9..1f628b72b88f 100644 --- a/sdk/keyvault/keyvault-certificates/src/index.ts +++ b/sdk/keyvault/keyvault-certificates/src/index.ts @@ -5,12 +5,13 @@ /// -import { InternalClientPipelineOptions } from "@azure/core-client"; +import type { InternalClientPipelineOptions } from "@azure/core-client"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { logger } from "./log.js"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import type { PollOperationState } from "@azure/core-lro"; +import { PollerLike } from "@azure/core-lro"; import { KeyVaultCertificate, @@ -78,13 +79,15 @@ import { PollerLikeWithCancellation, } from "./certificatesModels.js"; -import { +import type { GetCertificatesOptionalParams, GetCertificateIssuersOptionalParams, GetCertificateVersionsOptionalParams, SetCertificateIssuerOptionalParams, - BackupCertificateResult, GetDeletedCertificatesOptionalParams, +} from "./generated/models/index.js"; +import { + BackupCertificateResult, IssuerParameters, IssuerCredentials, IssuerAttributes, @@ -98,7 +101,7 @@ import { KeyUsageType, } from "./generated/models/index.js"; import { KeyVaultClient } from "./generated/keyVaultClient.js"; -import { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; import { keyVaultAuthenticationPolicy } from "@azure/keyvault-common"; import { CreateCertificatePoller } from "./lro/create/poller.js"; import { CertificateOperationPoller } from "./lro/operation/poller.js"; diff --git a/sdk/keyvault/keyvault-certificates/src/lro/create/operation.ts b/sdk/keyvault/keyvault-certificates/src/lro/create/operation.ts index 13b20b3fbc1b..8d587ecca2e9 100644 --- a/sdk/keyvault/keyvault-certificates/src/lro/create/operation.ts +++ b/sdk/keyvault/keyvault-certificates/src/lro/create/operation.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { OperationOptions } from "@azure/core-client"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { OperationOptions } from "@azure/core-client"; +import type { KeyVaultCertificateWithPolicy, CreateCertificateOptions, CertificatePolicy, @@ -11,12 +11,10 @@ import { GetPlainCertificateOperationOptions, CancelCertificateOperationOptions, } from "../../certificatesModels.js"; -import { CertificateOperation } from "../../generated/models/index.js"; -import { - KeyVaultCertificatePollOperation, - KeyVaultCertificatePollOperationState, -} from "../keyVaultCertificatePoller.js"; -import { KeyVaultClient } from "../../generated/keyVaultClient.js"; +import type { CertificateOperation } from "../../generated/models/index.js"; +import type { KeyVaultCertificatePollOperationState } from "../keyVaultCertificatePoller.js"; +import { KeyVaultCertificatePollOperation } from "../keyVaultCertificatePoller.js"; +import type { KeyVaultClient } from "../../generated/keyVaultClient.js"; import { getCertificateOperationFromCoreOperation, getCertificateWithPolicyFromCertificateBundle, diff --git a/sdk/keyvault/keyvault-certificates/src/lro/create/poller.ts b/sdk/keyvault/keyvault-certificates/src/lro/create/poller.ts index 3cb78c581194..5511a734aef5 100644 --- a/sdk/keyvault/keyvault-certificates/src/lro/create/poller.ts +++ b/sdk/keyvault/keyvault-certificates/src/lro/create/poller.ts @@ -1,16 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CreateCertificatePollOperation, CreateCertificateState } from "./operation.js"; -import { +import type { CreateCertificateState } from "./operation.js"; +import { CreateCertificatePollOperation } from "./operation.js"; +import type { KeyVaultCertificateWithPolicy, CreateCertificateOptions, CertificatePolicy, } from "../../certificatesModels.js"; -import { - KeyVaultCertificatePoller, - KeyVaultCertificatePollerOptions, -} from "../keyVaultCertificatePoller.js"; +import type { KeyVaultCertificatePollerOptions } from "../keyVaultCertificatePoller.js"; +import { KeyVaultCertificatePoller } from "../keyVaultCertificatePoller.js"; export interface CreateCertificatePollerOptions extends KeyVaultCertificatePollerOptions { certificatePolicy?: CertificatePolicy; diff --git a/sdk/keyvault/keyvault-certificates/src/lro/delete/operation.ts b/sdk/keyvault/keyvault-certificates/src/lro/delete/operation.ts index 9095eeae509f..c0788fc40517 100644 --- a/sdk/keyvault/keyvault-certificates/src/lro/delete/operation.ts +++ b/sdk/keyvault/keyvault-certificates/src/lro/delete/operation.ts @@ -1,18 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { OperationOptions } from "@azure/core-client"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { OperationOptions } from "@azure/core-client"; +import type { DeleteCertificateOptions, DeletedCertificate, GetDeletedCertificateOptions, } from "../../certificatesModels.js"; -import { - KeyVaultCertificatePollOperation, - KeyVaultCertificatePollOperationState, -} from "../keyVaultCertificatePoller.js"; -import { KeyVaultClient } from "../../generated/keyVaultClient.js"; +import type { KeyVaultCertificatePollOperationState } from "../keyVaultCertificatePoller.js"; +import { KeyVaultCertificatePollOperation } from "../keyVaultCertificatePoller.js"; +import type { KeyVaultClient } from "../../generated/keyVaultClient.js"; import { getDeletedCertificateFromDeletedCertificateBundle } from "../../transformations.js"; import { tracingClient } from "../../tracing.js"; diff --git a/sdk/keyvault/keyvault-certificates/src/lro/delete/poller.ts b/sdk/keyvault/keyvault-certificates/src/lro/delete/poller.ts index 67c9958271e8..6ff6c061def5 100644 --- a/sdk/keyvault/keyvault-certificates/src/lro/delete/poller.ts +++ b/sdk/keyvault/keyvault-certificates/src/lro/delete/poller.ts @@ -1,15 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - DeleteCertificatePollOperation, - DeleteCertificatePollOperationState, -} from "./operation.js"; -import { DeletedCertificate } from "../../certificatesModels.js"; -import { - KeyVaultCertificatePoller, - KeyVaultCertificatePollerOptions, -} from "../keyVaultCertificatePoller.js"; +import type { DeleteCertificatePollOperationState } from "./operation.js"; +import { DeleteCertificatePollOperation } from "./operation.js"; +import type { DeletedCertificate } from "../../certificatesModels.js"; +import type { KeyVaultCertificatePollerOptions } from "../keyVaultCertificatePoller.js"; +import { KeyVaultCertificatePoller } from "../keyVaultCertificatePoller.js"; export interface DeleteCertificatePollerOptions extends KeyVaultCertificatePollerOptions {} diff --git a/sdk/keyvault/keyvault-certificates/src/lro/keyVaultCertificatePoller.ts b/sdk/keyvault/keyvault-certificates/src/lro/keyVaultCertificatePoller.ts index a7a3158794b6..879467f4e2a8 100644 --- a/sdk/keyvault/keyvault-certificates/src/lro/keyVaultCertificatePoller.ts +++ b/sdk/keyvault/keyvault-certificates/src/lro/keyVaultCertificatePoller.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; import { delay } from "@azure/core-util"; -import { Poller, PollOperation, PollOperationState } from "@azure/core-lro"; -import { KeyVaultClient } from "../generated/keyVaultClient.js"; +import type { PollOperation, PollOperationState } from "@azure/core-lro"; +import { Poller } from "@azure/core-lro"; +import type { KeyVaultClient } from "../generated/keyVaultClient.js"; /** * Common parameters to a Key Vault Certificate Poller. diff --git a/sdk/keyvault/keyvault-certificates/src/lro/operation/operation.ts b/sdk/keyvault/keyvault-certificates/src/lro/operation/operation.ts index 387695daeeb9..797534999510 100644 --- a/sdk/keyvault/keyvault-certificates/src/lro/operation/operation.ts +++ b/sdk/keyvault/keyvault-certificates/src/lro/operation/operation.ts @@ -1,21 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { OperationOptions } from "@azure/core-client"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { OperationOptions } from "@azure/core-client"; +import type { CancelCertificateOperationOptions, CertificateOperation, GetCertificateOptions, GetPlainCertificateOperationOptions, KeyVaultCertificateWithPolicy, } from "../../certificatesModels.js"; -import { - cleanState, - KeyVaultCertificatePollOperation, - KeyVaultCertificatePollOperationState, -} from "../keyVaultCertificatePoller.js"; -import { KeyVaultClient } from "../../generated/keyVaultClient.js"; +import type { KeyVaultCertificatePollOperationState } from "../keyVaultCertificatePoller.js"; +import { cleanState, KeyVaultCertificatePollOperation } from "../keyVaultCertificatePoller.js"; +import type { KeyVaultClient } from "../../generated/keyVaultClient.js"; import { getCertificateOperationFromCoreOperation, getCertificateWithPolicyFromCertificateBundle, diff --git a/sdk/keyvault/keyvault-certificates/src/lro/operation/poller.ts b/sdk/keyvault/keyvault-certificates/src/lro/operation/poller.ts index 7c9706596119..3016f9bd3e21 100644 --- a/sdk/keyvault/keyvault-certificates/src/lro/operation/poller.ts +++ b/sdk/keyvault/keyvault-certificates/src/lro/operation/poller.ts @@ -1,13 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CertificateOperationPollOperation, CertificateOperationState } from "./operation.js"; -import { KeyVaultCertificateWithPolicy } from "../../certificatesModels.js"; -import { - KeyVaultCertificatePoller, - KeyVaultCertificatePollerOptions, - cleanState, -} from "../keyVaultCertificatePoller.js"; +import type { CertificateOperationState } from "./operation.js"; +import { CertificateOperationPollOperation } from "./operation.js"; +import type { KeyVaultCertificateWithPolicy } from "../../certificatesModels.js"; +import type { KeyVaultCertificatePollerOptions } from "../keyVaultCertificatePoller.js"; +import { KeyVaultCertificatePoller, cleanState } from "../keyVaultCertificatePoller.js"; export interface CertificateOperationPollerOptions extends KeyVaultCertificatePollerOptions {} diff --git a/sdk/keyvault/keyvault-certificates/src/lro/recover/operation.ts b/sdk/keyvault/keyvault-certificates/src/lro/recover/operation.ts index 38919b90b639..08f7713134ac 100644 --- a/sdk/keyvault/keyvault-certificates/src/lro/recover/operation.ts +++ b/sdk/keyvault/keyvault-certificates/src/lro/recover/operation.ts @@ -1,20 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { OperationOptions } from "@azure/core-client"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { OperationOptions } from "@azure/core-client"; +import type { GetCertificateOptions, KeyVaultCertificateWithPolicy, RecoverDeletedCertificateOptions, } from "../../certificatesModels.js"; -import { KeyVaultClient } from "../../generated/keyVaultClient.js"; +import type { KeyVaultClient } from "../../generated/keyVaultClient.js"; import { tracingClient } from "../../tracing.js"; import { getCertificateWithPolicyFromCertificateBundle } from "../../transformations.js"; -import { - KeyVaultCertificatePollOperation, - KeyVaultCertificatePollOperationState, -} from "../keyVaultCertificatePoller.js"; +import type { KeyVaultCertificatePollOperationState } from "../keyVaultCertificatePoller.js"; +import { KeyVaultCertificatePollOperation } from "../keyVaultCertificatePoller.js"; /** * Deprecated: Public representation of the recovery of a deleted certificate poll operation diff --git a/sdk/keyvault/keyvault-certificates/src/lro/recover/poller.ts b/sdk/keyvault/keyvault-certificates/src/lro/recover/poller.ts index dd869bfec5c8..7e5827d12a05 100644 --- a/sdk/keyvault/keyvault-certificates/src/lro/recover/poller.ts +++ b/sdk/keyvault/keyvault-certificates/src/lro/recover/poller.ts @@ -1,15 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - RecoverDeletedCertificatePollOperation, - RecoverDeletedCertificateState, -} from "./operation.js"; -import { KeyVaultCertificateWithPolicy } from "../../certificatesModels.js"; -import { - KeyVaultCertificatePoller, - KeyVaultCertificatePollerOptions, -} from "../keyVaultCertificatePoller.js"; +import type { RecoverDeletedCertificateState } from "./operation.js"; +import { RecoverDeletedCertificatePollOperation } from "./operation.js"; +import type { KeyVaultCertificateWithPolicy } from "../../certificatesModels.js"; +import type { KeyVaultCertificatePollerOptions } from "../keyVaultCertificatePoller.js"; +import { KeyVaultCertificatePoller } from "../keyVaultCertificatePoller.js"; export interface RecoverDeletedCertificatePollerOptions extends KeyVaultCertificatePollerOptions {} diff --git a/sdk/keyvault/keyvault-certificates/src/transformations.ts b/sdk/keyvault/keyvault-certificates/src/transformations.ts index 33e1c84a55c1..cb126227a29c 100644 --- a/sdk/keyvault/keyvault-certificates/src/transformations.ts +++ b/sdk/keyvault/keyvault-certificates/src/transformations.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { uint8ArrayToString } from "@azure/core-util"; -import { +import type { ArrayOneOrMore, CertificateContentType, CertificateOperation, @@ -16,7 +16,7 @@ import { CertificateContact, CertificateOperationError, } from "./certificatesModels.js"; -import { +import type { CertificateAttributes, CertificateBundle, CertificatePolicy as CoreCertificatePolicy, diff --git a/sdk/keyvault/keyvault-certificates/src/utils.ts b/sdk/keyvault/keyvault-certificates/src/utils.ts index c26a0e4efb0a..6976474d366c 100644 --- a/sdk/keyvault/keyvault-certificates/src/utils.ts +++ b/sdk/keyvault/keyvault-certificates/src/utils.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CertificateContentType } from "./certificatesModels.js"; +import type { CertificateContentType } from "./certificatesModels.js"; import { isNode } from "@azure/core-util"; /** diff --git a/sdk/keyvault/keyvault-certificates/test/internal/lroUnexpectedErrors.spec.ts b/sdk/keyvault/keyvault-certificates/test/internal/lroUnexpectedErrors.spec.ts index 710380258b6d..acb8786c7129 100644 --- a/sdk/keyvault/keyvault-certificates/test/internal/lroUnexpectedErrors.spec.ts +++ b/sdk/keyvault/keyvault-certificates/test/internal/lroUnexpectedErrors.spec.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RestError, createHttpHeaders, PipelineRequest } from "@azure/core-rest-pipeline"; +import type { PipelineRequest } from "@azure/core-rest-pipeline"; +import { RestError, createHttpHeaders } from "@azure/core-rest-pipeline"; import { DeleteCertificatePoller } from "../../src/lro/delete/poller.js"; import { RecoverDeletedCertificatePoller } from "../../src/lro/recover/poller.js"; -import { KeyVaultClient } from "../../src/generated/index.js"; -import { FullOperationResponse } from "@azure/core-client"; +import type { KeyVaultClient } from "../../src/generated/index.js"; +import type { FullOperationResponse } from "@azure/core-client"; import { describe, it, assert } from "vitest"; describe("The LROs properly throw on unexpected errors", () => { diff --git a/sdk/keyvault/keyvault-certificates/test/internal/serviceVersionParameter.spec.ts b/sdk/keyvault/keyvault-certificates/test/internal/serviceVersionParameter.spec.ts index c1542c035e22..f43248337221 100644 --- a/sdk/keyvault/keyvault-certificates/test/internal/serviceVersionParameter.spec.ts +++ b/sdk/keyvault/keyvault-certificates/test/internal/serviceVersionParameter.spec.ts @@ -2,15 +2,16 @@ // Licensed under the MIT License. import { CertificateClient } from "../../src/index.js"; import { LATEST_API_VERSION } from "../../src/certificatesModels.js"; -import { +import type { HttpClient, - createHttpHeaders, PipelineRequest, PipelineResponse, SendRequest, } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; import { ClientSecretCredential } from "@azure/identity"; -import { describe, it, expect, vi, beforeEach, afterEach, MockInstance } from "vitest"; +import type { MockInstance } from "vitest"; +import { describe, it, expect, vi, beforeEach, afterEach } from "vitest"; describe("The Certificates client should set the serviceVersion", () => { const keyVaultUrl = `https://keyvaultname.vault.azure.net`; diff --git a/sdk/keyvault/keyvault-certificates/test/internal/transformations.spec.ts b/sdk/keyvault/keyvault-certificates/test/internal/transformations.spec.ts index 5396bde23283..321e3bb0a089 100644 --- a/sdk/keyvault/keyvault-certificates/test/internal/transformations.spec.ts +++ b/sdk/keyvault/keyvault-certificates/test/internal/transformations.spec.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CertificateBundle, CertificateOperation as CoreCertificateOperation, DeletedCertificateItem, diff --git a/sdk/keyvault/keyvault-certificates/test/internal/userAgent.spec.ts b/sdk/keyvault/keyvault-certificates/test/internal/userAgent.spec.ts index 2afb306a983d..bccc0b9b5943 100644 --- a/sdk/keyvault/keyvault-certificates/test/internal/userAgent.spec.ts +++ b/sdk/keyvault/keyvault-certificates/test/internal/userAgent.spec.ts @@ -3,7 +3,7 @@ import { CertificateClient } from "../../src/index.js"; import { SDK_VERSION } from "../../src/constants.js"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { describe, it, assert } from "vitest"; describe("Certificates client's user agent (only in Node, because of fs)", () => { diff --git a/sdk/keyvault/keyvault-certificates/test/public/CRUD.spec.ts b/sdk/keyvault/keyvault-certificates/test/public/CRUD.spec.ts index 88398eb748fe..90059c2cdb81 100644 --- a/sdk/keyvault/keyvault-certificates/test/public/CRUD.spec.ts +++ b/sdk/keyvault/keyvault-certificates/test/public/CRUD.spec.ts @@ -4,16 +4,17 @@ import os from "node:os"; import fs from "node:fs"; import childProcess from "child_process"; -import { env, isLiveMode, isPlaybackMode, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; import { SecretClient } from "@azure/keyvault-secrets"; -import { ClientSecretCredential } from "@azure/identity"; +import type { ClientSecretCredential } from "@azure/identity"; import { isNodeLike } from "@azure/core-util"; -import { CertificateClient } from "../../src/index.js"; +import type { CertificateClient } from "../../src/index.js"; import { assertThrowsAbortError } from "./utils/common.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; import { toSupportTracing } from "@azure-tools/test-utils-vitest"; import { describe, it, expect, beforeEach, afterEach } from "vitest"; expect.extend({ toSupportTracing }); diff --git a/sdk/keyvault/keyvault-certificates/test/public/list.spec.ts b/sdk/keyvault/keyvault-certificates/test/public/list.spec.ts index 0e899e00a579..386bd0d68dbc 100644 --- a/sdk/keyvault/keyvault-certificates/test/public/list.spec.ts +++ b/sdk/keyvault/keyvault-certificates/test/public/list.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { env, Recorder, isRecordMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isRecordMode } from "@azure-tools/test-recorder"; -import { CertificateClient } from "../../src/index.js"; +import type { CertificateClient } from "../../src/index.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; import { describe, it, expect, beforeEach, afterEach } from "vitest"; describe("Certificates client - list certificates in various ways", () => { diff --git a/sdk/keyvault/keyvault-certificates/test/public/lro.create.spec.ts b/sdk/keyvault/keyvault-certificates/test/public/lro.create.spec.ts index 1f03ffe0e70e..daf6d2462406 100644 --- a/sdk/keyvault/keyvault-certificates/test/public/lro.create.spec.ts +++ b/sdk/keyvault/keyvault-certificates/test/public/lro.create.spec.ts @@ -1,16 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { env, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; -import { - CertificateClient, - KeyVaultCertificate, - DefaultCertificatePolicy, -} from "../../src/index.js"; +import type { CertificateClient, KeyVaultCertificate } from "../../src/index.js"; +import { DefaultCertificatePolicy } from "../../src/index.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; import { describe, it, expect, beforeEach, afterEach } from "vitest"; describe("Certificates client - LRO - create", () => { diff --git a/sdk/keyvault/keyvault-certificates/test/public/lro.delete.spec.ts b/sdk/keyvault/keyvault-certificates/test/public/lro.delete.spec.ts index a1a405c41256..50314f5f067d 100644 --- a/sdk/keyvault/keyvault-certificates/test/public/lro.delete.spec.ts +++ b/sdk/keyvault/keyvault-certificates/test/public/lro.delete.spec.ts @@ -1,15 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { env, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; -import { - CertificateClient, - DeletedCertificate, - DefaultCertificatePolicy, -} from "../../src/index.js"; +import type { CertificateClient, DeletedCertificate } from "../../src/index.js"; +import { DefaultCertificatePolicy } from "../../src/index.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; import { describe, it, expect, beforeEach, afterEach } from "vitest"; describe("Certificates client - lro - delete", () => { diff --git a/sdk/keyvault/keyvault-certificates/test/public/lro.operation.spec.ts b/sdk/keyvault/keyvault-certificates/test/public/lro.operation.spec.ts index 10a3c246a88a..d72e1857056a 100644 --- a/sdk/keyvault/keyvault-certificates/test/public/lro.operation.spec.ts +++ b/sdk/keyvault/keyvault-certificates/test/public/lro.operation.spec.ts @@ -1,16 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { env, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; -import { +import type { CertificateClient, CertificateOperation, - DefaultCertificatePolicy, KeyVaultCertificateWithPolicy, } from "../../src/index.js"; +import { DefaultCertificatePolicy } from "../../src/index.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; import { describe, it, expect, beforeEach, afterEach } from "vitest"; describe("Certificates client - LRO - certificate operation", () => { diff --git a/sdk/keyvault/keyvault-certificates/test/public/lro.recover.spec.ts b/sdk/keyvault/keyvault-certificates/test/public/lro.recover.spec.ts index 14128b241607..17c633d49944 100644 --- a/sdk/keyvault/keyvault-certificates/test/public/lro.recover.spec.ts +++ b/sdk/keyvault/keyvault-certificates/test/public/lro.recover.spec.ts @@ -1,16 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { env, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; -import { - CertificateClient, - DeletedCertificate, - DefaultCertificatePolicy, -} from "../../src/index.js"; +import type { CertificateClient, DeletedCertificate } from "../../src/index.js"; +import { DefaultCertificatePolicy } from "../../src/index.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; import { describe, it, expect, beforeEach, afterEach } from "vitest"; describe("Certificates client - LRO - recoverDelete", () => { diff --git a/sdk/keyvault/keyvault-certificates/test/public/mergeAndImport.spec.ts b/sdk/keyvault/keyvault-certificates/test/public/mergeAndImport.spec.ts index 2887704f50d5..790653937613 100644 --- a/sdk/keyvault/keyvault-certificates/test/public/mergeAndImport.spec.ts +++ b/sdk/keyvault/keyvault-certificates/test/public/mergeAndImport.spec.ts @@ -4,15 +4,16 @@ import fs from "node:fs"; import childProcess from "child_process"; import { isNodeLike } from "@azure/core-util"; -import { env, isPlaybackMode, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import { SecretClient } from "@azure/keyvault-secrets"; -import { ClientSecretCredential } from "@azure/identity"; +import type { ClientSecretCredential } from "@azure/identity"; -import { CertificateClient } from "../../src/index.js"; +import type { CertificateClient } from "../../src/index.js"; import { base64ToUint8Array, stringToUint8Array } from "../../src/utils.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; import { describe, it, beforeEach, afterEach } from "vitest"; import path from "node:path"; diff --git a/sdk/keyvault/keyvault-certificates/test/public/recoverBackupRestore.spec.ts b/sdk/keyvault/keyvault-certificates/test/public/recoverBackupRestore.spec.ts index 786b401dcdf9..26ce15b58195 100644 --- a/sdk/keyvault/keyvault-certificates/test/public/recoverBackupRestore.spec.ts +++ b/sdk/keyvault/keyvault-certificates/test/public/recoverBackupRestore.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { env, isPlaybackMode, Recorder, isRecordMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode, isRecordMode } from "@azure-tools/test-recorder"; -import { CertificateClient } from "../../src/index.js"; +import type { CertificateClient } from "../../src/index.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; import { describe, it, expect, beforeEach, afterEach } from "vitest"; describe("Certificates client - restore certificates and recover backups", () => { diff --git a/sdk/keyvault/keyvault-certificates/test/public/utils/lro/restore/operation.ts b/sdk/keyvault/keyvault-certificates/test/public/utils/lro/restore/operation.ts index 6d32de4e876e..ba57ba96ce2f 100644 --- a/sdk/keyvault/keyvault-certificates/test/public/utils/lro/restore/operation.ts +++ b/sdk/keyvault/keyvault-certificates/test/public/utils/lro/restore/operation.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { PollOperationState, PollOperation } from "@azure/core-lro"; -import { OperationOptions } from "@azure/core-client"; -import { KeyVaultCertificate, CertificatePollerOptions } from "../../../../../src/index.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { PollOperationState, PollOperation } from "@azure/core-lro"; +import type { OperationOptions } from "@azure/core-client"; +import type { KeyVaultCertificate, CertificatePollerOptions } from "../../../../../src/index.js"; /** * Options sent to the beginRestoreCertificateBackup method. diff --git a/sdk/keyvault/keyvault-certificates/test/public/utils/lro/restore/poller.ts b/sdk/keyvault/keyvault-certificates/test/public/utils/lro/restore/poller.ts index 5d99e859a316..5ba829dd124c 100644 --- a/sdk/keyvault/keyvault-certificates/test/public/utils/lro/restore/poller.ts +++ b/sdk/keyvault/keyvault-certificates/test/public/utils/lro/restore/poller.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; import { delay } from "@azure/core-util"; import { Poller } from "@azure/core-lro"; -import { +import type { RestoreCertificateBackupPollOperationState, - makeRestoreCertificateBackupPollOperation, TestCertificateClientInterface, } from "./operation.js"; -import { KeyVaultCertificate } from "../../../../../src/index.js"; +import { makeRestoreCertificateBackupPollOperation } from "./operation.js"; +import type { KeyVaultCertificate } from "../../../../../src/index.js"; export interface RestoreCertificateBackupPollerOptions { client: TestCertificateClientInterface; diff --git a/sdk/keyvault/keyvault-certificates/test/public/utils/testAuthentication.ts b/sdk/keyvault/keyvault-certificates/test/public/utils/testAuthentication.ts index 9f56f06fe49e..517891006b16 100644 --- a/sdk/keyvault/keyvault-certificates/test/public/utils/testAuthentication.ts +++ b/sdk/keyvault/keyvault-certificates/test/public/utils/testAuthentication.ts @@ -3,13 +3,8 @@ import { CertificateClient } from "../../../src/index.js"; import { uniqueString } from "./recorderUtils.js"; -import { - env, - isLiveMode, - Recorder, - RecorderStartOptions, - TestInfo, -} from "@azure-tools/test-recorder"; +import type { RecorderStartOptions, TestInfo } from "@azure-tools/test-recorder"; +import { env, isLiveMode, Recorder } from "@azure-tools/test-recorder"; import TestClient from "./testClient.js"; import { createTestCredential } from "@azure-tools/test-credential"; diff --git a/sdk/keyvault/keyvault-certificates/test/public/utils/testClient.ts b/sdk/keyvault/keyvault-certificates/test/public/utils/testClient.ts index 691aa08600be..d31f811260ea 100644 --- a/sdk/keyvault/keyvault-certificates/test/public/utils/testClient.ts +++ b/sdk/keyvault/keyvault-certificates/test/public/utils/testClient.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CertificateClient, KeyVaultCertificate } from "../../../src/index.js"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import type { CertificateClient, KeyVaultCertificate } from "../../../src/index.js"; +import type { PollerLike, PollOperationState } from "@azure/core-lro"; import { RestoreCertificateBackupPoller } from "./lro/restore/poller.js"; -import { BeginRestoreCertificateBackupOptions } from "./lro/restore/operation.js"; +import type { BeginRestoreCertificateBackupOptions } from "./lro/restore/operation.js"; import { testPollerProperties } from "./recorderUtils.js"; export default class TestClient { diff --git a/sdk/keyvault/keyvault-common/review/keyvault-common.api.md b/sdk/keyvault/keyvault-common/review/keyvault-common.api.md index 99d9590a6b8b..238beeb26a6e 100644 --- a/sdk/keyvault/keyvault-common/review/keyvault-common.api.md +++ b/sdk/keyvault/keyvault-common/review/keyvault-common.api.md @@ -4,8 +4,8 @@ ```ts -import { PipelinePolicy } from '@azure/core-rest-pipeline'; -import { TokenCredential } from '@azure/core-auth'; +import type { PipelinePolicy } from '@azure/core-rest-pipeline'; +import type { TokenCredential } from '@azure/core-auth'; // @public export function keyVaultAuthenticationPolicy(credential: TokenCredential, options?: KeyVaultAuthenticationPolicyOptions): PipelinePolicy; diff --git a/sdk/keyvault/keyvault-common/src/keyVaultAuthenticationPolicy.ts b/sdk/keyvault/keyvault-common/src/keyVaultAuthenticationPolicy.ts index 017978f5ea4c..44f621cfd666 100644 --- a/sdk/keyvault/keyvault-common/src/keyVaultAuthenticationPolicy.ts +++ b/sdk/keyvault/keyvault-common/src/keyVaultAuthenticationPolicy.ts @@ -1,16 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, RequestBodyType, SendRequest, } from "@azure/core-rest-pipeline"; -import { WWWAuthenticate, parseWWWAuthenticateHeader } from "./parseWWWAuthenticate.js"; +import type { WWWAuthenticate } from "./parseWWWAuthenticate.js"; +import { parseWWWAuthenticateHeader } from "./parseWWWAuthenticate.js"; -import { GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { GetTokenOptions, TokenCredential } from "@azure/core-auth"; import { createTokenCycler } from "./tokenCycler.js"; import { logger } from "./logger.js"; diff --git a/sdk/keyvault/keyvault-common/test/internal/keyVaultAuthenticationPolicy.spec.ts b/sdk/keyvault/keyvault-common/test/internal/keyVaultAuthenticationPolicy.spec.ts index 6c6e1cebef44..e2c68dcaf1ce 100644 --- a/sdk/keyvault/keyvault-common/test/internal/keyVaultAuthenticationPolicy.spec.ts +++ b/sdk/keyvault/keyvault-common/test/internal/keyVaultAuthenticationPolicy.spec.ts @@ -1,17 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { Pipeline, PipelineRequest, SendRequest } from "@azure/core-rest-pipeline"; import { - Pipeline, - PipelineRequest, - SendRequest, createEmptyPipeline, createHttpHeaders, createPipelineRequest, } from "@azure/core-rest-pipeline"; import { parseWWWAuthenticateHeader } from "../../src/parseWWWAuthenticate.js"; import { describe, it, beforeEach, expect, vi } from "vitest"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { keyVaultAuthenticationPolicy } from "../../src/keyVaultAuthenticationPolicy.js"; const caeChallenge = `Bearer realm="", authorization_uri="https://login.microsoftonline.com/common/oauth2/authorize", error="insufficient_claims", claims="eyJhY2Nlc3NfdG9rZW4iOnsibmJmIjp7ImVzc2VudGlhbCI6dHJ1ZSwidmFsdWUiOiIxNzI2MDc3NTk1In0sInhtc19jYWVlcnJvciI6eyJ2YWx1ZSI6IjEwMDEyIn19fQ=="`; diff --git a/sdk/keyvault/keyvault-keys/review/keyvault-keys.api.md b/sdk/keyvault/keyvault-keys/review/keyvault-keys.api.md index cbdc3635f3d8..76f7dbfbc1b5 100644 --- a/sdk/keyvault/keyvault-keys/review/keyvault-keys.api.md +++ b/sdk/keyvault/keyvault-keys/review/keyvault-keys.api.md @@ -5,13 +5,13 @@ ```ts import { AzureLogger } from '@azure/logger'; -import * as coreClient from '@azure/core-client'; -import { ExtendedCommonClientOptions } from '@azure/core-http-compat'; +import type * as coreClient from '@azure/core-client'; +import type { ExtendedCommonClientOptions } from '@azure/core-http-compat'; import { PagedAsyncIterableIterator } from '@azure/core-paging'; import { PageSettings } from '@azure/core-paging'; import { PollerLike } from '@azure/core-lro'; import { PollOperationState } from '@azure/core-lro'; -import { TokenCredential } from '@azure/core-auth'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AesCbcDecryptParameters { diff --git a/sdk/keyvault/keyvault-keys/src/cryptography/aesCryptographyProvider-browser.mts b/sdk/keyvault/keyvault-keys/src/cryptography/aesCryptographyProvider-browser.mts index bfdda8fc8817..47d9d8b97a40 100644 --- a/sdk/keyvault/keyvault-keys/src/cryptography/aesCryptographyProvider-browser.mts +++ b/sdk/keyvault/keyvault-keys/src/cryptography/aesCryptographyProvider-browser.mts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CryptographyProvider, LocalCryptographyUnsupportedError } from "./models.js"; +import type { CryptographyProvider} from "./models.js"; +import { LocalCryptographyUnsupportedError } from "./models.js"; /** * The browser replacement of the AesCryptographyProvider. Since we do not diff --git a/sdk/keyvault/keyvault-keys/src/cryptography/aesCryptographyProvider.ts b/sdk/keyvault/keyvault-keys/src/cryptography/aesCryptographyProvider.ts index 91d8cc70b56f..682c17d9d434 100644 --- a/sdk/keyvault/keyvault-keys/src/cryptography/aesCryptographyProvider.ts +++ b/sdk/keyvault/keyvault-keys/src/cryptography/aesCryptographyProvider.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; import * as crypto from "node:crypto"; -import { +import type { AesCbcEncryptParameters, DecryptOptions, DecryptResult, @@ -20,12 +20,9 @@ import { WrapKeyOptions, WrapResult, } from "../index.js"; -import { AesCbcDecryptParameters } from "../cryptographyClientModels.js"; -import { - CryptographyProvider, - CryptographyProviderOperation, - LocalCryptographyUnsupportedError, -} from "./models.js"; +import type { AesCbcDecryptParameters } from "../cryptographyClientModels.js"; +import type { CryptographyProvider, CryptographyProviderOperation } from "./models.js"; +import { LocalCryptographyUnsupportedError } from "./models.js"; /** * An AES cryptography provider supporting AES algorithms. diff --git a/sdk/keyvault/keyvault-keys/src/cryptography/conversions.ts b/sdk/keyvault/keyvault-keys/src/cryptography/conversions.ts index 94ee1ac39bd3..b9d96c4b3a7a 100644 --- a/sdk/keyvault/keyvault-keys/src/cryptography/conversions.ts +++ b/sdk/keyvault/keyvault-keys/src/cryptography/conversions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { JsonWebKey } from "../keysModels.js"; +import type { JsonWebKey } from "../keysModels.js"; /** * @internal diff --git a/sdk/keyvault/keyvault-keys/src/cryptography/crypto.ts b/sdk/keyvault/keyvault-keys/src/cryptography/crypto.ts index 01162d8c1dde..a3b44ef69f0c 100644 --- a/sdk/keyvault/keyvault-keys/src/cryptography/crypto.ts +++ b/sdk/keyvault/keyvault-keys/src/cryptography/crypto.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { Verify } from "node:crypto"; import { - Verify, createHash as cryptoCreateHash, createVerify as cryptoCreateVerify, randomBytes as cryptoRandomBytes, diff --git a/sdk/keyvault/keyvault-keys/src/cryptography/models.ts b/sdk/keyvault/keyvault-keys/src/cryptography/models.ts index 9aeda38b7f50..6eb6f71cf02b 100644 --- a/sdk/keyvault/keyvault-keys/src/cryptography/models.ts +++ b/sdk/keyvault/keyvault-keys/src/cryptography/models.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { +import type { OperationOptions } from "@azure/core-client"; +import type { DecryptOptions, DecryptParameters, DecryptResult, diff --git a/sdk/keyvault/keyvault-keys/src/cryptography/remoteCryptographyProvider.ts b/sdk/keyvault/keyvault-keys/src/cryptography/remoteCryptographyProvider.ts index 45630bc315be..d704ab74a964 100644 --- a/sdk/keyvault/keyvault-keys/src/cryptography/remoteCryptographyProvider.ts +++ b/sdk/keyvault/keyvault-keys/src/cryptography/remoteCryptographyProvider.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; -import { +import type { DecryptOptions, DecryptParameters, DecryptResult, @@ -20,18 +20,14 @@ import { WrapResult, } from "../cryptographyClientModels.js"; import { SDK_VERSION } from "../constants.js"; -import { UnwrapResult } from "../cryptographyClientModels.js"; +import type { UnwrapResult } from "../cryptographyClientModels.js"; import { KeyVaultClient } from "../generated/index.js"; import { parseKeyVaultKeyIdentifier } from "../identifier.js"; -import { - CryptographyClientOptions, - GetKeyOptions, - KeyVaultKey, - LATEST_API_VERSION, -} from "../keysModels.js"; +import type { CryptographyClientOptions, GetKeyOptions, KeyVaultKey } from "../keysModels.js"; +import { LATEST_API_VERSION } from "../keysModels.js"; import { getKeyFromKeyBundle } from "../transformations.js"; import { createHash } from "./crypto.js"; -import { CryptographyProvider, CryptographyProviderOperation } from "./models.js"; +import type { CryptographyProvider, CryptographyProviderOperation } from "./models.js"; import { logger } from "../log.js"; import { keyVaultAuthenticationPolicy } from "@azure/keyvault-common"; import { tracingClient } from "../tracing.js"; diff --git a/sdk/keyvault/keyvault-keys/src/cryptography/rsaCryptographyProvider-browser.mts b/sdk/keyvault/keyvault-keys/src/cryptography/rsaCryptographyProvider-browser.mts index f7cb456a5795..7e33c09265a2 100644 --- a/sdk/keyvault/keyvault-keys/src/cryptography/rsaCryptographyProvider-browser.mts +++ b/sdk/keyvault/keyvault-keys/src/cryptography/rsaCryptographyProvider-browser.mts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CryptographyProvider, LocalCryptographyUnsupportedError } from "./models.js"; +import type { CryptographyProvider} from "./models.js"; +import { LocalCryptographyUnsupportedError } from "./models.js"; /** * The browser replacement of the RsaCryptographyProvider. Since we do not diff --git a/sdk/keyvault/keyvault-keys/src/cryptography/rsaCryptographyProvider.ts b/sdk/keyvault/keyvault-keys/src/cryptography/rsaCryptographyProvider.ts index fc52b1637697..f0979362a663 100644 --- a/sdk/keyvault/keyvault-keys/src/cryptography/rsaCryptographyProvider.ts +++ b/sdk/keyvault/keyvault-keys/src/cryptography/rsaCryptographyProvider.ts @@ -4,7 +4,7 @@ import { RSA_PKCS1_OAEP_PADDING, RSA_PKCS1_PADDING } from "constants"; import { publicEncrypt } from "node:crypto"; import { createVerify } from "./crypto.js"; -import { +import type { DecryptOptions, DecryptParameters, DecryptResult, @@ -24,11 +24,8 @@ import { WrapResult, } from "../index.js"; import { convertJWKtoPEM } from "./conversions.js"; -import { - CryptographyProvider, - CryptographyProviderOperation, - LocalCryptographyUnsupportedError, -} from "./models.js"; +import type { CryptographyProvider, CryptographyProviderOperation } from "./models.js"; +import { LocalCryptographyUnsupportedError } from "./models.js"; /** * An RSA cryptography provider supporting RSA algorithms. diff --git a/sdk/keyvault/keyvault-keys/src/cryptographyClient.ts b/sdk/keyvault/keyvault-keys/src/cryptographyClient.ts index 587311268280..1b262b5e53f2 100644 --- a/sdk/keyvault/keyvault-keys/src/cryptographyClient.ts +++ b/sdk/keyvault/keyvault-keys/src/cryptographyClient.ts @@ -1,17 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { +import type { OperationOptions } from "@azure/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { CryptographyClientOptions, GetKeyOptions, JsonWebKey, KeyOperation, KeyVaultKey, - KnownKeyOperations, } from "./keysModels.js"; -import { +import { KnownKeyOperations } from "./keysModels.js"; +import type { AesCbcEncryptParameters, AesCbcEncryptionAlgorithm, CryptographyClientKey, @@ -35,7 +35,7 @@ import { } from "./cryptographyClientModels.js"; import { RemoteCryptographyProvider } from "./cryptography/remoteCryptographyProvider.js"; import { randomBytes } from "./cryptography/crypto.js"; -import { CryptographyProvider, CryptographyProviderOperation } from "./cryptography/models.js"; +import type { CryptographyProvider, CryptographyProviderOperation } from "./cryptography/models.js"; import { RsaCryptographyProvider } from "./cryptography/rsaCryptographyProvider.js"; import { AesCryptographyProvider } from "./cryptography/aesCryptographyProvider.js"; import { tracingClient } from "./tracing.js"; diff --git a/sdk/keyvault/keyvault-keys/src/cryptographyClientModels.ts b/sdk/keyvault/keyvault-keys/src/cryptographyClientModels.ts index 95782a388a33..000c427a929b 100644 --- a/sdk/keyvault/keyvault-keys/src/cryptographyClientModels.ts +++ b/sdk/keyvault/keyvault-keys/src/cryptographyClientModels.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CryptographyOptions, KeyVaultKey } from "./keysModels.js"; +import type { CryptographyOptions, KeyVaultKey } from "./keysModels.js"; +import type { JsonWebKey } from "./generated/models/index.js"; import { JsonWebKeyEncryptionAlgorithm as EncryptionAlgorithm, - JsonWebKey, JsonWebKeyCurveName as KeyCurveName, KnownJsonWebKeyCurveName as KnownKeyCurveNames, KnownJsonWebKeySignatureAlgorithm as KnownSignatureAlgorithms, diff --git a/sdk/keyvault/keyvault-keys/src/index.ts b/sdk/keyvault/keyvault-keys/src/index.ts index d336945e7792..8ce14a5e806c 100644 --- a/sdk/keyvault/keyvault-keys/src/index.ts +++ b/sdk/keyvault/keyvault-keys/src/index.ts @@ -2,16 +2,16 @@ // Licensed under the MIT License. /// -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { logger } from "./log.js"; import { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; import { PollOperationState, PollerLike } from "@azure/core-lro"; +import type { GetKeysOptionalParams } from "./generated/models/index.js"; import { DeletionRecoveryLevel, - GetKeysOptionalParams, KnownDeletionRecoveryLevel, KnownJsonWebKeyType, } from "./generated/models/index.js"; diff --git a/sdk/keyvault/keyvault-keys/src/keysModels.ts b/sdk/keyvault/keyvault-keys/src/keysModels.ts index cb6e083083c7..64d56c1ec893 100644 --- a/sdk/keyvault/keyvault-keys/src/keysModels.ts +++ b/sdk/keyvault/keyvault-keys/src/keysModels.ts @@ -1,17 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as coreClient from "@azure/core-client"; -import { ExtendedCommonClientOptions } from "@azure/core-http-compat"; +import type * as coreClient from "@azure/core-client"; +import type { ExtendedCommonClientOptions } from "@azure/core-http-compat"; +import type { DeletionRecoveryLevel } from "./generated/models/index.js"; import { - DeletionRecoveryLevel, JsonWebKeyOperation as KeyOperation, JsonWebKeyType as KeyType, KnownJsonWebKeyType as KnownKeyTypes, } from "./generated/models/index.js"; -import { KeyCurveName } from "./cryptographyClientModels.js"; +import type { KeyCurveName } from "./cryptographyClientModels.js"; export { KeyType, KnownKeyTypes, KeyOperation }; diff --git a/sdk/keyvault/keyvault-keys/src/lro/delete/operation.ts b/sdk/keyvault/keyvault-keys/src/lro/delete/operation.ts index edfe04725551..dbbba177f10a 100644 --- a/sdk/keyvault/keyvault-keys/src/lro/delete/operation.ts +++ b/sdk/keyvault/keyvault-keys/src/lro/delete/operation.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { OperationOptions } from "@azure/core-client"; -import { KeyVaultClient } from "../../generated/keyVaultClient.js"; -import { DeleteKeyOptions, DeletedKey, GetDeletedKeyOptions } from "../../keysModels.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { OperationOptions } from "@azure/core-client"; +import type { KeyVaultClient } from "../../generated/keyVaultClient.js"; +import type { DeleteKeyOptions, DeletedKey, GetDeletedKeyOptions } from "../../keysModels.js"; import { tracingClient } from "../../tracing.js"; import { getKeyFromKeyBundle } from "../../transformations.js"; -import { KeyVaultKeyPollOperation, KeyVaultKeyPollOperationState } from "../keyVaultKeyPoller.js"; +import type { KeyVaultKeyPollOperationState } from "../keyVaultKeyPoller.js"; +import { KeyVaultKeyPollOperation } from "../keyVaultKeyPoller.js"; /** * An interface representing the state of a delete key's poll operation diff --git a/sdk/keyvault/keyvault-keys/src/lro/delete/poller.ts b/sdk/keyvault/keyvault-keys/src/lro/delete/poller.ts index fb6ec251c1f6..2c8dd8f7326e 100644 --- a/sdk/keyvault/keyvault-keys/src/lro/delete/poller.ts +++ b/sdk/keyvault/keyvault-keys/src/lro/delete/poller.ts @@ -1,9 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DeleteKeyPollOperation, DeleteKeyPollOperationState } from "./operation.js"; -import { DeletedKey } from "../../keysModels.js"; -import { KeyVaultKeyPoller, KeyVaultKeyPollerOptions } from "../keyVaultKeyPoller.js"; +import type { DeleteKeyPollOperationState } from "./operation.js"; +import { DeleteKeyPollOperation } from "./operation.js"; +import type { DeletedKey } from "../../keysModels.js"; +import type { KeyVaultKeyPollerOptions } from "../keyVaultKeyPoller.js"; +import { KeyVaultKeyPoller } from "../keyVaultKeyPoller.js"; /** * Class that creates a poller that waits until a key finishes being deleted. diff --git a/sdk/keyvault/keyvault-keys/src/lro/keyVaultKeyPoller.ts b/sdk/keyvault/keyvault-keys/src/lro/keyVaultKeyPoller.ts index 0704bcf8d2d3..c456de11d19a 100644 --- a/sdk/keyvault/keyvault-keys/src/lro/keyVaultKeyPoller.ts +++ b/sdk/keyvault/keyvault-keys/src/lro/keyVaultKeyPoller.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; import { delay } from "@azure/core-util"; -import { Poller, PollOperation, PollOperationState } from "@azure/core-lro"; -import { KeyVaultClient } from "../generated/keyVaultClient.js"; +import type { PollOperation, PollOperationState } from "@azure/core-lro"; +import { Poller } from "@azure/core-lro"; +import type { KeyVaultClient } from "../generated/keyVaultClient.js"; /** * Common parameters to a Key Vault Key Poller. diff --git a/sdk/keyvault/keyvault-keys/src/lro/recover/operation.ts b/sdk/keyvault/keyvault-keys/src/lro/recover/operation.ts index 52a53b8ec804..e57bab8916c1 100644 --- a/sdk/keyvault/keyvault-keys/src/lro/recover/operation.ts +++ b/sdk/keyvault/keyvault-keys/src/lro/recover/operation.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { OperationOptions } from "@azure/core-client"; -import { KeyVaultClient } from "../../generated/keyVaultClient.js"; -import { GetKeyOptions, KeyVaultKey, RecoverDeletedKeyOptions } from "../../keysModels.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { OperationOptions } from "@azure/core-client"; +import type { KeyVaultClient } from "../../generated/keyVaultClient.js"; +import type { GetKeyOptions, KeyVaultKey, RecoverDeletedKeyOptions } from "../../keysModels.js"; import { tracingClient } from "../../tracing.js"; import { getKeyFromKeyBundle } from "../../transformations.js"; -import { KeyVaultKeyPollOperation, KeyVaultKeyPollOperationState } from "../keyVaultKeyPoller.js"; +import type { KeyVaultKeyPollOperationState } from "../keyVaultKeyPoller.js"; +import { KeyVaultKeyPollOperation } from "../keyVaultKeyPoller.js"; /** * An interface representing the state of a delete key's poll operation diff --git a/sdk/keyvault/keyvault-keys/src/lro/recover/poller.ts b/sdk/keyvault/keyvault-keys/src/lro/recover/poller.ts index 453a8106d26f..ef09103c44f0 100644 --- a/sdk/keyvault/keyvault-keys/src/lro/recover/poller.ts +++ b/sdk/keyvault/keyvault-keys/src/lro/recover/poller.ts @@ -1,12 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - RecoverDeletedKeyPollOperation, - RecoverDeletedKeyPollOperationState, -} from "./operation.js"; -import { KeyVaultKey } from "../../keysModels.js"; -import { KeyVaultKeyPoller, KeyVaultKeyPollerOptions } from "../keyVaultKeyPoller.js"; +import type { RecoverDeletedKeyPollOperationState } from "./operation.js"; +import { RecoverDeletedKeyPollOperation } from "./operation.js"; +import type { KeyVaultKey } from "../../keysModels.js"; +import type { KeyVaultKeyPollerOptions } from "../keyVaultKeyPoller.js"; +import { KeyVaultKeyPoller } from "../keyVaultKeyPoller.js"; /** * Class that deletes a poller that waits until a key finishes being deleted diff --git a/sdk/keyvault/keyvault-keys/src/transformations.ts b/sdk/keyvault/keyvault-keys/src/transformations.ts index 421b5868e00b..cff6b25b62ab 100644 --- a/sdk/keyvault/keyvault-keys/src/transformations.ts +++ b/sdk/keyvault/keyvault-keys/src/transformations.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ActionType } from "./generated/index.js"; -import { +import type { ActionType } from "./generated/index.js"; +import type { DeletedKeyBundle, DeletedKeyItem, KeyRotationPolicy as GeneratedPolicy, @@ -12,7 +12,7 @@ import { LifetimeActions, } from "./generated/models/index.js"; import { parseKeyVaultKeyIdentifier } from "./identifier.js"; -import { +import type { DeletedKey, KeyProperties, KeyRotationPolicy, diff --git a/sdk/keyvault/keyvault-keys/test/internal/aesCryptography.spec.ts b/sdk/keyvault/keyvault-keys/test/internal/aesCryptography.spec.ts index 6076b72a4999..1ead945c7d2a 100644 --- a/sdk/keyvault/keyvault-keys/test/internal/aesCryptography.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/internal/aesCryptography.spec.ts @@ -1,18 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AesCbcEncryptionAlgorithm, - CryptographyClient, JsonWebKey, KeyClient, KeyVaultKey, } from "../../src/index.js"; +import { CryptographyClient } from "../../src/index.js"; import { getKey, stringToUint8Array, uint8ArrayToString } from "../public/utils/crypto.js"; import TestClient from "../public/utils/testClient.js"; import { authenticate, envSetupForPlayback } from "../public/utils/testAuthentication.js"; import { Recorder, env, isLiveMode } from "@azure-tools/test-recorder"; import { RemoteCryptographyProvider } from "../../src/cryptography/remoteCryptographyProvider.js"; -import { ClientSecretCredential } from "@azure/identity"; +import type { ClientSecretCredential } from "@azure/identity"; import { describe, it, expect, beforeEach, afterEach } from "vitest"; describe("AesCryptographyProvider internal tests", function () { diff --git a/sdk/keyvault/keyvault-keys/test/internal/crypto.spec.ts b/sdk/keyvault/keyvault-keys/test/internal/crypto.spec.ts index f94e4f6558fb..597ea2830d6f 100644 --- a/sdk/keyvault/keyvault-keys/test/internal/crypto.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/internal/crypto.spec.ts @@ -1,22 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; -import { - CryptographyClient, - DecryptParameters, - EncryptParameters, - KeyClient, - KeyVaultKey, -} from "../../src/index.js"; +import type { TokenCredential } from "@azure/core-auth"; +import type { DecryptParameters, EncryptParameters, KeyVaultKey } from "../../src/index.js"; +import { CryptographyClient, KeyClient } from "../../src/index.js"; import { RsaCryptographyProvider } from "../../src/cryptography/rsaCryptographyProvider.js"; -import { JsonWebKey } from "../../src/index.js"; +import type { JsonWebKey } from "../../src/index.js"; import { stringToUint8Array } from "../public/utils/crypto.js"; -import { CryptographyProvider } from "../../src/cryptography/models.js"; +import type { CryptographyProvider } from "../../src/cryptography/models.js"; import { RemoteCryptographyProvider } from "../../src/cryptography/remoteCryptographyProvider.js"; import { NoOpCredential } from "@azure-tools/test-credential"; -import { RestError, SendRequest, createHttpHeaders } from "@azure/core-rest-pipeline"; -import { describe, it, assert, expect, vi, beforeEach, afterEach, MockInstance } from "vitest"; +import type { SendRequest } from "@azure/core-rest-pipeline"; +import { RestError, createHttpHeaders } from "@azure/core-rest-pipeline"; +import type { MockInstance } from "vitest"; +import { describe, it, assert, expect, vi, beforeEach, afterEach } from "vitest"; describe("internal crypto tests", () => { const tokenCredential: TokenCredential = { diff --git a/sdk/keyvault/keyvault-keys/test/internal/recoverBackupRestore.spec.ts b/sdk/keyvault/keyvault-keys/test/internal/recoverBackupRestore.spec.ts index 070d0ead9f89..dfb0f39f9576 100644 --- a/sdk/keyvault/keyvault-keys/test/internal/recoverBackupRestore.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/internal/recoverBackupRestore.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyClient } from "../../src/index.js"; +import type { KeyClient } from "../../src/index.js"; import { testPollerProperties } from "../public/utils/recorderUtils.js"; import { Recorder, env, isPlaybackMode, isRecordMode } from "@azure-tools/test-recorder"; import { authenticate, envSetupForPlayback } from "../public/utils/testAuthentication.js"; -import TestClient from "../public/utils/testClient.js"; +import type TestClient from "../public/utils/testClient.js"; import { RestoreKeyBackupPoller } from "../public/utils/lro/restore/poller.js"; import { describe, it, assert, beforeEach, afterEach } from "vitest"; diff --git a/sdk/keyvault/keyvault-keys/test/internal/serviceVersionParameter.spec.ts b/sdk/keyvault/keyvault-keys/test/internal/serviceVersionParameter.spec.ts index 267e499a22ce..ef087ea2d2db 100644 --- a/sdk/keyvault/keyvault-keys/test/internal/serviceVersionParameter.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/internal/serviceVersionParameter.spec.ts @@ -2,15 +2,16 @@ // Licensed under the MIT License. import { KeyClient } from "../../src/index.js"; import { LATEST_API_VERSION } from "../../src/keysModels.js"; -import { +import type { HttpClient, PipelineRequest, PipelineResponse, SendRequest, - createHttpHeaders, } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; import { ClientSecretCredential } from "@azure/identity"; -import { describe, it, assert, expect, vi, beforeEach, afterEach, MockInstance } from "vitest"; +import type { MockInstance } from "vitest"; +import { describe, it, assert, expect, vi, beforeEach, afterEach } from "vitest"; describe("The Keys client should set the serviceVersion", () => { const keyVaultUrl = `https://keyvaultname.vault.azure.net`; diff --git a/sdk/keyvault/keyvault-keys/test/internal/transformations.spec.ts b/sdk/keyvault/keyvault-keys/test/internal/transformations.spec.ts index 3fdbee1da7ca..b0de5fde0a5b 100644 --- a/sdk/keyvault/keyvault-keys/test/internal/transformations.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/internal/transformations.spec.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { DeletedKeyBundle, DeletedKeyItem, KeyRotationPolicy as GeneratedKeyRotationPolicy, KeyBundle, } from "../../src/generated/index.js"; -import { +import type { DeletedKey, KeyProperties, KeyRotationPolicy, diff --git a/sdk/keyvault/keyvault-keys/test/internal/userAgent.spec.ts b/sdk/keyvault/keyvault-keys/test/internal/userAgent.spec.ts index 129de717a80e..ad24559d7b48 100644 --- a/sdk/keyvault/keyvault-keys/test/internal/userAgent.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/internal/userAgent.spec.ts @@ -3,7 +3,7 @@ import { KeyClient } from "../../src/index.js"; import { SDK_VERSION } from "../../src/constants.js"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { describe, it, assert } from "vitest"; describe("Keys client's user agent", () => { diff --git a/sdk/keyvault/keyvault-keys/test/public/crypto.hsm.spec.ts b/sdk/keyvault/keyvault-keys/test/public/crypto.hsm.spec.ts index 6285e7bd8d4c..bb8e8f6fc0f0 100644 --- a/sdk/keyvault/keyvault-keys/test/public/crypto.hsm.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/public/crypto.hsm.spec.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { isLiveMode, Recorder } from "@azure-tools/test-recorder"; -import { ClientSecretCredential } from "@azure/identity"; -import { NoOpCredential } from "@azure-tools/test-credential"; +import type { ClientSecretCredential } from "@azure/identity"; +import type { NoOpCredential } from "@azure-tools/test-credential"; -import { CryptographyClient, KeyClient, KeyVaultKey } from "../../src/index.js"; +import type { KeyClient, KeyVaultKey } from "../../src/index.js"; +import { CryptographyClient } from "../../src/index.js"; import { authenticate, envSetupForPlayback } from "./utils/testAuthentication.js"; import { stringToUint8Array, uint8ArrayToString } from "./utils/crypto.js"; import TestClient from "./utils/testClient.js"; diff --git a/sdk/keyvault/keyvault-keys/test/public/import.spec.ts b/sdk/keyvault/keyvault-keys/test/public/import.spec.ts index 75315f569756..4a0226c883ad 100644 --- a/sdk/keyvault/keyvault-keys/test/public/import.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/public/import.spec.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { Recorder, env } from "@azure-tools/test-recorder"; -import { KeyClient } from "../../src/index.js"; +import type { KeyClient } from "../../src/index.js"; import { authenticate, envSetupForPlayback } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; import { createRsaKey } from "./utils/crypto.js"; import { describe, it, assert, expect, vi, beforeEach, afterEach } from "vitest"; diff --git a/sdk/keyvault/keyvault-keys/test/public/keyClient.hsm.spec.ts b/sdk/keyvault/keyvault-keys/test/public/keyClient.hsm.spec.ts index f7b529c33d91..ac12d427fecf 100644 --- a/sdk/keyvault/keyvault-keys/test/public/keyClient.hsm.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/public/keyClient.hsm.spec.ts @@ -2,10 +2,11 @@ // Licensed under the MIT License. import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; -import { KeyClient } from "../../src/index.js"; +import type { KeyClient } from "../../src/index.js"; import { authenticate, envSetupForPlayback } from "./utils/testAuthentication.js"; import TestClient from "./utils/testClient.js"; -import { CreateOctKeyOptions, KnownKeyExportEncryptionAlgorithm } from "../../src/keysModels.js"; +import type { CreateOctKeyOptions } from "../../src/keysModels.js"; +import { KnownKeyExportEncryptionAlgorithm } from "../../src/keysModels.js"; import { createRsaKey, stringToUint8Array, uint8ArrayToString } from "./utils/crypto.js"; import { createPipelineRequest, createDefaultHttpClient } from "@azure/core-rest-pipeline"; import { describe, it, assert, expect, beforeEach, afterEach } from "vitest"; diff --git a/sdk/keyvault/keyvault-keys/test/public/keyClient.spec.ts b/sdk/keyvault/keyvault-keys/test/public/keyClient.spec.ts index 9e55bc139edf..40ebd5b03260 100644 --- a/sdk/keyvault/keyvault-keys/test/public/keyClient.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/public/keyClient.spec.ts @@ -3,7 +3,7 @@ import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; import { createDefaultHttpClient, createPipelineRequest } from "@azure/core-rest-pipeline"; -import { +import type { CreateEcKeyOptions, GetKeyOptions, KeyClient, @@ -11,7 +11,7 @@ import { } from "../../src/index.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate, envSetupForPlayback } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; import { stringToUint8Array, uint8ArrayToString } from "./utils/crypto.js"; import { describe, it, assert, expect, vi, beforeEach, afterEach } from "vitest"; diff --git a/sdk/keyvault/keyvault-keys/test/public/list.spec.ts b/sdk/keyvault/keyvault-keys/test/public/list.spec.ts index 5a7ba7a8adb7..339917e8baad 100644 --- a/sdk/keyvault/keyvault-keys/test/public/list.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/public/list.spec.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { Recorder, env, isRecordMode } from "@azure-tools/test-recorder"; -import { KeyClient } from "../../src/index.js"; +import type { KeyClient } from "../../src/index.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate, envSetupForPlayback } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; import { describe, it, assert, expect, vi, beforeEach, afterEach } from "vitest"; describe("Keys client - list keys in various ways", () => { diff --git a/sdk/keyvault/keyvault-keys/test/public/lro.delete.spec.ts b/sdk/keyvault/keyvault-keys/test/public/lro.delete.spec.ts index bb27a2bc5ffb..d0f983e583a6 100644 --- a/sdk/keyvault/keyvault-keys/test/public/lro.delete.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/public/lro.delete.spec.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { Recorder, env } from "@azure-tools/test-recorder"; -import { DeletedKey, KeyClient } from "../../src/index.js"; +import type { DeletedKey, KeyClient } from "../../src/index.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate, envSetupForPlayback } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; import { describe, it, assert, expect, vi, beforeEach, afterEach } from "vitest"; describe("Keys client - Long Running Operations - delete", () => { diff --git a/sdk/keyvault/keyvault-keys/test/public/lro.recoverDelete.spec.ts b/sdk/keyvault/keyvault-keys/test/public/lro.recoverDelete.spec.ts index 7afa1dc31fdf..41c291e39994 100644 --- a/sdk/keyvault/keyvault-keys/test/public/lro.recoverDelete.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/public/lro.recoverDelete.spec.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { Recorder, env } from "@azure-tools/test-recorder"; -import { DeletedKey, KeyClient } from "../../src/index.js"; +import type { DeletedKey, KeyClient } from "../../src/index.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate, envSetupForPlayback } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; import { describe, it, assert, expect, vi, beforeEach, afterEach } from "vitest"; describe("Keys client - Long Running Operations - recoverDelete", () => { diff --git a/sdk/keyvault/keyvault-keys/test/public/node/crypto.spec.ts b/sdk/keyvault/keyvault-keys/test/public/node/crypto.spec.ts index 2e7c4e2ba75a..931ded86b570 100644 --- a/sdk/keyvault/keyvault-keys/test/public/node/crypto.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/public/node/crypto.spec.ts @@ -2,11 +2,12 @@ // Licensed under the MIT License. import { createHash } from "node:crypto"; import { Recorder, env, isLiveMode } from "@azure-tools/test-recorder"; -import { ClientSecretCredential } from "@azure/identity"; +import type { ClientSecretCredential } from "@azure/identity"; -import { CryptographyClient, KeyClient, KeyVaultKey } from "../../../src/index.js"; +import type { KeyClient, KeyVaultKey } from "../../../src/index.js"; +import { CryptographyClient } from "../../../src/index.js"; import { authenticate, envSetupForPlayback } from "../utils/testAuthentication.js"; -import TestClient from "../utils/testClient.js"; +import type TestClient from "../utils/testClient.js"; import { stringToUint8Array, uint8ArrayToString } from "./../utils/crypto.js"; import { RsaCryptographyProvider } from "../../../src/cryptography/rsaCryptographyProvider.js"; import { describe, it, assert, expect, vi, beforeEach, afterEach } from "vitest"; diff --git a/sdk/keyvault/keyvault-keys/test/public/node/localCryptography.spec.ts b/sdk/keyvault/keyvault-keys/test/public/node/localCryptography.spec.ts index 31c98a04c80e..c12bae6ef93c 100644 --- a/sdk/keyvault/keyvault-keys/test/public/node/localCryptography.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/public/node/localCryptography.spec.ts @@ -1,16 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - CryptographyClient, - KeyClient, - KeyVaultKey, - SignatureAlgorithm, -} from "../../../src/index.js"; +import type { KeyClient, KeyVaultKey, SignatureAlgorithm } from "../../../src/index.js"; +import { CryptographyClient } from "../../../src/index.js"; import { createHash } from "node:crypto"; import { authenticate, envSetupForPlayback } from "../utils/testAuthentication.js"; -import TestClient from "../utils/testClient.js"; +import type TestClient from "../utils/testClient.js"; import { Recorder, env, isLiveMode } from "@azure-tools/test-recorder"; -import { ClientSecretCredential } from "@azure/identity"; +import type { ClientSecretCredential } from "@azure/identity"; import { RsaCryptographyProvider } from "../../../src/cryptography/rsaCryptographyProvider.js"; import { describe, it, assert, expect, vi, beforeEach, afterEach } from "vitest"; diff --git a/sdk/keyvault/keyvault-keys/test/public/utils/crypto.ts b/sdk/keyvault/keyvault-keys/test/public/utils/crypto.ts index 7b1ad3ffc6c6..8847a05d92e8 100644 --- a/sdk/keyvault/keyvault-keys/test/public/utils/crypto.ts +++ b/sdk/keyvault/keyvault-keys/test/public/utils/crypto.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { JsonWebKey } from "../../../src/index.js"; +import type { JsonWebKey } from "../../../src/index.js"; export function stringToUint8Array(str: string): Uint8Array { return new Uint8Array(Buffer.from(str)); diff --git a/sdk/keyvault/keyvault-keys/test/public/utils/lro/restore/operation.ts b/sdk/keyvault/keyvault-keys/test/public/utils/lro/restore/operation.ts index 6464eb216744..589447c0eee5 100644 --- a/sdk/keyvault/keyvault-keys/test/public/utils/lro/restore/operation.ts +++ b/sdk/keyvault/keyvault-keys/test/public/utils/lro/restore/operation.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { PollOperation, PollOperationState } from "@azure/core-lro"; -import { OperationOptions } from "@azure/core-client"; -import { KeyPollerOptions, KeyVaultKey } from "../../../../../src/index.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { PollOperation, PollOperationState } from "@azure/core-lro"; +import type { OperationOptions } from "@azure/core-client"; +import type { KeyPollerOptions, KeyVaultKey } from "../../../../../src/index.js"; /** * Options sent to the beginRestoreKeyBackup method. diff --git a/sdk/keyvault/keyvault-keys/test/public/utils/lro/restore/poller.ts b/sdk/keyvault/keyvault-keys/test/public/utils/lro/restore/poller.ts index 7dea129a501d..1dc2ceea01aa 100644 --- a/sdk/keyvault/keyvault-keys/test/public/utils/lro/restore/poller.ts +++ b/sdk/keyvault/keyvault-keys/test/public/utils/lro/restore/poller.ts @@ -1,15 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; import { delay } from "@azure/core-util"; import { Poller } from "@azure/core-lro"; -import { - RestoreKeyBackupPollOperationState, - TestKeyClientInterface, - makeRestoreKeyBackupPollOperation, -} from "./operation.js"; -import { KeyVaultKey } from "../../../../../src/index.js"; +import type { RestoreKeyBackupPollOperationState, TestKeyClientInterface } from "./operation.js"; +import { makeRestoreKeyBackupPollOperation } from "./operation.js"; +import type { KeyVaultKey } from "../../../../../src/index.js"; export interface RestoreKeyBackupPollerOptions { client: TestKeyClientInterface; diff --git a/sdk/keyvault/keyvault-keys/test/public/utils/testAuthentication.ts b/sdk/keyvault/keyvault-keys/test/public/utils/testAuthentication.ts index 244569f0d9b4..678f52f44ceb 100644 --- a/sdk/keyvault/keyvault-keys/test/public/utils/testAuthentication.ts +++ b/sdk/keyvault/keyvault-keys/test/public/utils/testAuthentication.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { KeyClient } from "../../../src/index.js"; -import { Recorder, env, assertEnvironmentVariable, isLiveMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, assertEnvironmentVariable, isLiveMode } from "@azure-tools/test-recorder"; import { uniqueString } from "./recorderUtils.js"; import TestClient from "./testClient.js"; import { createTestCredential } from "@azure-tools/test-credential"; diff --git a/sdk/keyvault/keyvault-keys/test/public/utils/testClient.ts b/sdk/keyvault/keyvault-keys/test/public/utils/testClient.ts index 1a6e79be0c71..2cd3e51e95b1 100644 --- a/sdk/keyvault/keyvault-keys/test/public/utils/testClient.ts +++ b/sdk/keyvault/keyvault-keys/test/public/utils/testClient.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { testPollerProperties } from "./recorderUtils.js"; -import { KeyClient } from "../../../src/index.js"; +import type { KeyClient } from "../../../src/index.js"; export interface TestClientInterface { client: KeyClient; diff --git a/sdk/keyvault/keyvault-secrets/review/keyvault-secrets.api.md b/sdk/keyvault/keyvault-secrets/review/keyvault-secrets.api.md index 6a4659116817..daaffa7d8c05 100644 --- a/sdk/keyvault/keyvault-secrets/review/keyvault-secrets.api.md +++ b/sdk/keyvault/keyvault-secrets/review/keyvault-secrets.api.md @@ -5,13 +5,13 @@ ```ts import { AzureLogger } from '@azure/logger'; -import * as coreClient from '@azure/core-client'; -import { ExtendedCommonClientOptions } from '@azure/core-http-compat'; +import type * as coreClient from '@azure/core-client'; +import type { ExtendedCommonClientOptions } from '@azure/core-http-compat'; import { PagedAsyncIterableIterator } from '@azure/core-paging'; import { PageSettings } from '@azure/core-paging'; import { PollerLike } from '@azure/core-lro'; import { PollOperationState } from '@azure/core-lro'; -import { TokenCredential } from '@azure/core-auth'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface BackupSecretOptions extends coreClient.OperationOptions { diff --git a/sdk/keyvault/keyvault-secrets/src/index.ts b/sdk/keyvault/keyvault-secrets/src/index.ts index b458bda27c2f..0f310bfd5fed 100644 --- a/sdk/keyvault/keyvault-secrets/src/index.ts +++ b/sdk/keyvault/keyvault-secrets/src/index.ts @@ -2,19 +2,18 @@ // Licensed under the MIT License. /// -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { logger } from "./log.js"; import { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; import { PollOperationState, PollerLike } from "@azure/core-lro"; -import { +import type { DeletedSecretBundle, - DeletionRecoveryLevel, GetSecretsOptionalParams, - KnownDeletionRecoveryLevel, SecretBundle, } from "./generated/models/index.js"; +import { DeletionRecoveryLevel, KnownDeletionRecoveryLevel } from "./generated/models/index.js"; import { KeyVaultClient } from "./generated/keyVaultClient.js"; import { keyVaultAuthenticationPolicy } from "@azure/keyvault-common"; diff --git a/sdk/keyvault/keyvault-secrets/src/lro/delete/operation.ts b/sdk/keyvault/keyvault-secrets/src/lro/delete/operation.ts index 1ca15cf9454b..84f3724effa9 100644 --- a/sdk/keyvault/keyvault-secrets/src/lro/delete/operation.ts +++ b/sdk/keyvault/keyvault-secrets/src/lro/delete/operation.ts @@ -1,19 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { DeleteSecretOptions, DeletedSecret, GetDeletedSecretOptions, } from "../../secretsModels.js"; -import { - KeyVaultSecretPollOperation, - KeyVaultSecretPollOperationState, -} from "../keyVaultSecretPoller.js"; -import { KeyVaultClient } from "../../generated/keyVaultClient.js"; +import type { KeyVaultSecretPollOperationState } from "../keyVaultSecretPoller.js"; +import { KeyVaultSecretPollOperation } from "../keyVaultSecretPoller.js"; +import type { KeyVaultClient } from "../../generated/keyVaultClient.js"; import { getSecretFromSecretBundle } from "../../transformations.js"; -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; import { tracingClient } from "../../tracing.js"; /** diff --git a/sdk/keyvault/keyvault-secrets/src/lro/delete/poller.ts b/sdk/keyvault/keyvault-secrets/src/lro/delete/poller.ts index 25cab41933e6..ebfb82a305f2 100644 --- a/sdk/keyvault/keyvault-secrets/src/lro/delete/poller.ts +++ b/sdk/keyvault/keyvault-secrets/src/lro/delete/poller.ts @@ -1,9 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DeleteSecretPollOperation, DeleteSecretPollOperationState } from "./operation.js"; -import { DeletedSecret } from "../../secretsModels.js"; -import { KeyVaultSecretPoller, KeyVaultSecretPollerOptions } from "../keyVaultSecretPoller.js"; +import type { DeleteSecretPollOperationState } from "./operation.js"; +import { DeleteSecretPollOperation } from "./operation.js"; +import type { DeletedSecret } from "../../secretsModels.js"; +import type { KeyVaultSecretPollerOptions } from "../keyVaultSecretPoller.js"; +import { KeyVaultSecretPoller } from "../keyVaultSecretPoller.js"; /** * Class that creates a poller that waits until a secret finishes being deleted. diff --git a/sdk/keyvault/keyvault-secrets/src/lro/keyVaultSecretPoller.ts b/sdk/keyvault/keyvault-secrets/src/lro/keyVaultSecretPoller.ts index 278ffdc611ba..5c534a3454cb 100644 --- a/sdk/keyvault/keyvault-secrets/src/lro/keyVaultSecretPoller.ts +++ b/sdk/keyvault/keyvault-secrets/src/lro/keyVaultSecretPoller.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { PollOperation, PollOperationState, Poller } from "@azure/core-lro"; -import { KeyVaultClient } from "../generated/keyVaultClient.js"; +import type { OperationOptions } from "@azure/core-client"; +import type { PollOperation, PollOperationState } from "@azure/core-lro"; +import { Poller } from "@azure/core-lro"; +import type { KeyVaultClient } from "../generated/keyVaultClient.js"; import { delay } from "@azure/core-util"; /** diff --git a/sdk/keyvault/keyvault-secrets/src/lro/recover/operation.ts b/sdk/keyvault/keyvault-secrets/src/lro/recover/operation.ts index 94281fab7f9a..6f8ff8176443 100644 --- a/sdk/keyvault/keyvault-secrets/src/lro/recover/operation.ts +++ b/sdk/keyvault/keyvault-secrets/src/lro/recover/operation.ts @@ -1,20 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { DeletedSecret, GetSecretOptions, KeyVaultSecret, SecretProperties, } from "../../secretsModels.js"; -import { - KeyVaultSecretPollOperation, - KeyVaultSecretPollOperationState, -} from "../keyVaultSecretPoller.js"; -import { KeyVaultClient } from "../../generated/keyVaultClient.js"; +import type { KeyVaultSecretPollOperationState } from "../keyVaultSecretPoller.js"; +import { KeyVaultSecretPollOperation } from "../keyVaultSecretPoller.js"; +import type { KeyVaultClient } from "../../generated/keyVaultClient.js"; import { getSecretFromSecretBundle } from "../../transformations.js"; -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; import { tracingClient } from "../../tracing.js"; /** diff --git a/sdk/keyvault/keyvault-secrets/src/lro/recover/poller.ts b/sdk/keyvault/keyvault-secrets/src/lro/recover/poller.ts index 87dc8c9a9eec..441fc24d17ea 100644 --- a/sdk/keyvault/keyvault-secrets/src/lro/recover/poller.ts +++ b/sdk/keyvault/keyvault-secrets/src/lro/recover/poller.ts @@ -1,12 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - RecoverDeletedSecretPollOperation, - RecoverDeletedSecretPollOperationState, -} from "./operation.js"; -import { SecretProperties } from "../../secretsModels.js"; -import { KeyVaultSecretPoller, KeyVaultSecretPollerOptions } from "../keyVaultSecretPoller.js"; +import type { RecoverDeletedSecretPollOperationState } from "./operation.js"; +import { RecoverDeletedSecretPollOperation } from "./operation.js"; +import type { SecretProperties } from "../../secretsModels.js"; +import type { KeyVaultSecretPollerOptions } from "../keyVaultSecretPoller.js"; +import { KeyVaultSecretPoller } from "../keyVaultSecretPoller.js"; /** * Class that deletes a poller that waits until a secret finishes being deleted diff --git a/sdk/keyvault/keyvault-secrets/src/secretsModels.ts b/sdk/keyvault/keyvault-secrets/src/secretsModels.ts index be6f8ab75400..9863b8fd14b7 100644 --- a/sdk/keyvault/keyvault-secrets/src/secretsModels.ts +++ b/sdk/keyvault/keyvault-secrets/src/secretsModels.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as coreClient from "@azure/core-client"; -import { DeletionRecoveryLevel } from "./generated/models/index.js"; -import { ExtendedCommonClientOptions } from "@azure/core-http-compat"; +import type * as coreClient from "@azure/core-client"; +import type { DeletionRecoveryLevel } from "./generated/models/index.js"; +import type { ExtendedCommonClientOptions } from "@azure/core-http-compat"; /** * The latest supported KeyVault service API version diff --git a/sdk/keyvault/keyvault-secrets/src/transformations.ts b/sdk/keyvault/keyvault-secrets/src/transformations.ts index 09d2385f743a..96e77317ab05 100644 --- a/sdk/keyvault/keyvault-secrets/src/transformations.ts +++ b/sdk/keyvault/keyvault-secrets/src/transformations.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DeletedSecretBundle, SecretBundle } from "./generated/models/index.js"; +import type { DeletedSecretBundle, SecretBundle } from "./generated/models/index.js"; import { parseKeyVaultSecretIdentifier } from "./identifier.js"; -import { DeletedSecret, KeyVaultSecret } from "./secretsModels.js"; +import type { DeletedSecret, KeyVaultSecret } from "./secretsModels.js"; /** * @internal diff --git a/sdk/keyvault/keyvault-secrets/test/internal/serviceVersionParameter.spec.ts b/sdk/keyvault/keyvault-secrets/test/internal/serviceVersionParameter.spec.ts index 60405a92ea90..4be4cbc60c53 100644 --- a/sdk/keyvault/keyvault-secrets/test/internal/serviceVersionParameter.spec.ts +++ b/sdk/keyvault/keyvault-secrets/test/internal/serviceVersionParameter.spec.ts @@ -1,14 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - createHttpHeaders, +import type { HttpClient, PipelineRequest, PipelineResponse, SendRequest, } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; import { ClientSecretCredential } from "@azure/identity"; -import { afterEach, beforeEach, describe, expect, it, MockInstance, vi } from "vitest"; +import type { MockInstance } from "vitest"; +import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; import { SecretClient } from "../../src/index.js"; import { LATEST_API_VERSION } from "../../src/secretsModels.js"; diff --git a/sdk/keyvault/keyvault-secrets/test/internal/transformations.spec.ts b/sdk/keyvault/keyvault-secrets/test/internal/transformations.spec.ts index 1cb083f66f1e..1e25c37117a6 100644 --- a/sdk/keyvault/keyvault-secrets/test/internal/transformations.spec.ts +++ b/sdk/keyvault/keyvault-secrets/test/internal/transformations.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DeletedSecret, KeyVaultSecret } from "../../src/index.js"; -import { DeletedSecretBundle, SecretBundle } from "../../src/generated/index.js"; +import type { DeletedSecret, KeyVaultSecret } from "../../src/index.js"; +import type { DeletedSecretBundle, SecretBundle } from "../../src/generated/index.js"; import { getSecretFromSecretBundle } from "../../src/transformations.js"; import { describe, it, assert } from "vitest"; diff --git a/sdk/keyvault/keyvault-secrets/test/internal/userAgent.spec.ts b/sdk/keyvault/keyvault-secrets/test/internal/userAgent.spec.ts index f5f3e34e6851..861f2ab1c2d1 100644 --- a/sdk/keyvault/keyvault-secrets/test/internal/userAgent.spec.ts +++ b/sdk/keyvault/keyvault-secrets/test/internal/userAgent.spec.ts @@ -3,7 +3,7 @@ import { SDK_VERSION } from "../../src/constants.js"; import { SecretClient } from "../../src/index.js"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { describe, it, assert } from "vitest"; describe("Secrets client's user agent (only in Node, because of fs)", () => { diff --git a/sdk/keyvault/keyvault-secrets/test/public/CRUD.spec.ts b/sdk/keyvault/keyvault-secrets/test/public/CRUD.spec.ts index 0c4618565b1a..d9870b5292c0 100644 --- a/sdk/keyvault/keyvault-secrets/test/public/CRUD.spec.ts +++ b/sdk/keyvault/keyvault-secrets/test/public/CRUD.spec.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { toSupportTracing } from "@azure-tools/test-utils-vitest"; import { afterEach, assert, beforeEach, describe, expect, it } from "vitest"; -import { SecretClient } from "../../src/index.js"; +import type { SecretClient } from "../../src/index.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; expect.extend({ toSupportTracing }); describe("Secret client - create, read, update and delete operations", () => { diff --git a/sdk/keyvault/keyvault-secrets/test/public/list.spec.ts b/sdk/keyvault/keyvault-secrets/test/public/list.spec.ts index 3c518d6accb9..0922ff0c157c 100644 --- a/sdk/keyvault/keyvault-secrets/test/public/list.spec.ts +++ b/sdk/keyvault/keyvault-secrets/test/public/list.spec.ts @@ -1,12 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, env, isLiveMode, isRecordMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isLiveMode, isRecordMode } from "@azure-tools/test-recorder"; import { afterEach, assert, beforeEach, describe, it } from "vitest"; -import { SecretClient } from "../../src/index.js"; +import type { SecretClient } from "../../src/index.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; describe("Secret client - list secrets in various ways", () => { const secretValue = "SECRET_VALUE"; diff --git a/sdk/keyvault/keyvault-secrets/test/public/lro.delete.spec.ts b/sdk/keyvault/keyvault-secrets/test/public/lro.delete.spec.ts index 1d451ef3cfd6..8a5c9f86d953 100644 --- a/sdk/keyvault/keyvault-secrets/test/public/lro.delete.spec.ts +++ b/sdk/keyvault/keyvault-secrets/test/public/lro.delete.spec.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { PollerStoppedError } from "@azure/core-lro"; import { afterEach, assert, beforeEach, describe, it } from "vitest"; -import { DeletedSecret, SecretClient } from "../../src/index.js"; +import type { DeletedSecret, SecretClient } from "../../src/index.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; describe("Secrets client - Long Running Operations - delete", () => { const secretPrefix = `lroDelete${env.CERTIFICATE_NAME || "SecretName"}`; diff --git a/sdk/keyvault/keyvault-secrets/test/public/lro.recover.spec.ts b/sdk/keyvault/keyvault-secrets/test/public/lro.recover.spec.ts index e12221158dd7..a0c49ddb8edd 100644 --- a/sdk/keyvault/keyvault-secrets/test/public/lro.recover.spec.ts +++ b/sdk/keyvault/keyvault-secrets/test/public/lro.recover.spec.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { PollerStoppedError } from "@azure/core-lro"; import { afterEach, assert, beforeEach, describe, it } from "vitest"; -import { SecretClient, SecretProperties } from "../../src/index.js"; +import type { SecretClient, SecretProperties } from "../../src/index.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; describe("Secrets client - Long Running Operations - recoverDelete", () => { const secretPrefix = `lroRecover${env.CERTIFICATE_NAME || "SecretName"}`; diff --git a/sdk/keyvault/keyvault-secrets/test/public/recoverBackupRestore.spec.ts b/sdk/keyvault/keyvault-secrets/test/public/recoverBackupRestore.spec.ts index c79bbc20d595..762e9ee1b8a4 100644 --- a/sdk/keyvault/keyvault-secrets/test/public/recoverBackupRestore.spec.ts +++ b/sdk/keyvault/keyvault-secrets/test/public/recoverBackupRestore.spec.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, env, isPlaybackMode, isRecordMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode, isRecordMode } from "@azure-tools/test-recorder"; import { isNode } from "@azure/core-util"; import { afterEach, assert, beforeEach, describe, it } from "vitest"; -import { SecretClient } from "../../src/index.js"; +import type { SecretClient } from "../../src/index.js"; import { testPollerProperties } from "./utils/recorderUtils.js"; import { authenticate } from "./utils/testAuthentication.js"; -import TestClient from "./utils/testClient.js"; +import type TestClient from "./utils/testClient.js"; describe("Secret client - restore secrets and recover backups", () => { const secretPrefix = `backupRestore${env.SECRET_NAME || "SecretName"}`; diff --git a/sdk/keyvault/keyvault-secrets/test/public/utils/lro/restore/operation.ts b/sdk/keyvault/keyvault-secrets/test/public/utils/lro/restore/operation.ts index 3fdd5d2fa039..b573228aaf24 100644 --- a/sdk/keyvault/keyvault-secrets/test/public/utils/lro/restore/operation.ts +++ b/sdk/keyvault/keyvault-secrets/test/public/utils/lro/restore/operation.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { PollOperation, PollOperationState } from "@azure/core-lro"; -import { OperationOptions } from "@azure/core-client"; -import { SecretPollerOptions, SecretProperties } from "../../../../../src/index.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { PollOperation, PollOperationState } from "@azure/core-lro"; +import type { OperationOptions } from "@azure/core-client"; +import type { SecretPollerOptions, SecretProperties } from "../../../../../src/index.js"; /** * Options sent to the beginRestoreSecretBackup method. diff --git a/sdk/keyvault/keyvault-secrets/test/public/utils/lro/restore/poller.ts b/sdk/keyvault/keyvault-secrets/test/public/utils/lro/restore/poller.ts index f6e5ab6f1957..8f6cff81bbb3 100644 --- a/sdk/keyvault/keyvault-secrets/test/public/utils/lro/restore/poller.ts +++ b/sdk/keyvault/keyvault-secrets/test/public/utils/lro/restore/poller.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; import { delay } from "@azure/core-util"; import { Poller } from "@azure/core-lro"; -import { +import type { RestoreSecretBackupPollOperationState, TestSecretClientInterface, - makeRestoreSecretBackupPollOperation, } from "./operation.js"; -import { SecretProperties } from "../../../../../src/index.js"; +import { makeRestoreSecretBackupPollOperation } from "./operation.js"; +import type { SecretProperties } from "../../../../../src/index.js"; export interface RestoreSecretBackupPollerOptions { client: TestSecretClientInterface; diff --git a/sdk/keyvault/keyvault-secrets/test/public/utils/testAuthentication.ts b/sdk/keyvault/keyvault-secrets/test/public/utils/testAuthentication.ts index 37cfc6fbd113..d497d6ef899d 100644 --- a/sdk/keyvault/keyvault-secrets/test/public/utils/testAuthentication.ts +++ b/sdk/keyvault/keyvault-secrets/test/public/utils/testAuthentication.ts @@ -2,15 +2,12 @@ // Licensed under the MIT License. import { SecretClient } from "../../../src/index.js"; -import { - assertEnvironmentVariable, - env, - isRecordMode, +import type { FindReplaceSanitizer, - Recorder, RecorderStartOptions, VitestTestContext, } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable, env, isRecordMode, Recorder } from "@azure-tools/test-recorder"; import { uniqueString } from "./recorderUtils.js"; import TestClient from "./testClient.js"; import { createTestCredential } from "@azure-tools/test-credential"; diff --git a/sdk/keyvault/keyvault-secrets/test/public/utils/testClient.ts b/sdk/keyvault/keyvault-secrets/test/public/utils/testClient.ts index 8ccd181b5e53..924123c94111 100644 --- a/sdk/keyvault/keyvault-secrets/test/public/utils/testClient.ts +++ b/sdk/keyvault/keyvault-secrets/test/public/utils/testClient.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { testPollerProperties } from "./recorderUtils.js"; -import { SecretClient, SecretProperties } from "../../../src/index.js"; -import { PollOperationState, PollerLike } from "@azure/core-lro"; +import type { SecretClient, SecretProperties } from "../../../src/index.js"; +import type { PollOperationState, PollerLike } from "@azure/core-lro"; import { RestoreSecretBackupPoller } from "./lro/restore/poller.js"; -import { BeginRestoreSecretBackupOptions } from "./lro/restore/operation.js"; +import type { BeginRestoreSecretBackupOptions } from "./lro/restore/operation.js"; export default class TestClient { public readonly client: SecretClient; diff --git a/sdk/loadtesting/load-testing-rest/review/load-testing.api.md b/sdk/loadtesting/load-testing-rest/review/load-testing.api.md index 00269c36727b..754c4ac171aa 100644 --- a/sdk/loadtesting/load-testing-rest/review/load-testing.api.md +++ b/sdk/loadtesting/load-testing-rest/review/load-testing.api.md @@ -4,17 +4,17 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { OperationState } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -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'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { OperationState } from '@azure/core-lro'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { SimplePollerLike } from '@azure/core-lro'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AppComponent { diff --git a/sdk/loadtesting/load-testing-rest/src/azureLoadTesting.ts b/sdk/loadtesting/load-testing-rest/src/azureLoadTesting.ts index 7fddb3e997fe..cfd1f47b4e05 100644 --- a/sdk/loadtesting/load-testing-rest/src/azureLoadTesting.ts +++ b/sdk/loadtesting/load-testing-rest/src/azureLoadTesting.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { AzureLoadTestingClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { AzureLoadTestingClient } from "./clientDefinitions"; /** * Initialize a new instance of the class AzureLoadTestingClient class. diff --git a/sdk/loadtesting/load-testing-rest/src/clientDefinitions.ts b/sdk/loadtesting/load-testing-rest/src/clientDefinitions.ts index 512e9b092b49..e4a573b69454 100644 --- a/sdk/loadtesting/load-testing-rest/src/clientDefinitions.ts +++ b/sdk/loadtesting/load-testing-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { TestCreateOrUpdateParameters, TestDeleteParameters, TestGetParameters, @@ -29,7 +29,7 @@ import { TestRunCreateOrUpdateServerMetricsConfigParameters, TestRunListServerMetricsConfigParameters, } from "./parameters"; -import { +import type { TestCreateOrUpdate200Response, TestCreateOrUpdate201Response, TestCreateOrUpdateDefaultResponse, @@ -89,7 +89,7 @@ import { TestRunListServerMetricsConfig200Response, TestRunListServerMetricsConfigDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface TestCreateOrUpdate { /** Create a new test or update an existing test. */ diff --git a/sdk/loadtesting/load-testing-rest/src/getFileValidationPoller.ts b/sdk/loadtesting/load-testing-rest/src/getFileValidationPoller.ts index 58f85c1f7f59..bbc56b5e733d 100644 --- a/sdk/loadtesting/load-testing-rest/src/getFileValidationPoller.ts +++ b/sdk/loadtesting/load-testing-rest/src/getFileValidationPoller.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; -import { CancelOnProgress, OperationState, SimplePollerLike } from "@azure/core-lro"; -import { FileUploadAndValidatePoller, PolledOperationOptions } from "./models"; -import { AzureLoadTestingClient } from "./clientDefinitions"; -import { TestGetFile200Response, TestUploadFile201Response } from "./responses"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; +import type { CancelOnProgress, OperationState, SimplePollerLike } from "@azure/core-lro"; +import type { FileUploadAndValidatePoller, PolledOperationOptions } from "./models"; +import type { AzureLoadTestingClient } from "./clientDefinitions"; +import type { TestGetFile200Response, TestUploadFile201Response } from "./responses"; import { isUnexpected } from "./isUnexpected"; import { sleep } from "./util/LROUtil"; diff --git a/sdk/loadtesting/load-testing-rest/src/getTestRunCompletionPoller.ts b/sdk/loadtesting/load-testing-rest/src/getTestRunCompletionPoller.ts index 910d3cee0ad0..4d73be9c295b 100644 --- a/sdk/loadtesting/load-testing-rest/src/getTestRunCompletionPoller.ts +++ b/sdk/loadtesting/load-testing-rest/src/getTestRunCompletionPoller.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; -import { CancelOnProgress, OperationState, SimplePollerLike } from "@azure/core-lro"; -import { TestRunCompletionPoller, PolledOperationOptions } from "./models"; -import { AzureLoadTestingClient } from "./clientDefinitions"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; +import type { CancelOnProgress, OperationState, SimplePollerLike } from "@azure/core-lro"; +import type { TestRunCompletionPoller, PolledOperationOptions } from "./models"; +import type { AzureLoadTestingClient } from "./clientDefinitions"; +import type { TestRunCreateOrUpdate200Response, TestRunCreateOrUpdate201Response, TestRunGet200Response, diff --git a/sdk/loadtesting/load-testing-rest/src/isUnexpected.ts b/sdk/loadtesting/load-testing-rest/src/isUnexpected.ts index 0a8a404ea398..8bbf954f5b0a 100644 --- a/sdk/loadtesting/load-testing-rest/src/isUnexpected.ts +++ b/sdk/loadtesting/load-testing-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { TestCreateOrUpdate200Response, TestCreateOrUpdate201Response, TestCreateOrUpdateDefaultResponse, diff --git a/sdk/loadtesting/load-testing-rest/src/models.ts b/sdk/loadtesting/load-testing-rest/src/models.ts index a892154e0bee..f1efe3e7657a 100644 --- a/sdk/loadtesting/load-testing-rest/src/models.ts +++ b/sdk/loadtesting/load-testing-rest/src/models.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationState, SimplePollerLike } from "@azure/core-lro"; -import { +import type { OperationState, SimplePollerLike } from "@azure/core-lro"; +import type { TestGetFile200Response, TestRunCreateOrUpdate200Response, TestRunCreateOrUpdate201Response, diff --git a/sdk/loadtesting/load-testing-rest/src/paginateHelper.ts b/sdk/loadtesting/load-testing-rest/src/paginateHelper.ts index e27846d32a90..5d541b4e406d 100644 --- a/sdk/loadtesting/load-testing-rest/src/paginateHelper.ts +++ b/sdk/loadtesting/load-testing-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/loadtesting/load-testing-rest/src/parameters.ts b/sdk/loadtesting/load-testing-rest/src/parameters.ts index 506bc4093798..fd4508d1d30e 100644 --- a/sdk/loadtesting/load-testing-rest/src/parameters.ts +++ b/sdk/loadtesting/load-testing-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RequestParameters } from "@azure-rest/core-client"; +import type { Test, TestAppComponents, TestServerMetricConfig, diff --git a/sdk/loadtesting/load-testing-rest/src/pollingHelper.ts b/sdk/loadtesting/load-testing-rest/src/pollingHelper.ts index a9a2dd93bd25..6fe6bca4fc0f 100644 --- a/sdk/loadtesting/load-testing-rest/src/pollingHelper.ts +++ b/sdk/loadtesting/load-testing-rest/src/pollingHelper.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureLoadTestingClient } from "./clientDefinitions"; +import type { AzureLoadTestingClient } from "./clientDefinitions"; import { getFileValidationPoller } from "./getFileValidationPoller"; import { getTestRunCompletionPoller } from "./getTestRunCompletionPoller"; -import { +import type { FileUploadAndValidatePoller, TestUploadFileSuccessResponse, TestRunCompletionPoller, diff --git a/sdk/loadtesting/load-testing-rest/src/responses.ts b/sdk/loadtesting/load-testing-rest/src/responses.ts index d76ff1ceb9b0..3fc01611f085 100644 --- a/sdk/loadtesting/load-testing-rest/src/responses.ts +++ b/sdk/loadtesting/load-testing-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse } from "@azure-rest/core-client"; +import type { TestOutput, ErrorResponseBodyOutput, TestsListOutput, diff --git a/sdk/loadtesting/load-testing-rest/src/util/LROUtil.ts b/sdk/loadtesting/load-testing-rest/src/util/LROUtil.ts index 728d110327ad..a800d12f9eb2 100644 --- a/sdk/loadtesting/load-testing-rest/src/util/LROUtil.ts +++ b/sdk/loadtesting/load-testing-rest/src/util/LROUtil.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; -import { TestRunOutput } from "../outputModels"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; +import type { TestRunOutput } from "../outputModels"; const REJECTED_ERR = new AbortError("The polling was aborted."); diff --git a/sdk/loadtesting/load-testing-rest/test/public/testAdministration.spec.ts b/sdk/loadtesting/load-testing-rest/test/public/testAdministration.spec.ts index 91c0c02eac59..316af8d0cdc9 100644 --- a/sdk/loadtesting/load-testing-rest/test/public/testAdministration.spec.ts +++ b/sdk/loadtesting/load-testing-rest/test/public/testAdministration.spec.ts @@ -3,9 +3,11 @@ import { assert } from "chai"; import { createClient, createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; -import { AzureLoadTestingClient, isUnexpected } from "../../src"; -import { env, isPlaybackMode, Recorder } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { AzureLoadTestingClient } from "../../src"; +import { isUnexpected } from "../../src"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import * as fs from "fs"; import { isNodeLike } from "@azure/core-util"; import { getLongRunningPoller } from "../../src/pollingHelper"; diff --git a/sdk/loadtesting/load-testing-rest/test/public/testRun.spec.ts b/sdk/loadtesting/load-testing-rest/test/public/testRun.spec.ts index af5bd3020d7e..e4e845162582 100644 --- a/sdk/loadtesting/load-testing-rest/test/public/testRun.spec.ts +++ b/sdk/loadtesting/load-testing-rest/test/public/testRun.spec.ts @@ -1,12 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { env, isPlaybackMode, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder, createClient } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import * as fs from "fs"; -import { AzureLoadTestingClient, isUnexpected } from "../../src"; +import type { AzureLoadTestingClient } from "../../src"; +import { isUnexpected } from "../../src"; import { isNodeLike } from "@azure/core-util"; import { getLongRunningPoller } from "../../src/pollingHelper"; diff --git a/sdk/loadtesting/load-testing-rest/test/public/utils/recordedClient.ts b/sdk/loadtesting/load-testing-rest/test/public/utils/recordedClient.ts index af3981f05fa3..369a31dfb666 100644 --- a/sdk/loadtesting/load-testing-rest/test/public/utils/recordedClient.ts +++ b/sdk/loadtesting/load-testing-rest/test/public/utils/recordedClient.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import AzureLoadTesting, { AzureLoadTestingClient } from "../../../src"; -import { Context } from "mocha"; -import { Recorder, env, RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { AzureLoadTestingClient } from "../../../src"; +import AzureLoadTesting from "../../../src"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, env } from "@azure-tools/test-recorder"; import "./env"; -import { ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; import { createTestCredential } from "@azure-tools/test-credential"; const credential = createTestCredential(); diff --git a/sdk/maps/maps-common/review/maps-common.api.md b/sdk/maps/maps-common/review/maps-common.api.md index a20845b02eab..5ef6fe5639be 100644 --- a/sdk/maps/maps-common/review/maps-common.api.md +++ b/sdk/maps/maps-common/review/maps-common.api.md @@ -9,7 +9,7 @@ import type { LroResponse } from '@azure/core-lro'; import { OperationOptions } from '@azure/core-client'; import { OperationSpec } from '@azure/core-client'; import type { PipelinePolicy } from '@azure/core-rest-pipeline'; -import { ServiceClient } from '@azure/core-client'; +import type { ServiceClient } from '@azure/core-client'; // @public export type BBox = BBox2D | BBox3D; diff --git a/sdk/maps/maps-common/src/models/lro.ts b/sdk/maps/maps-common/src/models/lro.ts index 60e9b69d3267..7a22c498a2ba 100644 --- a/sdk/maps/maps-common/src/models/lro.ts +++ b/sdk/maps/maps-common/src/models/lro.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { ServiceClient } from "@azure/core-client"; import { type FullOperationResponse, type OperationOptions, type OperationSpec, - ServiceClient, } from "@azure/core-client"; import type { LroResponse } from "@azure/core-lro"; diff --git a/sdk/maps/maps-geolocation-rest/review/maps-geolocation.api.md b/sdk/maps/maps-geolocation-rest/review/maps-geolocation.api.md index 44fefe8341d7..4892bbc5a5d4 100644 --- a/sdk/maps/maps-geolocation-rest/review/maps-geolocation.api.md +++ b/sdk/maps/maps-geolocation-rest/review/maps-geolocation.api.md @@ -4,14 +4,14 @@ ```ts -import { AzureKeyCredential } from '@azure/core-auth'; -import { AzureSASCredential } from '@azure/core-auth'; +import type { AzureKeyCredential } from '@azure/core-auth'; +import type { AzureSASCredential } from '@azure/core-auth'; import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; import { HttpResponse } from '@azure-rest/core-client'; import { RequestParameters } from '@azure-rest/core-client'; import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface CountryRegionOutput { diff --git a/sdk/maps/maps-geolocation-rest/src/MapsGeolocation.ts b/sdk/maps/maps-geolocation-rest/src/MapsGeolocation.ts index 10a928f9237f..bab0f4a5ff8a 100644 --- a/sdk/maps/maps-geolocation-rest/src/MapsGeolocation.ts +++ b/sdk/maps/maps-geolocation-rest/src/MapsGeolocation.ts @@ -1,16 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientOptions } from "@azure-rest/core-client"; -import { - AzureKeyCredential, - AzureSASCredential, - TokenCredential, - isSASCredential, - isTokenCredential, -} from "@azure/core-auth"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { AzureKeyCredential, AzureSASCredential, TokenCredential } from "@azure/core-auth"; +import { isSASCredential, isTokenCredential } from "@azure/core-auth"; import { createMapsClientIdPolicy } from "@azure/maps-common"; -import { MapsGeolocationClient } from "./generated"; +import type { MapsGeolocationClient } from "./generated"; import createClient from "./generated"; import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; diff --git a/sdk/maps/maps-geolocation-rest/test/public/MapsGeolocation.spec.ts b/sdk/maps/maps-geolocation-rest/test/public/MapsGeolocation.spec.ts index 6dec47fd5be0..8037b5bbb8f9 100644 --- a/sdk/maps/maps-geolocation-rest/test/public/MapsGeolocation.spec.ts +++ b/sdk/maps/maps-geolocation-rest/test/public/MapsGeolocation.spec.ts @@ -1,13 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { isNodeLike } from "@azure/core-util"; import { createTestCredential } from "@azure-tools/test-credential"; import { assert } from "chai"; import { createClient, createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; -import MapsGeolocation, { isUnexpected, MapsGeolocationClient } from "../../src"; +import type { Context } from "mocha"; +import type { MapsGeolocationClient } from "../../src"; +import MapsGeolocation, { isUnexpected } from "../../src"; describe("Authentication", function () { let recorder: Recorder; diff --git a/sdk/maps/maps-geolocation-rest/test/public/utils/recordedClient.ts b/sdk/maps/maps-geolocation-rest/test/public/utils/recordedClient.ts index 1d481a79e9f6..cdb1e8c13fd0 100644 --- a/sdk/maps/maps-geolocation-rest/test/public/utils/recordedClient.ts +++ b/sdk/maps/maps-geolocation-rest/test/public/utils/recordedClient.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder, RecorderStartOptions, env } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, env } from "@azure-tools/test-recorder"; import "./env"; -import { ClientOptions } from "@azure-rest/core-client"; -import MapsGeolocation, { MapsGeolocationClient } from "../../../src/"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { MapsGeolocationClient } from "../../../src/"; +import MapsGeolocation from "../../../src/"; import { createTestCredential } from "@azure-tools/test-credential"; const envSetupForPlayback: Record = { diff --git a/sdk/maps/maps-render-rest/review/maps-render.api.md b/sdk/maps/maps-render-rest/review/maps-render.api.md index 80e455d374f4..c3da09bf2218 100644 --- a/sdk/maps/maps-render-rest/review/maps-render.api.md +++ b/sdk/maps/maps-render-rest/review/maps-render.api.md @@ -4,16 +4,16 @@ ```ts -import { AzureKeyCredential } from '@azure/core-auth'; -import { AzureSASCredential } from '@azure/core-auth'; +import type { AzureKeyCredential } from '@azure/core-auth'; +import type { AzureSASCredential } from '@azure/core-auth'; import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; import { HttpResponse } from '@azure-rest/core-client'; -import { LatLon } from '@azure/maps-common'; +import type { LatLon } from '@azure/maps-common'; import { RawHttpHeaders } from '@azure/core-rest-pipeline'; import { RequestParameters } from '@azure-rest/core-client'; import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface CircularPath { diff --git a/sdk/maps/maps-render-rest/src/createPathQuery.ts b/sdk/maps/maps-render-rest/src/createPathQuery.ts index 0a9e2b06c800..dcda517b677b 100644 --- a/sdk/maps/maps-render-rest/src/createPathQuery.ts +++ b/sdk/maps/maps-render-rest/src/createPathQuery.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { LatLon } from "@azure/maps-common"; +import type { LatLon } from "@azure/maps-common"; import { createMultiCollection } from "./createMultiCollection"; /** diff --git a/sdk/maps/maps-render-rest/src/createPinsQuery.ts b/sdk/maps/maps-render-rest/src/createPinsQuery.ts index fae5604e3e03..f059aea97700 100644 --- a/sdk/maps/maps-render-rest/src/createPinsQuery.ts +++ b/sdk/maps/maps-render-rest/src/createPinsQuery.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { LatLon } from "@azure/maps-common"; +import type { LatLon } from "@azure/maps-common"; import { createMultiCollection } from "./createMultiCollection"; /** diff --git a/sdk/maps/maps-render-rest/src/mapsRender.ts b/sdk/maps/maps-render-rest/src/mapsRender.ts index 41cc50ba4082..2665c5a74388 100644 --- a/sdk/maps/maps-render-rest/src/mapsRender.ts +++ b/sdk/maps/maps-render-rest/src/mapsRender.ts @@ -1,17 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientOptions } from "@azure-rest/core-client"; -import { - AzureKeyCredential, - AzureSASCredential, - isSASCredential, - isTokenCredential, - TokenCredential, -} from "@azure/core-auth"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { AzureKeyCredential, AzureSASCredential, TokenCredential } from "@azure/core-auth"; +import { isSASCredential, isTokenCredential } from "@azure/core-auth"; import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; import { createMapsClientIdPolicy } from "@azure/maps-common"; -import { MapsRenderClient } from "./generated"; +import type { MapsRenderClient } from "./generated"; import createClient from "./generated/mapsRenderClient"; /** diff --git a/sdk/maps/maps-render-rest/src/positionToTileXY.ts b/sdk/maps/maps-render-rest/src/positionToTileXY.ts index 9a1164cedaae..039c6865ace2 100644 --- a/sdk/maps/maps-render-rest/src/positionToTileXY.ts +++ b/sdk/maps/maps-render-rest/src/positionToTileXY.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { LatLon } from "@azure/maps-common"; +import type { LatLon } from "@azure/maps-common"; function clip(n: number, minValue: number, maxValue: number): number { return Math.min(Math.max(n, minValue), maxValue); diff --git a/sdk/maps/maps-render-rest/test/public/createPathQuery.spec.ts b/sdk/maps/maps-render-rest/test/public/createPathQuery.spec.ts index c1c1decc697a..b923914097cb 100644 --- a/sdk/maps/maps-render-rest/test/public/createPathQuery.spec.ts +++ b/sdk/maps/maps-render-rest/test/public/createPathQuery.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; -import { LatLon } from "@azure/maps-common"; +import type { Recorder } from "@azure-tools/test-recorder"; +import type { LatLon } from "@azure/maps-common"; import { assert } from "chai"; -import { Context } from "mocha"; -import { isUnexpected, MapsRenderClient, createPathQuery } from "../../src"; +import type { Context } from "mocha"; +import type { MapsRenderClient } from "../../src"; +import { isUnexpected, createPathQuery } from "../../src"; import { createClient, createRecorder } from "./utils/recordedClient"; describe("create path query helper", () => { diff --git a/sdk/maps/maps-render-rest/test/public/createPinsQuery.spec.ts b/sdk/maps/maps-render-rest/test/public/createPinsQuery.spec.ts index 1c73dd7cd1e3..5adcd43ac1e0 100644 --- a/sdk/maps/maps-render-rest/test/public/createPinsQuery.spec.ts +++ b/sdk/maps/maps-render-rest/test/public/createPinsQuery.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; -import { LatLon } from "@azure/maps-common"; +import type { Recorder } from "@azure-tools/test-recorder"; +import type { LatLon } from "@azure/maps-common"; import { assert } from "chai"; -import { Context } from "mocha"; -import { createPinsQuery, isUnexpected, MapsRenderClient } from "../../src"; +import type { Context } from "mocha"; +import type { MapsRenderClient } from "../../src"; +import { createPinsQuery, isUnexpected } from "../../src"; import { createClient, createRecorder } from "./utils/recordedClient"; describe("create pins query helper", () => { diff --git a/sdk/maps/maps-render-rest/test/public/mapsRender.spec.ts b/sdk/maps/maps-render-rest/test/public/mapsRender.spec.ts index f844a7f99764..a614c07aa678 100644 --- a/sdk/maps/maps-render-rest/test/public/mapsRender.spec.ts +++ b/sdk/maps/maps-render-rest/test/public/mapsRender.spec.ts @@ -1,13 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { isNodeLike } from "@azure/core-util"; import { createTestCredential } from "@azure-tools/test-credential"; import { assert } from "chai"; import { createClient, createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; -import MapsRender, { isUnexpected, MapsRenderClient } from "../../src"; +import type { Context } from "mocha"; +import type { MapsRenderClient } from "../../src"; +import MapsRender, { isUnexpected } from "../../src"; describe("Authentication", function () { let recorder: Recorder; diff --git a/sdk/maps/maps-render-rest/test/public/pointToTileXY.spec.ts b/sdk/maps/maps-render-rest/test/public/pointToTileXY.spec.ts index 65ff9356e9d3..9b9c6bc922d3 100644 --- a/sdk/maps/maps-render-rest/test/public/pointToTileXY.spec.ts +++ b/sdk/maps/maps-render-rest/test/public/pointToTileXY.spec.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; -import { isUnexpected, MapsRenderClient, positionToTileXY } from "../../src"; +import type { Context } from "mocha"; +import type { MapsRenderClient } from "../../src"; +import { isUnexpected, positionToTileXY } from "../../src"; import { createClient, createRecorder } from "./utils/recordedClient"; describe("position to tile index helper", function () { diff --git a/sdk/maps/maps-render-rest/test/public/utils/recordedClient.ts b/sdk/maps/maps-render-rest/test/public/utils/recordedClient.ts index 04ab5b7d1609..f61348658e30 100644 --- a/sdk/maps/maps-render-rest/test/public/utils/recordedClient.ts +++ b/sdk/maps/maps-render-rest/test/public/utils/recordedClient.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { env, Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { env, Recorder } from "@azure-tools/test-recorder"; import "./env"; -import MapsRender, { MapsRenderClient } from "../../../src"; -import { ClientOptions } from "@azure-rest/core-client"; +import type { MapsRenderClient } from "../../../src"; +import MapsRender from "../../../src"; +import type { ClientOptions } from "@azure-rest/core-client"; import { createTestCredential } from "@azure-tools/test-credential"; const envSetupForPlayback: Record = { diff --git a/sdk/maps/maps-route-rest/review/maps-route.api.md b/sdk/maps/maps-route-rest/review/maps-route.api.md index 94f684d819fc..49783e02fc99 100644 --- a/sdk/maps/maps-route-rest/review/maps-route.api.md +++ b/sdk/maps/maps-route-rest/review/maps-route.api.md @@ -4,19 +4,19 @@ ```ts -import { AzureKeyCredential } from '@azure/core-auth'; -import { AzureSASCredential } from '@azure/core-auth'; +import type { AzureKeyCredential } from '@azure/core-auth'; +import type { AzureSASCredential } from '@azure/core-auth'; import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; import { HttpResponse } from '@azure-rest/core-client'; -import { LatLon } from '@azure/maps-common'; +import type { LatLon } from '@azure/maps-common'; import { LroEngineOptions } from '@azure/core-lro'; import { PollerLike } from '@azure/core-lro'; import { PollOperationState } from '@azure/core-lro'; import { RawHttpHeaders } from '@azure/core-rest-pipeline'; import { RequestParameters } from '@azure-rest/core-client'; import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface BatchRequest { diff --git a/sdk/maps/maps-route-rest/src/helpers.ts b/sdk/maps/maps-route-rest/src/helpers.ts index e41022fffb09..5057188daa74 100644 --- a/sdk/maps/maps-route-rest/src/helpers.ts +++ b/sdk/maps/maps-route-rest/src/helpers.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { LatLon } from "@azure/maps-common"; -import { BatchRequest, RouteGetRouteDirectionsQueryParamProperties } from "./generated"; +import type { LatLon } from "@azure/maps-common"; +import type { BatchRequest, RouteGetRouteDirectionsQueryParamProperties } from "./generated"; function toLatLonString(coordinates: LatLon): string { return `${coordinates[0]},${coordinates[1]}`; diff --git a/sdk/maps/maps-route-rest/src/mapsRoute.ts b/sdk/maps/maps-route-rest/src/mapsRoute.ts index b557c432173d..dee3cdbc8718 100644 --- a/sdk/maps/maps-route-rest/src/mapsRoute.ts +++ b/sdk/maps/maps-route-rest/src/mapsRoute.ts @@ -1,16 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientOptions } from "@azure-rest/core-client"; -import { - AzureKeyCredential, - AzureSASCredential, - TokenCredential, - isSASCredential, - isTokenCredential, -} from "@azure/core-auth"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { AzureKeyCredential, AzureSASCredential, TokenCredential } from "@azure/core-auth"; +import { isSASCredential, isTokenCredential } from "@azure/core-auth"; import { createMapsClientIdPolicy } from "@azure/maps-common"; -import { MapsRouteClient } from "./generated"; +import type { MapsRouteClient } from "./generated"; import createClient from "./generated"; import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; diff --git a/sdk/maps/maps-route-rest/test/public/helper.spec.ts b/sdk/maps/maps-route-rest/test/public/helper.spec.ts index fd263903b933..5593301d09e8 100644 --- a/sdk/maps/maps-route-rest/test/public/helper.spec.ts +++ b/sdk/maps/maps-route-rest/test/public/helper.spec.ts @@ -1,14 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - BatchRequest, - RouteGetRouteDirectionsQueryParamProperties, - createRouteDirectionsBatchRequest, - toColonDelimitedLatLonString, -} from "../../src"; +import type { BatchRequest, RouteGetRouteDirectionsQueryParamProperties } from "../../src"; +import { createRouteDirectionsBatchRequest, toColonDelimitedLatLonString } from "../../src"; import { assert } from "chai"; -import { LatLon } from "@azure/maps-common"; +import type { LatLon } from "@azure/maps-common"; describe("toColonDelimitedLatLonString", function () { it("should compose the string correctly", function () { diff --git a/sdk/maps/maps-route-rest/test/public/mapsRouteClient.spec.ts b/sdk/maps/maps-route-rest/test/public/mapsRouteClient.spec.ts index d820e487c312..90b0caf37e9f 100644 --- a/sdk/maps/maps-route-rest/test/public/mapsRouteClient.spec.ts +++ b/sdk/maps/maps-route-rest/test/public/mapsRouteClient.spec.ts @@ -1,25 +1,21 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context, Suite } from "mocha"; -import { - RouteDirectionParameters, - RouteMatrixQuery, - createRouteDirectionsBatchRequest, - toColonDelimitedLatLonString, -} from "../../src"; -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Context, Suite } from "mocha"; +import type { RouteDirectionParameters, RouteMatrixQuery } from "../../src"; +import { createRouteDirectionsBatchRequest, toColonDelimitedLatLonString } from "../../src"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createClient, createRecorder, testLogger } from "./utils/recordedClient"; -import { +import type { MapsRouteClient, RouteGetRouteDirectionsBatch200Response, RouteGetRouteDirectionsQueryParamProperties, RouteGetRouteMatrix200Response, - getLongRunningPoller, - isUnexpected, } from "../../src/generated"; -import { LatLon } from "@azure/maps-common"; +import { getLongRunningPoller, isUnexpected } from "../../src/generated"; +import type { LatLon } from "@azure/maps-common"; describe("Endpoint can be overwritten", function (this: Suite) { let recorder: Recorder; diff --git a/sdk/maps/maps-route-rest/test/public/utils/recordedClient.ts b/sdk/maps/maps-route-rest/test/public/utils/recordedClient.ts index b0cd1c597509..67d28f41a749 100644 --- a/sdk/maps/maps-route-rest/test/public/utils/recordedClient.ts +++ b/sdk/maps/maps-route-rest/test/public/utils/recordedClient.ts @@ -1,14 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder, RecorderStartOptions, env } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, env } from "@azure-tools/test-recorder"; import "./env"; import { createClientLogger } from "@azure/logger"; import { createTestCredential } from "@azure-tools/test-credential"; import MapsRoute from "../../../src/mapsRoute"; -import { ClientOptions } from "@azure-rest/core-client"; -import { MapsRouteClient } from "../../../src/generated"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { MapsRouteClient } from "../../../src/generated"; const envSetupForPlayback: Record = { MAPS_RESOURCE_CLIENT_ID: "azure_maps_client_id", diff --git a/sdk/maps/maps-search-rest/review/maps-search.api.md b/sdk/maps/maps-search-rest/review/maps-search.api.md index a12f7d0c01ae..b32f8a78378b 100644 --- a/sdk/maps/maps-search-rest/review/maps-search.api.md +++ b/sdk/maps/maps-search-rest/review/maps-search.api.md @@ -4,15 +4,15 @@ ```ts -import { AzureKeyCredential } from '@azure/core-auth'; -import { AzureSASCredential } from '@azure/core-auth'; +import type { AzureKeyCredential } from '@azure/core-auth'; +import type { AzureSASCredential } from '@azure/core-auth'; import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; import { HttpResponse } from '@azure-rest/core-client'; import { RawHttpHeaders } from '@azure/core-rest-pipeline'; import { RequestParameters } from '@azure-rest/core-client'; import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface AddressAdminDistrictsItemOutput { diff --git a/sdk/maps/maps-search-rest/src/MapsSearch.ts b/sdk/maps/maps-search-rest/src/MapsSearch.ts index 5a79e00f3e40..a451ac4787a9 100644 --- a/sdk/maps/maps-search-rest/src/MapsSearch.ts +++ b/sdk/maps/maps-search-rest/src/MapsSearch.ts @@ -1,16 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientOptions } from "@azure-rest/core-client"; -import { - AzureKeyCredential, - AzureSASCredential, - TokenCredential, - isSASCredential, - isTokenCredential, -} from "@azure/core-auth"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { AzureKeyCredential, AzureSASCredential, TokenCredential } from "@azure/core-auth"; +import { isSASCredential, isTokenCredential } from "@azure/core-auth"; import { createMapsClientIdPolicy } from "@azure/maps-common"; -import { MapsSearchClient } from "./generated"; +import type { MapsSearchClient } from "./generated"; import createClient from "./generated"; import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; diff --git a/sdk/maps/maps-search-rest/test/public/MapsSearch.spec.ts b/sdk/maps/maps-search-rest/test/public/MapsSearch.spec.ts index d498e00577f5..986dd8142357 100644 --- a/sdk/maps/maps-search-rest/test/public/MapsSearch.spec.ts +++ b/sdk/maps/maps-search-rest/test/public/MapsSearch.spec.ts @@ -1,13 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { env, Recorder } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { isNodeLike } from "@azure/core-util"; import { createTestCredential } from "@azure-tools/test-credential"; import { assert } from "chai"; import { createClient, createRecorder } from "./utils/recordedClient"; -import MapsSearch, { isUnexpected, MapsSearchClient } from "../../src"; +import type { MapsSearchClient } from "../../src"; +import MapsSearch, { isUnexpected } from "../../src"; describe("Authentication", function () { let recorder: Recorder; diff --git a/sdk/maps/maps-search-rest/test/public/utils/recordedClient.ts b/sdk/maps/maps-search-rest/test/public/utils/recordedClient.ts index 9c4d051a03f7..27531b789f46 100644 --- a/sdk/maps/maps-search-rest/test/public/utils/recordedClient.ts +++ b/sdk/maps/maps-search-rest/test/public/utils/recordedClient.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { env, Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { env, Recorder } from "@azure-tools/test-recorder"; import "./env"; -import { ClientOptions } from "@azure-rest/core-client"; -import MapsSearch, { MapsSearchClient } from "../../../src/"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { MapsSearchClient } from "../../../src/"; +import MapsSearch from "../../../src/"; import { createTestCredential } from "@azure-tools/test-credential"; const envSetupForPlayback: Record = { diff --git a/sdk/metricsadvisor/ai-metrics-advisor/review/ai-metrics-advisor.api.md b/sdk/metricsadvisor/ai-metrics-advisor/review/ai-metrics-advisor.api.md index 24664d380e58..780c20fd3679 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/review/ai-metrics-advisor.api.md +++ b/sdk/metricsadvisor/ai-metrics-advisor/review/ai-metrics-advisor.api.md @@ -4,11 +4,11 @@ ```ts -import { ExtendedCommonClientOptions } from '@azure/core-http-compat'; -import { FullOperationResponse } from '@azure/core-client'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { TokenCredential } from '@azure/core-auth'; +import type { ExtendedCommonClientOptions } from '@azure/core-http-compat'; +import type { FullOperationResponse } from '@azure/core-client'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AlertConfigurationsPageResponse extends Array { diff --git a/sdk/metricsadvisor/ai-metrics-advisor/src/metricsAdvisorAdministrationClient.ts b/sdk/metricsadvisor/ai-metrics-advisor/src/metricsAdvisorAdministrationClient.ts index ac5f1d3dfd2c..8ec6959a220c 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/src/metricsAdvisorAdministrationClient.ts +++ b/sdk/metricsadvisor/ai-metrics-advisor/src/metricsAdvisorAdministrationClient.ts @@ -4,20 +4,17 @@ /// /* eslint-disable @azure/azure-sdk/ts-naming-options */ -import { - InternalPipelineOptions, - bearerTokenAuthenticationPolicy, -} from "@azure/core-rest-pipeline"; -import { FullOperationResponse, OperationOptions } from "@azure/core-client"; -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; +import type { FullOperationResponse, OperationOptions } from "@azure/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; import { logger } from "./logger"; -import { - MetricsAdvisorKeyCredential, - createMetricsAdvisorKeyCredentialPolicy, -} from "./metricsAdvisorKeyCredentialPolicy"; +import type { MetricsAdvisorKeyCredential } from "./metricsAdvisorKeyCredentialPolicy"; +import { createMetricsAdvisorKeyCredentialPolicy } from "./metricsAdvisorKeyCredentialPolicy"; import { GeneratedClient } from "./generated/generatedClient"; -import { +import type { AlertConfigurationsPageResponse, AnomalyAlertConfiguration, AnomalyDetectionConfiguration, @@ -43,7 +40,7 @@ import { WebNotificationHook, WebNotificationHookPatch, } from "./models"; -import { DataSourceType, HookInfoUnion, NeedRollupEnum } from "./generated/models"; +import type { DataSourceType, HookInfoUnion, NeedRollupEnum } from "./generated/models"; import { fromServiceAlertConfiguration, fromServiceAnomalyDetectionConfiguration, @@ -66,7 +63,7 @@ import { MetricsAdvisorLoggingAllowedHeaderNames, MetricsAdvisorLoggingAllowedQueryParameters, } from "./constants"; -import { ExtendedCommonClientOptions } from "@azure/core-http-compat"; +import type { ExtendedCommonClientOptions } from "@azure/core-http-compat"; import { tracingClient } from "./tracing"; /** diff --git a/sdk/metricsadvisor/ai-metrics-advisor/src/metricsAdvisorClient.ts b/sdk/metricsadvisor/ai-metrics-advisor/src/metricsAdvisorClient.ts index a27419bfd51a..2a84002c9b3b 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/src/metricsAdvisorClient.ts +++ b/sdk/metricsadvisor/ai-metrics-advisor/src/metricsAdvisorClient.ts @@ -3,20 +3,17 @@ /// -import { - InternalPipelineOptions, - bearerTokenAuthenticationPolicy, -} from "@azure/core-rest-pipeline"; -import { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { OperationOptions } from "@azure/core-client"; -import { ExtendedCommonClientOptions } from "@azure/core-http-compat"; +import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; +import type { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { OperationOptions } from "@azure/core-client"; +import type { ExtendedCommonClientOptions } from "@azure/core-http-compat"; import { GeneratedClient } from "./generated/generatedClient"; -import { - MetricsAdvisorKeyCredential, - createMetricsAdvisorKeyCredentialPolicy, -} from "./metricsAdvisorKeyCredentialPolicy"; -import { +import type { MetricsAdvisorKeyCredential } from "./metricsAdvisorKeyCredentialPolicy"; +import { createMetricsAdvisorKeyCredentialPolicy } from "./metricsAdvisorKeyCredentialPolicy"; +import type { AlertQueryTimeMode, AlertsPageResponse, AnomaliesPageResponse, @@ -36,7 +33,11 @@ import { MetricSeriesDefinition, MetricSeriesPageResponse, } from "./models"; -import { FeedbackQueryTimeMode, FeedbackType, SeverityFilterCondition } from "./generated/models"; +import type { + FeedbackQueryTimeMode, + FeedbackType, + SeverityFilterCondition, +} from "./generated/models"; import { fromServiceMetricFeedbackUnion, toServiceMetricFeedbackUnion } from "./transforms"; import { DEFAULT_COGNITIVE_SCOPE, diff --git a/sdk/metricsadvisor/ai-metrics-advisor/src/metricsAdvisorKeyCredentialPolicy.ts b/sdk/metricsadvisor/ai-metrics-advisor/src/metricsAdvisorKeyCredentialPolicy.ts index 284c3cc168a0..bc5fb3211918 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/src/metricsAdvisorKeyCredentialPolicy.ts +++ b/sdk/metricsadvisor/ai-metrics-advisor/src/metricsAdvisorKeyCredentialPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/metricsadvisor/ai-metrics-advisor/src/models.ts b/sdk/metricsadvisor/ai-metrics-advisor/src/models.ts index 994b5292f92d..995cc0a0c512 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/src/models.ts +++ b/sdk/metricsadvisor/ai-metrics-advisor/src/models.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { IngestionStatusType } from "./generated/models"; import { EntityStatus as DataFeedDetailStatus, EmailHookParameter, - IngestionStatusType, AlertSnoozeCondition as MetricAnomalyAlertSnoozeCondition, Severity, SeverityCondition, @@ -13,7 +13,7 @@ import { TopNGroupScope, WebhookHookParameter, } from "./generated/models"; -import { FullOperationResponse } from "@azure/core-client"; +import type { FullOperationResponse } from "@azure/core-client"; export { Severity, SeverityCondition, diff --git a/sdk/metricsadvisor/ai-metrics-advisor/src/transforms.ts b/sdk/metricsadvisor/ai-metrics-advisor/src/transforms.ts index d630e1e20685..b2a6aa936c59 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/src/transforms.ts +++ b/sdk/metricsadvisor/ai-metrics-advisor/src/transforms.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AuthenticationTypeEnum, AzureApplicationInsightsParameter, AzureBlobParameter, @@ -49,7 +49,7 @@ import { SqlSourceParameter, WebhookHookInfo, } from "./generated/models"; -import { +import type { AnomalyAlertConfiguration, AnomalyDetectionConfiguration, AnomalyDetectionConfigurationPatch, diff --git a/sdk/metricsadvisor/ai-metrics-advisor/test/internal/transforms.spec.ts b/sdk/metricsadvisor/ai-metrics-advisor/test/internal/transforms.spec.ts index 9788b3d049d3..144682095fc3 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/test/internal/transforms.spec.ts +++ b/sdk/metricsadvisor/ai-metrics-advisor/test/internal/transforms.spec.ts @@ -3,7 +3,7 @@ import { assert } from "chai"; -import { +import type { AnomalyDetectionConfiguration as ServiceAnomalyDetectionConfiguration, AnomalyFeedback as ServiceAnomalyFeedback, ChangePointFeedback as ServiceChangePointFeedback, @@ -13,7 +13,7 @@ import { PeriodFeedback as ServicePeriodFeedback, WholeMetricConfiguration as ServiceWholeMetricConfiguration, } from "../../src/generated/models"; -import { +import type { AzureBlobDataFeedSource, DataFeedGranularity, MetricDetectionCondition, diff --git a/sdk/metricsadvisor/ai-metrics-advisor/test/public/adminclient.spec.ts b/sdk/metricsadvisor/ai-metrics-advisor/test/public/adminclient.spec.ts index d75c63e30553..852559d48d30 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/test/public/adminclient.spec.ts +++ b/sdk/metricsadvisor/ai-metrics-advisor/test/public/adminclient.spec.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; -import { +import type { AnomalyAlertConfiguration, AnomalyDetectionConfiguration, MetricAlertConfiguration, @@ -15,7 +15,8 @@ import { getRecorderUniqueVariable, makeCredential, } from "./util/recordedClients"; -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { getYieldedValue, matrix } from "@azure-tools/test-utils"; matrix([[true, false]] as const, async (useAad) => { diff --git a/sdk/metricsadvisor/ai-metrics-advisor/test/public/advisorclient.spec.ts b/sdk/metricsadvisor/ai-metrics-advisor/test/public/advisorclient.spec.ts index 38f0e7bf87c4..f9ace01b0a4e 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/test/public/advisorclient.spec.ts +++ b/sdk/metricsadvisor/ai-metrics-advisor/test/public/advisorclient.spec.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; -import { +import type { MetricAnomalyFeedback, MetricChangePointFeedback, MetricCommentFeedback, @@ -12,7 +12,8 @@ import { MetricsAdvisorClient, } from "../../src"; import { createRecordedAdvisorClient, makeCredential } from "./util/recordedClients"; -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { getYieldedValue, matrix } from "@azure-tools/test-utils"; matrix([[true, false]] as const, async (useAad) => { diff --git a/sdk/metricsadvisor/ai-metrics-advisor/test/public/dataSourceCred.spec.ts b/sdk/metricsadvisor/ai-metrics-advisor/test/public/dataSourceCred.spec.ts index bbfccd53c981..542c48657a12 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/test/public/dataSourceCred.spec.ts +++ b/sdk/metricsadvisor/ai-metrics-advisor/test/public/dataSourceCred.spec.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; -import { +import type { Context } from "mocha"; +import type { DataSourceDataLakeGen2SharedKey, DataSourceDataLakeGen2SharedKeyPatch, DataSourceServicePrincipal, @@ -19,7 +19,7 @@ import { getRecorderUniqueVariable, makeCredential, } from "./util/recordedClients"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { getYieldedValue } from "@azure-tools/test-utils"; describe("DataSourceCredential", () => { diff --git a/sdk/metricsadvisor/ai-metrics-advisor/test/public/datafeed.spec.ts b/sdk/metricsadvisor/ai-metrics-advisor/test/public/datafeed.spec.ts index 1616378f4c19..e0abeb1d6e3f 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/test/public/datafeed.spec.ts +++ b/sdk/metricsadvisor/ai-metrics-advisor/test/public/datafeed.spec.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; -import { +import type { Context } from "mocha"; +import type { AzureBlobDataFeedSource, AzureDataLakeStorageGen2DataFeedSource, AzureEventHubsDataFeedSource, @@ -27,7 +27,8 @@ import { getRecorderUniqueVariable, makeCredential, } from "./util/recordedClients"; -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { fakeTestSecretPlaceholder, getYieldedValue, matrix } from "@azure-tools/test-utils"; matrix([[true, false]] as const, async (useAad) => { diff --git a/sdk/metricsadvisor/ai-metrics-advisor/test/public/hookTests.spec.ts b/sdk/metricsadvisor/ai-metrics-advisor/test/public/hookTests.spec.ts index 777b3d849da8..87ab6584215e 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/test/public/hookTests.spec.ts +++ b/sdk/metricsadvisor/ai-metrics-advisor/test/public/hookTests.spec.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; -import { +import type { EmailNotificationHook, EmailNotificationHookPatch, MetricsAdvisorAdministrationClient, @@ -16,7 +16,7 @@ import { getRecorderUniqueVariable, makeCredential, } from "./util/recordedClients"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { fakeTestPassPlaceholder, fakeTestSecretPlaceholder, diff --git a/sdk/metricsadvisor/ai-metrics-advisor/test/public/util/recordedClients.ts b/sdk/metricsadvisor/ai-metrics-advisor/test/public/util/recordedClients.ts index 98dde300891c..d27141770390 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/test/public/util/recordedClients.ts +++ b/sdk/metricsadvisor/ai-metrics-advisor/test/public/util/recordedClients.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; +import type { Context } from "mocha"; import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { createTestCredential } from "@azure-tools/test-credential"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { MetricsAdvisorAdministrationClient, MetricsAdvisorClient, diff --git a/sdk/mixedreality/mixed-reality-authentication/review/mixed-reality-authentication.api.md b/sdk/mixedreality/mixed-reality-authentication/review/mixed-reality-authentication.api.md index 46fcadc0123a..e02b36b7cf10 100644 --- a/sdk/mixedreality/mixed-reality-authentication/review/mixed-reality-authentication.api.md +++ b/sdk/mixedreality/mixed-reality-authentication/review/mixed-reality-authentication.api.md @@ -6,9 +6,9 @@ import { AccessToken } from '@azure/core-auth'; import { AzureKeyCredential } from '@azure/core-auth'; -import { CommonClientOptions } from '@azure/core-client'; -import { OperationOptions } from '@azure/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { OperationOptions } from '@azure/core-client'; +import type { TokenCredential } from '@azure/core-auth'; export { AccessToken } diff --git a/sdk/mixedreality/mixed-reality-authentication/src/logger.ts b/sdk/mixedreality/mixed-reality-authentication/src/logger.ts index 1a2d703fda81..f5a379c7fffd 100644 --- a/sdk/mixedreality/mixed-reality-authentication/src/logger.ts +++ b/sdk/mixedreality/mixed-reality-authentication/src/logger.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureLogger, createClientLogger } from "@azure/logger"; +import type { AzureLogger } from "@azure/logger"; +import { createClientLogger } from "@azure/logger"; /** * The \@azure/logger configuration for this package. diff --git a/sdk/mixedreality/mixed-reality-authentication/src/mixedRealityStsClient.ts b/sdk/mixedreality/mixed-reality-authentication/src/mixedRealityStsClient.ts index 65e6d6b36595..008f7f4e0546 100644 --- a/sdk/mixedreality/mixed-reality-authentication/src/mixedRealityStsClient.ts +++ b/sdk/mixedreality/mixed-reality-authentication/src/mixedRealityStsClient.ts @@ -1,14 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, AzureKeyCredential, TokenCredential } from "@azure/core-auth"; -import { - GetTokenOptionalParams, - MixedRealityStsRestClient, - MixedRealityStsRestClientOptionalParams, -} from "./generated"; -import { GetTokenOptions, MixedRealityStsClientOptions } from "./models/options"; -import { InternalClientPipelineOptions } from "@azure/core-client"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; +import { AzureKeyCredential } from "@azure/core-auth"; +import type { GetTokenOptionalParams, MixedRealityStsRestClientOptionalParams } from "./generated"; +import { MixedRealityStsRestClient } from "./generated"; +import type { GetTokenOptions, MixedRealityStsClientOptions } from "./models/options"; +import type { InternalClientPipelineOptions } from "@azure/core-client"; import { MixedRealityAccountKeyCredential } from "./models/auth"; import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; import { constructAuthenticationEndpointFromDomain } from "./util/authenticationEndpoint"; diff --git a/sdk/mixedreality/mixed-reality-authentication/src/models/auth.ts b/sdk/mixedreality/mixed-reality-authentication/src/models/auth.ts index 849fa3550ae9..737246302e03 100644 --- a/sdk/mixedreality/mixed-reality-authentication/src/models/auth.ts +++ b/sdk/mixedreality/mixed-reality-authentication/src/models/auth.ts @@ -1,12 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - AccessToken, - AzureKeyCredential, - GetTokenOptions, - TokenCredential, -} from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import { AzureKeyCredential } from "@azure/core-auth"; const maxTimestampMs = 8640000000000000; diff --git a/sdk/mixedreality/mixed-reality-authentication/src/models/mappers.ts b/sdk/mixedreality/mixed-reality-authentication/src/models/mappers.ts index fb6c0981ad60..c869c6dfe6a8 100644 --- a/sdk/mixedreality/mixed-reality-authentication/src/models/mappers.ts +++ b/sdk/mixedreality/mixed-reality-authentication/src/models/mappers.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken } from "@azure/core-auth"; -import { GetTokenResponse } from "../generated"; +import type { AccessToken } from "@azure/core-auth"; +import type { GetTokenResponse } from "../generated"; import { retrieveJwtExpirationTimestamp } from "../util/jwt"; /** diff --git a/sdk/mixedreality/mixed-reality-authentication/src/models/options.ts b/sdk/mixedreality/mixed-reality-authentication/src/models/options.ts index c8a4bb9f230d..bc0bd448cf18 100644 --- a/sdk/mixedreality/mixed-reality-authentication/src/models/options.ts +++ b/sdk/mixedreality/mixed-reality-authentication/src/models/options.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; /** * Options to create the MixedRealityStsClient. diff --git a/sdk/mixedreality/mixed-reality-authentication/test/mixedRealityStsClient.spec.ts b/sdk/mixedreality/mixed-reality-authentication/test/mixedRealityStsClient.spec.ts index 72d492e2342a..553ed79ef6be 100644 --- a/sdk/mixedreality/mixed-reality-authentication/test/mixedRealityStsClient.spec.ts +++ b/sdk/mixedreality/mixed-reality-authentication/test/mixedRealityStsClient.spec.ts @@ -3,8 +3,8 @@ import { AzureKeyCredential, MixedRealityStsClient } from "../src"; import { createClient, createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createTokenCredentialFromMRKeyCredential } from "./utils/tokenCredentialHelper"; diff --git a/sdk/mixedreality/mixed-reality-authentication/test/utils/recordedClient.ts b/sdk/mixedreality/mixed-reality-authentication/test/utils/recordedClient.ts index 1be7f1b3f9c9..2ba35bc136f1 100644 --- a/sdk/mixedreality/mixed-reality-authentication/test/utils/recordedClient.ts +++ b/sdk/mixedreality/mixed-reality-authentication/test/utils/recordedClient.ts @@ -2,9 +2,11 @@ // Licensed under the MIT License. import "./env"; -import { Recorder, RecorderStartOptions, env } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; -import { AzureKeyCredential, MixedRealityStsClient, MixedRealityStsClientOptions } from "../../src"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, env } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { MixedRealityStsClientOptions } from "../../src"; +import { AzureKeyCredential, MixedRealityStsClient } from "../../src"; export function createClient(options?: MixedRealityStsClientOptions): MixedRealityStsClient { const accountDomain = env.MIXEDREALITY_ACCOUNT_DOMAIN as string; diff --git a/sdk/mixedreality/mixed-reality-authentication/test/utils/tokenCredentialHelper.ts b/sdk/mixedreality/mixed-reality-authentication/test/utils/tokenCredentialHelper.ts index af930f4a7d19..a8d51138fc5a 100644 --- a/sdk/mixedreality/mixed-reality-authentication/test/utils/tokenCredentialHelper.ts +++ b/sdk/mixedreality/mixed-reality-authentication/test/utils/tokenCredentialHelper.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureKeyCredential } from "@azure/core-auth"; +import type { AzureKeyCredential } from "@azure/core-auth"; import { MixedRealityAccountKeyCredential } from "../../src/models/auth"; export function createTokenCredentialFromMRKeyCredential( diff --git a/sdk/monitor/monitor-ingestion/review/monitor-ingestion.api.md b/sdk/monitor/monitor-ingestion/review/monitor-ingestion.api.md index 6c2e5306b9f7..7f7032be2266 100644 --- a/sdk/monitor/monitor-ingestion/review/monitor-ingestion.api.md +++ b/sdk/monitor/monitor-ingestion/review/monitor-ingestion.api.md @@ -4,9 +4,9 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; -import { OperationOptions } from '@azure/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { OperationOptions } from '@azure/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export class AggregateLogsUploadError extends Error { diff --git a/sdk/monitor/monitor-ingestion/src/gZippingPolicy.browser.ts b/sdk/monitor/monitor-ingestion/src/gZippingPolicy.browser.ts index 44b0e42ffaab..d76af0312729 100644 --- a/sdk/monitor/monitor-ingestion/src/gZippingPolicy.browser.ts +++ b/sdk/monitor/monitor-ingestion/src/gZippingPolicy.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelinePolicy } from "@azure/core-rest-pipeline"; +import type { PipelinePolicy } from "@azure/core-rest-pipeline"; import pako from "pako"; /** * Name of the {@link gZippingPolicy} diff --git a/sdk/monitor/monitor-ingestion/src/gZippingPolicy.ts b/sdk/monitor/monitor-ingestion/src/gZippingPolicy.ts index 772a48565cfd..f84bd1de145d 100644 --- a/sdk/monitor/monitor-ingestion/src/gZippingPolicy.ts +++ b/sdk/monitor/monitor-ingestion/src/gZippingPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelinePolicy } from "@azure/core-rest-pipeline"; +import type { PipelinePolicy } from "@azure/core-rest-pipeline"; import * as zlib from "zlib"; import { promisify } from "util"; const gzip = promisify(zlib.gzip); diff --git a/sdk/monitor/monitor-ingestion/src/logsIngestionClient.ts b/sdk/monitor/monitor-ingestion/src/logsIngestionClient.ts index 1fac7e6994f9..9b9e62acce52 100644 --- a/sdk/monitor/monitor-ingestion/src/logsIngestionClient.ts +++ b/sdk/monitor/monitor-ingestion/src/logsIngestionClient.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; -import { CommonClientOptions } from "@azure/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { CommonClientOptions } from "@azure/core-client"; import { GeneratedMonitorIngestionClient } from "./generated"; -import { AggregateLogsUploadError, LogsUploadFailure, LogsUploadOptions } from "./models"; +import type { LogsUploadFailure, LogsUploadOptions } from "./models"; +import { AggregateLogsUploadError } from "./models"; import { GZippingPolicy } from "./gZippingPolicy"; import { concurrentRun } from "./utils/concurrentPoolHelper"; import { splitDataToChunks } from "./utils/splitDataToChunksHelper"; diff --git a/sdk/monitor/monitor-ingestion/src/models.ts b/sdk/monitor/monitor-ingestion/src/models.ts index bc4e407fd322..448bf5b37201 100644 --- a/sdk/monitor/monitor-ingestion/src/models.ts +++ b/sdk/monitor/monitor-ingestion/src/models.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; import { isError } from "@azure/core-util"; /** * Options for send logs operation diff --git a/sdk/monitor/monitor-ingestion/src/utils/concurrentPoolHelper.ts b/sdk/monitor/monitor-ingestion/src/utils/concurrentPoolHelper.ts index c81df441d676..af2d57f75a1c 100644 --- a/sdk/monitor/monitor-ingestion/src/utils/concurrentPoolHelper.ts +++ b/sdk/monitor/monitor-ingestion/src/utils/concurrentPoolHelper.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; export async function concurrentRun( maxConcurrency: number, diff --git a/sdk/monitor/monitor-ingestion/test/public/logsIngestionClient.spec.ts b/sdk/monitor/monitor-ingestion/test/public/logsIngestionClient.spec.ts index d4d52edbeb93..778c87484d6b 100644 --- a/sdk/monitor/monitor-ingestion/test/public/logsIngestionClient.spec.ts +++ b/sdk/monitor/monitor-ingestion/test/public/logsIngestionClient.spec.ts @@ -1,12 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { isAggregateLogsUploadError, LogsIngestionClient, LogsUploadFailure } from "../../src"; -import { Context } from "mocha"; +import type { LogsUploadFailure } from "../../src"; +import { isAggregateLogsUploadError, LogsIngestionClient } from "../../src"; +import type { Context } from "mocha"; import { assert } from "chai"; -import { AdditionalPolicyConfig } from "@azure/core-client"; +import type { AdditionalPolicyConfig } from "@azure/core-client"; +import type { RecorderAndLogsClient } from "./shared/testShared"; import { - RecorderAndLogsClient, createClientAndStartRecorder, getDcrId, getLogsIngestionEndpoint, diff --git a/sdk/monitor/monitor-ingestion/test/public/shared/testShared.ts b/sdk/monitor/monitor-ingestion/test/public/shared/testShared.ts index 8f782f90e36e..fad6128d3858 100644 --- a/sdk/monitor/monitor-ingestion/test/public/shared/testShared.ts +++ b/sdk/monitor/monitor-ingestion/test/public/shared/testShared.ts @@ -1,17 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { createTestCredential } from "@azure-tools/test-credential"; -import { - Recorder, - RecorderStartOptions, - assertEnvironmentVariable, - env, -} from "@azure-tools/test-recorder"; +import type { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable, env } from "@azure-tools/test-recorder"; import { createClientLogger } from "@azure/logger"; import { LogsIngestionClient } from "../../../src"; -import { ExponentialRetryPolicyOptions } from "@azure/core-rest-pipeline"; -import { AdditionalPolicyConfig } from "@azure/core-client"; +import type { ExponentialRetryPolicyOptions } from "@azure/core-rest-pipeline"; +import type { AdditionalPolicyConfig } from "@azure/core-client"; export const loggerForTest = createClientLogger("test"); const envSetupForPlayback: Record = { LOGS_INGESTION_ENDPOINT: diff --git a/sdk/monitor/monitor-opentelemetry-exporter/api-extractor.json b/sdk/monitor/monitor-opentelemetry-exporter/api-extractor.json index d45e50088e6d..ca1afb03c0e9 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/api-extractor.json +++ b/sdk/monitor/monitor-opentelemetry-exporter/api-extractor.json @@ -1,6 +1,6 @@ { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - "mainEntryPointFilePath": "types/src/index.d.ts", + "mainEntryPointFilePath": "dist/esm/index.d.ts", "docModel": { "enabled": true }, @@ -11,7 +11,7 @@ "dtsRollup": { "enabled": true, "untrimmedFilePath": "", - "publicTrimmedFilePath": "./types/monitor-opentelemetry-exporter.d.ts" + "publicTrimmedFilePath": "dist/monitor-opentelemetry-exporter.d.ts" }, "messages": { "tsdocMessageReporting": { diff --git a/sdk/monitor/monitor-opentelemetry-exporter/package.json b/sdk/monitor/monitor-opentelemetry-exporter/package.json index 41246261f86e..4f4e0a4072bf 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/package.json +++ b/sdk/monitor/monitor-opentelemetry-exporter/package.json @@ -20,28 +20,23 @@ "license": "MIT", "author": "Microsoft Corporation", "sideEffects": false, - "main": "dist/index.js", - "module": "dist-esm/src/index.js", - "types": "types/monitor-opentelemetry-exporter.d.ts", + "type": "module", + "main": "./dist/commonjs/index.js", + "module": "./dist/esm/index.js", + "types": "./dist/commonjs/index.d.ts", "files": [ - "dist-esm/src/", - "dist/src/", - "browser/src/", - "types/monitor-opentelemetry-exporter.d.ts", + "dist/", "README.md", - "SECURITY.md", "LICENSE" ], "scripts": { - "build": "npm run build:node && npm run build:browser && dev-tool run extract-api", - "build:browser": "echo skipped", - "build:node": "tsc -p . && dev-tool run bundle --browser-test=false", + "build": "npm run clean && dev-tool run build-package && dev-tool run extract-api", "build:samples": "echo Obsolete.", - "build:test": "tsc -p . && dev-tool run bundle --browser-test=false", + "build:test": "npm run build && npm run unit-test:node", "check-format": "dev-tool run vendored prettier --list-different --config ../../../prettier.config.cjs --ignore-path ../../../.prettierignore \"src/**/*.ts\" \"test/**/*.ts\" \"samples-dev/**/*.ts\" \"*.{js,json}\"", "clean": "dev-tool run vendored rimraf --glob dist-esm types dist", "execute:samples": "dev-tool samples run samples-dev", - "extract-api": "tsc -p . && dev-tool run extract-api", + "extract-api": "dev-tool run build-package && dev-tool run extract-api", "format": "dev-tool run vendored prettier --write --config ../../../prettier.config.cjs --ignore-path ../../../.prettierignore \"src/**/*.ts\" \"test/**/*.ts\" \"samples-dev/**/*.ts\" \"*.{js,json}\"", "generate:client": "autorest --typescript ./swagger/README.md", "integration-test": "npm run integration-test:node && npm run integration-test:browser", @@ -51,14 +46,13 @@ "lint:fix": "dev-tool run vendored eslint package.json api-extractor.json src test --fix --fix-type [problem,suggestion]", "pack": "npm pack 2>&1", "report": "nyc report --reporter=json", - "test": "npm run clean && npm run build:test && npm run unit-test", + "test": "npm run clean && npm run build:test", "test-opentelemetry-versions": "node test-opentelemetry-versions.js 2>&1", "test:browser": "npm run unit-test:browser", "test:node": "npm run clean && npm run build:test && npm run unit-test:node", "unit-test": "npm run unit-test:node && npm run unit-test:browser", "unit-test:browser": "echo skipped", - "unit-test:node": "dev-tool run test:node-tsx-ts -- --timeout 1200000 \"test/internal/**/*.test.ts\"", - "unit-test:node:debug": "dev-tool run test:node-tsx-ts -- --timeout 1200000 \"test/internal/**/*.test.ts\"", + "unit-test:node": "dev-tool run test:vitest", "update-snippets": "echo skipped" }, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", @@ -77,20 +71,21 @@ "tslib": "catalog:" }, "devDependencies": { + "@azure-tools/test-utils-vitest": "workspace:*", "@azure/dev-tool": "workspace:*", "@azure/eslint-plugin-azure-sdk": "workspace:*", "@opentelemetry/instrumentation": "catalog:otel", "@opentelemetry/instrumentation-http": "catalog:otel", "@opentelemetry/sdk-trace-node": "catalog:otel", - "@types/mocha": "catalog:legacy", "@types/node": "catalog:", + "@vitest/browser": "catalog:", + "@vitest/coverage-istanbul": "catalog:", "dotenv": "catalog:", "eslint": "catalog:", - "mocha": "catalog:legacy", "nock": "catalog:legacy", - "nyc": "catalog:legacy", - "sinon": "catalog:legacy", - "typescript": "catalog:" + "playwright": "catalog:", + "typescript": "catalog:", + "vitest": "catalog:" }, "engines": { "node": ">=18.0.0" diff --git a/sdk/monitor/monitor-opentelemetry-exporter/review/monitor-opentelemetry-exporter.api.md b/sdk/monitor/monitor-opentelemetry-exporter/review/monitor-opentelemetry-exporter.api.md index 4873b6a8edd5..fcd72d1b42f3 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/review/monitor-opentelemetry-exporter.api.md +++ b/sdk/monitor/monitor-opentelemetry-exporter/review/monitor-opentelemetry-exporter.api.md @@ -5,22 +5,22 @@ ```ts import { AggregationTemporality } from '@opentelemetry/sdk-metrics'; -import { Attributes } from '@opentelemetry/api'; -import { Context } from '@opentelemetry/api'; +import type { Attributes } from '@opentelemetry/api'; +import type { Context } from '@opentelemetry/api'; import * as coreClient from '@azure/core-client'; -import { ExportResult } from '@opentelemetry/core'; +import type { ExportResult } from '@opentelemetry/core'; import { InstrumentType } from '@opentelemetry/sdk-metrics'; -import { Link } from '@opentelemetry/api'; +import type { Link } from '@opentelemetry/api'; import type { LogRecordExporter } from '@opentelemetry/sdk-logs'; -import { PushMetricExporter } from '@opentelemetry/sdk-metrics'; +import type { PushMetricExporter } from '@opentelemetry/sdk-metrics'; import type { ReadableLogRecord } from '@opentelemetry/sdk-logs'; -import { ReadableSpan } from '@opentelemetry/sdk-trace-base'; -import { ResourceMetrics } from '@opentelemetry/sdk-metrics'; -import { Sampler } from '@opentelemetry/sdk-trace-base'; -import { SamplingResult } from '@opentelemetry/sdk-trace-base'; -import { SpanExporter } from '@opentelemetry/sdk-trace-base'; -import { SpanKind } from '@opentelemetry/api'; -import { TokenCredential } from '@azure/core-auth'; +import type { ReadableSpan } from '@opentelemetry/sdk-trace-base'; +import type { ResourceMetrics } from '@opentelemetry/sdk-metrics'; +import type { Sampler } from '@opentelemetry/sdk-trace-base'; +import type { SamplingResult } from '@opentelemetry/sdk-trace-base'; +import type { SpanExporter } from '@opentelemetry/sdk-trace-base'; +import type { SpanKind } from '@opentelemetry/api'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface ApplicationInsightsClientOptionalParams extends coreClient.ServiceClientOptions { diff --git a/sdk/monitor/monitor-opentelemetry-exporter/samples-dev/httpSample.ts b/sdk/monitor/monitor-opentelemetry-exporter/samples-dev/httpSample.ts index a5863236341e..380575c4daa0 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/samples-dev/httpSample.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/samples-dev/httpSample.ts @@ -37,7 +37,7 @@ let clientTracer: Tracer; setupOpenTelemetry(); // Open Telemetry setup need to happen before http library is loaded -import http from "http"; +import http from "node:http"; /********************************************************************* * HTTP SERVER SETUP diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/Declarations/Contracts/index.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/Declarations/Contracts/index.ts index f09d5bdbb069..0a6223d0c767 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/Declarations/Contracts/index.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/Declarations/Contracts/index.ts @@ -1,4 +1,4 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -export * from "./Constants"; +export * from "./Constants.js"; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/config.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/config.ts index dde8f516aede..6dfb57cefe13 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/config.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/config.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; -import { ServiceApiVersion } from "./Declarations/Constants"; -import { ApplicationInsightsClientOptionalParams } from "./generated"; +import type { TokenCredential } from "@azure/core-auth"; +import type { ServiceApiVersion } from "./Declarations/Constants.js"; +import type { ApplicationInsightsClientOptionalParams } from "./generated/index.js"; /** * Provides configuration options for AzureMonitorTraceExporter. diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/export/base.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/export/base.ts index 9074ff9f2b09..f625c5a7471e 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/export/base.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/export/base.ts @@ -2,13 +2,13 @@ // Licensed under the MIT License. import { diag } from "@opentelemetry/api"; -import { ConnectionStringParser } from "../utils/connectionStringParser"; -import { AzureMonitorExporterOptions } from "../config"; +import { ConnectionStringParser } from "../utils/connectionStringParser.js"; +import type { AzureMonitorExporterOptions } from "../config.js"; import { DEFAULT_BREEZE_ENDPOINT, ENV_CONNECTION_STRING, LEGACY_ENV_DISABLE_STATSBEAT, -} from "../Declarations/Constants"; +} from "../Declarations/Constants.js"; /** * Azure Monitor OpenTelemetry Trace Exporter. diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/export/log.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/export/log.ts index c9a8cef6458b..77e88006299c 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/export/log.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/export/log.ts @@ -1,14 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { context, diag } from "@opentelemetry/api"; -import { ExportResult, ExportResultCode, suppressTracing } from "@opentelemetry/core"; -import { AzureMonitorBaseExporter } from "./base"; -import { TelemetryItem as Envelope } from "../generated"; -import { logToEnvelope } from "../utils/logUtils"; -import { AzureMonitorExporterOptions } from "../config"; +import { context, diag } from "@opentelemetry/api"; +import type { ExportResult } from "@opentelemetry/core"; +import { ExportResultCode, suppressTracing } from "@opentelemetry/core"; +import { AzureMonitorBaseExporter } from "./base.js"; +import type { TelemetryItem as Envelope } from "../generated/index.js"; +import { logToEnvelope } from "../utils/logUtils.js"; +import type { AzureMonitorExporterOptions } from "../config.js"; import type { ReadableLogRecord, LogRecordExporter } from "@opentelemetry/sdk-logs"; -import { HttpSender } from "../platform"; +import { HttpSender } from "../platform/index.js"; /** * Azure Monitor OpenTelemetry Log Exporter. diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/export/metric.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/export/metric.ts index 84db5edc7151..ffd5e49c15d6 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/export/metric.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/export/metric.ts @@ -1,18 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { context, diag } from "@opentelemetry/api"; -import { - AggregationTemporality, - InstrumentType, - PushMetricExporter, - ResourceMetrics, -} from "@opentelemetry/sdk-metrics"; -import { ExportResult, ExportResultCode, suppressTracing } from "@opentelemetry/core"; -import { AzureMonitorBaseExporter } from "./base"; -import { TelemetryItem as Envelope } from "../generated"; -import { resourceMetricsToEnvelope } from "../utils/metricUtils"; -import { AzureMonitorExporterOptions } from "../config"; -import { HttpSender } from "../platform"; +import type { PushMetricExporter, ResourceMetrics } from "@opentelemetry/sdk-metrics"; +import { AggregationTemporality, InstrumentType } from "@opentelemetry/sdk-metrics"; +import type { ExportResult } from "@opentelemetry/core"; +import { ExportResultCode, suppressTracing } from "@opentelemetry/core"; +import { AzureMonitorBaseExporter } from "./base.js"; +import type { TelemetryItem as Envelope } from "../generated/index.js"; +import { resourceMetricsToEnvelope } from "../utils/metricUtils.js"; +import type { AzureMonitorExporterOptions } from "../config.js"; +import { HttpSender } from "../platform/index.js"; /** * Azure Monitor OpenTelemetry Metric Exporter. diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/longIntervalStatsbeatMetrics.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/longIntervalStatsbeatMetrics.ts index 0e12ed9f692b..2bed40c94905 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/longIntervalStatsbeatMetrics.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/longIntervalStatsbeatMetrics.ts @@ -1,31 +1,27 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - diag, +import type { BatchObservableResult, ObservableGauge, ObservableResult, Meter, } from "@opentelemetry/api"; -import { ExportResult, ExportResultCode } from "@opentelemetry/core"; -import { - MeterProvider, - PeriodicExportingMetricReader, - PeriodicExportingMetricReaderOptions, -} from "@opentelemetry/sdk-metrics"; -import { AzureMonitorExporterOptions } from "../../index"; -import * as ai from "../../utils/constants/applicationinsights"; -import { StatsbeatMetrics } from "./statsbeatMetrics"; -import { - StatsbeatCounter, - STATSBEAT_LANGUAGE, +import { diag } from "@opentelemetry/api"; +import type { ExportResult } from "@opentelemetry/core"; +import { ExportResultCode } from "@opentelemetry/core"; +import type { PeriodicExportingMetricReaderOptions } from "@opentelemetry/sdk-metrics"; +import { MeterProvider, PeriodicExportingMetricReader } from "@opentelemetry/sdk-metrics"; +import type { AzureMonitorExporterOptions } from "../../index.js"; +import * as ai from "../../utils/constants/applicationinsights.js"; +import { StatsbeatMetrics } from "./statsbeatMetrics.js"; +import type { CommonStatsbeatProperties, AttachStatsbeatProperties, - StatsbeatFeatureType, StatsbeatOptions, -} from "./types"; -import { AzureMonitorStatsbeatExporter } from "./statsbeatExporter"; +} from "./types.js"; +import { StatsbeatCounter, STATSBEAT_LANGUAGE, StatsbeatFeatureType } from "./types.js"; +import { AzureMonitorStatsbeatExporter } from "./statsbeatExporter.js"; let instance: LongIntervalStatsbeatMetrics | null = null; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/networkStatsbeatMetrics.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/networkStatsbeatMetrics.ts index f76563c10428..b741f86cb00c 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/networkStatsbeatMetrics.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/networkStatsbeatMetrics.ts @@ -1,31 +1,26 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - diag, +import type { BatchObservableResult, Meter, ObservableGauge, ObservableResult, } from "@opentelemetry/api"; -import { - MeterProvider, - PeriodicExportingMetricReader, - PeriodicExportingMetricReaderOptions, -} from "@opentelemetry/sdk-metrics"; -import { AzureMonitorExporterOptions } from "../../index"; -import * as ai from "../../utils/constants/applicationinsights"; -import { StatsbeatMetrics } from "./statsbeatMetrics"; -import { - StatsbeatCounter, - STATSBEAT_LANGUAGE, - NetworkStatsbeat, +import { diag } from "@opentelemetry/api"; +import type { PeriodicExportingMetricReaderOptions } from "@opentelemetry/sdk-metrics"; +import { MeterProvider, PeriodicExportingMetricReader } from "@opentelemetry/sdk-metrics"; +import type { AzureMonitorExporterOptions } from "../../index.js"; +import * as ai from "../../utils/constants/applicationinsights.js"; +import { StatsbeatMetrics } from "./statsbeatMetrics.js"; +import type { CommonStatsbeatProperties, NetworkStatsbeatProperties, StatsbeatOptions, -} from "./types"; -import { AzureMonitorStatsbeatExporter } from "./statsbeatExporter"; -import { ENV_DISABLE_STATSBEAT } from "../../Declarations/Constants"; +} from "./types.js"; +import { StatsbeatCounter, STATSBEAT_LANGUAGE, NetworkStatsbeat } from "./types.js"; +import { AzureMonitorStatsbeatExporter } from "./statsbeatExporter.js"; +import { ENV_DISABLE_STATSBEAT } from "../../Declarations/Constants.js"; export class NetworkStatsbeatMetrics extends StatsbeatMetrics { private disableNonEssentialStatsbeat: boolean = !!process.env[ENV_DISABLE_STATSBEAT]; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/statsbeatExporter.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/statsbeatExporter.ts index 248a69971523..51baceb4298f 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/statsbeatExporter.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/statsbeatExporter.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { context } from "@opentelemetry/api"; -import { PushMetricExporter, ResourceMetrics } from "@opentelemetry/sdk-metrics"; -import { ExportResult, ExportResultCode, suppressTracing } from "@opentelemetry/core"; -import { AzureMonitorExporterOptions } from "../../config"; -import { TelemetryItem as Envelope } from "../../generated"; -import { resourceMetricsToEnvelope } from "../../utils/metricUtils"; -import { AzureMonitorBaseExporter } from "../base"; -import { HttpSender } from "../../platform"; +import type { PushMetricExporter, ResourceMetrics } from "@opentelemetry/sdk-metrics"; +import type { ExportResult } from "@opentelemetry/core"; +import { ExportResultCode, suppressTracing } from "@opentelemetry/core"; +import type { AzureMonitorExporterOptions } from "../../config.js"; +import type { TelemetryItem as Envelope } from "../../generated/index.js"; +import { resourceMetricsToEnvelope } from "../../utils/metricUtils.js"; +import { AzureMonitorBaseExporter } from "../base.js"; +import { HttpSender } from "../../platform/index.js"; /** * Azure Monitor Statsbeat Exporter diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/statsbeatMetrics.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/statsbeatMetrics.ts index 4dc36cefccd4..9db0e061d295 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/statsbeatMetrics.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/export/statsbeat/statsbeatMetrics.ts @@ -1,12 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - createDefaultHttpClient, - createPipelineRequest, - HttpMethods, -} from "@azure/core-rest-pipeline"; +import type { HttpMethods } from "@azure/core-rest-pipeline"; +import { createDefaultHttpClient, createPipelineRequest } from "@azure/core-rest-pipeline"; import { diag } from "@opentelemetry/api"; +import type { VirtualMachineInfo } from "./types.js"; import { AIMS_API_VERSION, AIMS_FORMAT, @@ -15,8 +13,7 @@ import { EU_ENDPOINTS, NON_EU_CONNECTION_STRING, StatsbeatResourceProvider, - VirtualMachineInfo, -} from "./types"; +} from "./types.js"; // eslint-disable-next-line @typescript-eslint/no-require-imports const os = require("os"); diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/export/trace.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/export/trace.ts index 3a5ad88e3bb5..736f564b5c6a 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/export/trace.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/export/trace.ts @@ -2,14 +2,15 @@ // Licensed under the MIT License. import { diag } from "@opentelemetry/api"; -import { ExportResult, ExportResultCode } from "@opentelemetry/core"; -import { ReadableSpan, SpanExporter } from "@opentelemetry/sdk-trace-base"; -import { AzureMonitorBaseExporter } from "./base"; -import { AzureMonitorExporterOptions } from "../config"; -import { TelemetryItem as Envelope } from "../generated"; -import { readableSpanToEnvelope, spanEventsToEnvelopes } from "../utils/spanUtils"; -import { createResourceMetricEnvelope, shouldCreateResourceMetric } from "../utils/common"; -import { HttpSender } from "../platform"; +import type { ExportResult } from "@opentelemetry/core"; +import { ExportResultCode } from "@opentelemetry/core"; +import type { ReadableSpan, SpanExporter } from "@opentelemetry/sdk-trace-base"; +import { AzureMonitorBaseExporter } from "./base.js"; +import type { AzureMonitorExporterOptions } from "../config.js"; +import type { TelemetryItem as Envelope } from "../generated/index.js"; +import { readableSpanToEnvelope, spanEventsToEnvelopes } from "../utils/spanUtils.js"; +import { createResourceMetricEnvelope, shouldCreateResourceMetric } from "../utils/common.js"; +import { HttpSender } from "../platform/index.js"; /** * Azure Monitor OpenTelemetry Trace Exporter. diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/generated/applicationInsightsClient.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/generated/applicationInsightsClient.ts index 7c5a026279e2..19c30ac26e69 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/generated/applicationInsightsClient.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/generated/applicationInsightsClient.ts @@ -7,14 +7,14 @@ */ import * as coreClient from "@azure/core-client"; -import * as Parameters from "./models/parameters"; -import * as Mappers from "./models/mappers"; +import * as Parameters from "./models/parameters.js"; +import * as Mappers from "./models/mappers.js"; import { ApplicationInsightsClientOptionalParams, TelemetryItem, TrackOptionalParams, TrackOperationResponse, -} from "./models"; +} from "./models/index.js"; export class ApplicationInsightsClient extends coreClient.ServiceClient { host: string; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/generated/index.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/generated/index.ts index 2dae670aa7cd..640ccbcc7b58 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/generated/index.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/generated/index.ts @@ -6,5 +6,5 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./models"; -export { ApplicationInsightsClient } from "./applicationInsightsClient"; +export * from "./models/index.js"; +export { ApplicationInsightsClient } from "./applicationInsightsClient.js"; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/index.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/index.ts index 7a16392660dc..6271c4c5fae0 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/index.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/index.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -export { ApplicationInsightsSampler } from "./sampling"; -export { AzureMonitorBaseExporter } from "./export/base"; -export { AzureMonitorTraceExporter } from "./export/trace"; -export { AzureMonitorMetricExporter } from "./export/metric"; -export { AzureMonitorLogExporter } from "./export/log"; -export { AzureMonitorExporterOptions } from "./config"; -export { ServiceApiVersion } from "./Declarations/Constants"; -export { ApplicationInsightsClientOptionalParams } from "./generated/models"; +export { ApplicationInsightsSampler } from "./sampling.js"; +export { AzureMonitorBaseExporter } from "./export/base.js"; +export { AzureMonitorTraceExporter } from "./export/trace.js"; +export { AzureMonitorMetricExporter } from "./export/metric.js"; +export { AzureMonitorLogExporter } from "./export/log.js"; +export { AzureMonitorExporterOptions } from "./config.js"; +export { ServiceApiVersion } from "./Declarations/Constants.js"; +export { ApplicationInsightsClientOptionalParams } from "./generated/models/index.js"; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/index.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/index.ts index 5ddb2f389b9e..687a29615b04 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/index.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/index.ts @@ -4,4 +4,4 @@ // Use the node platform by default. The "browser" field of package.json is used // to override this file to use `./browser/index.ts` when packaged with // webpack, Rollup, etc. -export * from "./nodejs"; +export * from "./nodejs/index.js"; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/baseSender.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/baseSender.ts index f4e322f4d5a0..3584aae352c2 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/baseSender.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/baseSender.ts @@ -1,16 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. + import { diag } from "@opentelemetry/api"; -import { PersistentStorage, SenderResult } from "../../types"; -import { AzureMonitorExporterOptions } from "../../config"; -import { FileSystemPersist } from "./persist"; -import { ExportResult, ExportResultCode } from "@opentelemetry/core"; -import { NetworkStatsbeatMetrics } from "../../export/statsbeat/networkStatsbeatMetrics"; -import { getInstance } from "../../export/statsbeat/longIntervalStatsbeatMetrics"; -import { RestError } from "@azure/core-rest-pipeline"; -import { MAX_STATSBEAT_FAILURES, isStatsbeatShutdownStatus } from "../../export/statsbeat/types"; -import { BreezeResponse, isRetriable } from "../../utils/breezeUtils"; -import { TelemetryItem as Envelope } from "../../generated"; +import type { PersistentStorage, SenderResult } from "../../types.js"; +import type { AzureMonitorExporterOptions } from "../../config.js"; +import { FileSystemPersist } from "./persist/index.js"; +import type { ExportResult } from "@opentelemetry/core"; +import { ExportResultCode } from "@opentelemetry/core"; +import { NetworkStatsbeatMetrics } from "../../export/statsbeat/networkStatsbeatMetrics.js"; +import { getInstance } from "../../export/statsbeat/longIntervalStatsbeatMetrics.js"; +import type { RestError } from "@azure/core-rest-pipeline"; +import { MAX_STATSBEAT_FAILURES, isStatsbeatShutdownStatus } from "../../export/statsbeat/types.js"; +import type { BreezeResponse } from "../../utils/breezeUtils.js"; +import { isRetriable } from "../../utils/breezeUtils.js"; +import type { TelemetryItem as Envelope } from "../../generated/index.js"; const DEFAULT_BATCH_SEND_RETRY_INTERVAL_MS = 60_000; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/context/context.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/context/context.ts index 11bcd61d6e51..0f3704b4465a 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/context/context.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/context/context.ts @@ -1,13 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as os from "os"; +import * as os from "node:os"; import { SDK_INFO } from "@opentelemetry/core"; -import { SemanticResourceAttributes } from "@opentelemetry/semantic-conventions"; - -import { KnownContextTagKeys } from "../../../generated"; -import * as ai from "../../../utils/constants/applicationinsights"; -import { Tags } from "../../../types"; +import { ATTR_TELEMETRY_SDK_VERSION } from "@opentelemetry/semantic-conventions"; +import { KnownContextTagKeys } from "../../../generated/index.js"; +import * as ai from "../../../utils/constants/applicationinsights.js"; +import type { Tags } from "../../../types.js"; let instance: Context | null = null; @@ -37,7 +36,7 @@ export class Context { private _loadInternalContext(): void { const { node } = process.versions; [Context.nodeVersion] = node.split("."); - Context.opentelemetryVersion = SDK_INFO[SemanticResourceAttributes.TELEMETRY_SDK_VERSION]; + Context.opentelemetryVersion = SDK_INFO[ATTR_TELEMETRY_SDK_VERSION]; Context.sdkVersion = ai.packageVersion; const prefix = process.env["AZURE_MONITOR_PREFIX"] ? process.env["AZURE_MONITOR_PREFIX"] : ""; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/context/index.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/context/index.ts index c837224cb1ce..4973943ec446 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/context/index.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/context/index.ts @@ -1,4 +1,4 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -export * from "./context"; +export * from "./context.js"; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/httpSender.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/httpSender.ts index a318f2322933..02c2423cb051 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/httpSender.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/httpSender.ts @@ -1,18 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import url from "url"; + +import url from "node:url"; import { diag } from "@opentelemetry/api"; -import { FullOperationResponse } from "@azure/core-client"; +import type { FullOperationResponse } from "@azure/core-client"; import { redirectPolicyName } from "@azure/core-rest-pipeline"; -import { SenderResult } from "../../types"; -import { +import type { SenderResult } from "../../types.js"; +import type { TelemetryItem as Envelope, - ApplicationInsightsClient, ApplicationInsightsClientOptionalParams, TrackOptionalParams, -} from "../../generated"; -import { AzureMonitorExporterOptions } from "../../config"; -import { BaseSender } from "./baseSender"; +} from "../../generated/index.js"; +import { ApplicationInsightsClient } from "../../generated/index.js"; +import type { AzureMonitorExporterOptions } from "../../config.js"; +import { BaseSender } from "./baseSender.js"; const applicationInsightsResource = "https://monitor.azure.com//.default"; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/index.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/index.ts index 280bb01803ac..75911cc54919 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/index.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/index.ts @@ -4,7 +4,7 @@ /** * Node.js specific platform utils */ -export * from "./constants"; -export * from "./persist"; -export * from "./httpSender"; -export * from "./context"; +export * from "./constants.js"; +export * from "./persist/index.js"; +export * from "./httpSender.js"; +export * from "./context/index.js"; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/fileAccessControl.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/fileAccessControl.ts index f7b737ef85aa..98172efa7193 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/fileAccessControl.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/fileAccessControl.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as fs from "fs"; -import * as os from "os"; +import * as fs from "node:fs"; +import * as os from "node:os"; import * as child_process from "child_process"; import { diag } from "@opentelemetry/api"; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/fileSystemHelpers.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/fileSystemHelpers.ts index 5006fa5784a2..07dca56812c5 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/fileSystemHelpers.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/fileSystemHelpers.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { diag } from "@opentelemetry/api"; -import * as fs from "fs"; -import * as path from "path"; -import { promisify } from "util"; +import * as fs from "node:fs"; +import * as path from "node:path"; +import { promisify } from "node:util"; const readdirAsync = promisify(fs.readdir); const statAsync = promisify(fs.stat); diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/fileSystemPersist.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/fileSystemPersist.ts index c9f09a29f1ed..68a4a3b1a88c 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/fileSystemPersist.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/fileSystemPersist.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as fs from "fs"; -import * as os from "os"; -import * as path from "path"; +import * as fs from "node:fs"; +import * as os from "node:os"; +import * as path from "node:path"; import { diag } from "@opentelemetry/api"; -import { PersistentStorage } from "../../../types"; -import { FileAccessControl } from "./fileAccessControl"; -import { confirmDirExists, getShallowDirectorySize } from "./fileSystemHelpers"; -import { promisify } from "util"; -import { AzureMonitorExporterOptions } from "../../../config"; +import type { PersistentStorage } from "../../../types.js"; +import { FileAccessControl } from "./fileAccessControl.js"; +import { confirmDirExists, getShallowDirectorySize } from "./fileSystemHelpers.js"; +import { promisify } from "node:util"; +import type { AzureMonitorExporterOptions } from "../../../config.js"; const statAsync = promisify(fs.stat); const readdirAsync = promisify(fs.readdir); diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/index.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/index.ts index c82d4a76f24c..327afa6a9fde 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/index.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/platform/nodejs/persist/index.ts @@ -1,4 +1,4 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -export * from "./fileSystemPersist"; +export * from "./fileSystemPersist.js"; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/sampling.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/sampling.ts index c78cac1e4c76..8698042ce541 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/sampling.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/sampling.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Link, Attributes, SpanKind, Context } from "@opentelemetry/api"; -import { Sampler, SamplingDecision, SamplingResult } from "@opentelemetry/sdk-trace-base"; -import { AzureMonitorSampleRate } from "./utils/constants/applicationinsights"; +import type { Link, Attributes, SpanKind, Context } from "@opentelemetry/api"; +import type { Sampler, SamplingResult } from "@opentelemetry/sdk-trace-base"; +import { SamplingDecision } from "@opentelemetry/sdk-trace-base"; +import { AzureMonitorSampleRate } from "./utils/constants/applicationinsights.js"; /** * ApplicationInsightsSampler is responsible for the following: diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/types.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/types.ts index d682c370787d..c134c4bb1651 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/types.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/types.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ContextTagKeys } from "./generated"; +import type { ContextTagKeys } from "./generated/index.js"; /** * Azure Monitor envelope tags. diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/utils/common.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/utils/common.ts index 579087beb68b..619188666eec 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/utils/common.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/utils/common.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import os from "os"; +import os from "node:os"; import { SEMRESATTRS_DEVICE_ID, SEMRESATTRS_DEVICE_MODEL_NAME, @@ -34,17 +34,18 @@ import { SEMRESATTRS_K8S_JOB_NAME, SEMRESATTRS_K8S_CRONJOB_NAME, SEMRESATTRS_K8S_DAEMONSET_NAME, - SEMRESATTRS_TELEMETRY_SDK_VERSION, - SEMRESATTRS_TELEMETRY_SDK_LANGUAGE, - SEMRESATTRS_TELEMETRY_SDK_NAME, + ATTR_TELEMETRY_SDK_VERSION, + ATTR_TELEMETRY_SDK_LANGUAGE, + ATTR_TELEMETRY_SDK_NAME, } from "@opentelemetry/semantic-conventions"; -import { Tags } from "../types"; -import { getInstance } from "../platform"; -import { KnownContextTagKeys, TelemetryItem as Envelope, MetricsData } from "../generated"; -import { Resource } from "@opentelemetry/resources"; -import { Attributes, HrTime } from "@opentelemetry/api"; +import type { Tags } from "../types.js"; +import { getInstance } from "../platform/index.js"; +import type { TelemetryItem as Envelope, MetricsData } from "../generated/index.js"; +import { KnownContextTagKeys } from "../generated/index.js"; +import type { Resource } from "@opentelemetry/resources"; +import type { Attributes, HrTime } from "@opentelemetry/api"; import { hrTimeToNanoseconds } from "@opentelemetry/core"; -import { AnyValue } from "@opentelemetry/api-logs"; +import type { AnyValue } from "@opentelemetry/api-logs"; export function hrTimeToDate(hrTime: HrTime): Date { return new Date(hrTimeToNanoseconds(hrTime) / 1000000); @@ -223,9 +224,9 @@ export function createResourceMetricEnvelope( if ( !( key.startsWith("_MS.") || - key === SEMRESATTRS_TELEMETRY_SDK_VERSION || - key === SEMRESATTRS_TELEMETRY_SDK_LANGUAGE || - key === SEMRESATTRS_TELEMETRY_SDK_NAME + key === ATTR_TELEMETRY_SDK_VERSION || + key === ATTR_TELEMETRY_SDK_LANGUAGE || + key === ATTR_TELEMETRY_SDK_NAME ) ) { resourceAttributes[key] = resource.attributes[key] as string; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/utils/connectionStringParser.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/utils/connectionStringParser.ts index c5636e73d51c..69a71568f66e 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/utils/connectionStringParser.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/utils/connectionStringParser.ts @@ -2,9 +2,8 @@ // Licensed under the MIT License. import { diag } from "@opentelemetry/api"; -import { ConnectionString, ConnectionStringKey } from "../Declarations/Contracts"; - -import * as Constants from "../Declarations/Constants"; +import type { ConnectionString, ConnectionStringKey } from "../Declarations/Contracts/index.js"; +import * as Constants from "../Declarations/Constants.js"; /** * ConnectionString parser. diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/utils/eventhub.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/utils/eventhub.ts index 8d3fae74a2ec..f57084b33f8b 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/utils/eventhub.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/utils/eventhub.ts @@ -4,14 +4,11 @@ import { SpanKind } from "@opentelemetry/api"; import { hrTimeToMilliseconds } from "@opentelemetry/core"; import { SEMATTRS_NET_PEER_NAME } from "@opentelemetry/semantic-conventions"; -import { ReadableSpan } from "@opentelemetry/sdk-trace-base"; -import { RemoteDependencyData, RequestData } from "../generated"; -import { TIME_SINCE_ENQUEUED, ENQUEUED_TIME } from "./constants/applicationinsights"; -import { - AzNamespace, - MessageBusDestination, - MicrosoftEventHub, -} from "./constants/span/azAttributes"; +import type { ReadableSpan } from "@opentelemetry/sdk-trace-base"; +import type { RemoteDependencyData, RequestData } from "../generated/index.js"; +import { TIME_SINCE_ENQUEUED, ENQUEUED_TIME } from "./constants/applicationinsights.js"; +import type { MicrosoftEventHub } from "./constants/span/azAttributes.js"; +import { AzNamespace, MessageBusDestination } from "./constants/span/azAttributes.js"; /** * Average span.links[].attributes.enqueuedTime diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/utils/logUtils.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/utils/logUtils.ts index a9ef003d5ce5..645574d1391d 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/utils/logUtils.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/utils/logUtils.ts @@ -1,26 +1,26 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AvailabilityData, TelemetryItem as Envelope, - KnownContextTagKeys, - KnownSeverityLevel, MessageData, MonitorDomain, PageViewData, TelemetryEventData, TelemetryExceptionData, TelemetryExceptionDetails, -} from "../generated"; -import { createTagsFromResource, hrTimeToDate, serializeAttribute } from "./common"; -import { ReadableLogRecord } from "@opentelemetry/sdk-logs"; +} from "../generated/index.js"; +import { KnownContextTagKeys, KnownSeverityLevel } from "../generated/index.js"; +import { createTagsFromResource, hrTimeToDate, serializeAttribute } from "./common.js"; +import type { ReadableLogRecord } from "@opentelemetry/sdk-logs"; import { - SEMATTRS_EXCEPTION_MESSAGE, - SEMATTRS_EXCEPTION_STACKTRACE, - SEMATTRS_EXCEPTION_TYPE, + ATTR_EXCEPTION_MESSAGE, + ATTR_EXCEPTION_STACKTRACE, + ATTR_EXCEPTION_TYPE, } from "@opentelemetry/semantic-conventions"; -import { MaxPropertyLengths, Measurements, Properties, Tags } from "../types"; +import type { Measurements, Properties, Tags } from "../types.js"; +import { MaxPropertyLengths } from "../types.js"; import { diag } from "@opentelemetry/api"; import { ApplicationInsightsAvailabilityBaseType, @@ -34,7 +34,7 @@ import { ApplicationInsightsMessageName, ApplicationInsightsPageViewBaseType, ApplicationInsightsPageViewName, -} from "./constants/applicationinsights"; +} from "./constants/applicationinsights.js"; /** * Log to Azure envelope parsing. @@ -53,10 +53,10 @@ export function logToEnvelope(log: ReadableLogRecord, ikey: string): Envelope | if (!log.attributes[ApplicationInsightsBaseType]) { // Get Exception attributes if available - const exceptionType = log.attributes[SEMATTRS_EXCEPTION_TYPE]; + const exceptionType = log.attributes[ATTR_EXCEPTION_TYPE]; if (exceptionType) { - const exceptionMessage = log.attributes[SEMATTRS_EXCEPTION_MESSAGE]; - const exceptionStacktrace = log.attributes[SEMATTRS_EXCEPTION_STACKTRACE]; + const exceptionMessage = log.attributes[ATTR_EXCEPTION_MESSAGE]; + const exceptionStacktrace = log.attributes[ATTR_EXCEPTION_STACKTRACE]; name = ApplicationInsightsExceptionName; baseType = ApplicationInsightsExceptionBaseType; const exceptionDetails: TelemetryExceptionDetails = { @@ -139,9 +139,9 @@ function createPropertiesFromLog(log: ReadableLogRecord): [Properties, Measureme if ( !( key.startsWith("_MS.") || - key === SEMATTRS_EXCEPTION_TYPE || - key === SEMATTRS_EXCEPTION_MESSAGE || - key === SEMATTRS_EXCEPTION_STACKTRACE + key === ATTR_EXCEPTION_TYPE || + key === ATTR_EXCEPTION_MESSAGE || + key === ATTR_EXCEPTION_STACKTRACE ) ) { properties[key] = serializeAttribute(log.attributes[key]); diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/utils/metricUtils.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/utils/metricUtils.ts index 5ad4b64f970d..8a5d3abc574f 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/utils/metricUtils.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/utils/metricUtils.ts @@ -1,11 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Attributes } from "@opentelemetry/api"; -import { DataPointType, Histogram, ResourceMetrics } from "@opentelemetry/sdk-metrics"; -import { TelemetryItem as Envelope, MetricsData, MetricDataPoint } from "../generated"; -import { createTagsFromResource } from "./common"; -import { BreezePerformanceCounterNames, OTelPerformanceCounterNames } from "../types"; +import type { Attributes } from "@opentelemetry/api"; +import type { Histogram, ResourceMetrics } from "@opentelemetry/sdk-metrics"; +import { DataPointType } from "@opentelemetry/sdk-metrics"; +import type { + TelemetryItem as Envelope, + MetricsData, + MetricDataPoint, +} from "../generated/index.js"; +import { createTagsFromResource } from "./common.js"; +import { BreezePerformanceCounterNames, OTelPerformanceCounterNames } from "../types.js"; const breezePerformanceCountersMap = new Map([ [OTelPerformanceCounterNames.PRIVATE_BYTES, BreezePerformanceCounterNames.PRIVATE_BYTES], diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/utils/spanUtils.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/utils/spanUtils.ts index cf43efb21656..58394ae2f7ac 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/utils/spanUtils.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/utils/spanUtils.ts @@ -1,18 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ReadableSpan, TimedEvent } from "@opentelemetry/sdk-trace-base"; +import type { ReadableSpan, TimedEvent } from "@opentelemetry/sdk-trace-base"; import { hrTimeToMilliseconds } from "@opentelemetry/core"; -import { - diag, - SpanKind, - SpanStatusCode, - Link, - Attributes, - SpanContext, - isValidTraceId, - isValidSpanId, -} from "@opentelemetry/api"; +import type { Link, Attributes, SpanContext } from "@opentelemetry/api"; +import { diag, SpanKind, SpanStatusCode, isValidTraceId, isValidSpanId } from "@opentelemetry/api"; import { DBSYSTEMVALUES_MONGODB, DBSYSTEMVALUES_MYSQL, @@ -48,21 +40,26 @@ import { hrTimeToDate, isSqlDB, serializeAttribute, -} from "./common"; -import { Tags, Properties, MSLink, Measurements, MaxPropertyLengths } from "../types"; -import { parseEventHubSpan } from "./eventhub"; -import { AzureMonitorSampleRate, DependencyTypes, MS_LINKS } from "./constants/applicationinsights"; -import { AzNamespace, MicrosoftEventHub } from "./constants/span/azAttributes"; +} from "./common.js"; +import type { Tags, Properties, MSLink, Measurements } from "../types.js"; +import { MaxPropertyLengths } from "../types.js"; +import { parseEventHubSpan } from "./eventhub.js"; import { + AzureMonitorSampleRate, + DependencyTypes, + MS_LINKS, +} from "./constants/applicationinsights.js"; +import { AzNamespace, MicrosoftEventHub } from "./constants/span/azAttributes.js"; +import type { TelemetryExceptionData, MessageData, RemoteDependencyData, RequestData, TelemetryItem as Envelope, - KnownContextTagKeys, TelemetryExceptionDetails, -} from "../generated"; -import { msToTimeSpan } from "./breezeUtils"; +} from "../generated/index.js"; +import { KnownContextTagKeys } from "../generated/index.js"; +import { msToTimeSpan } from "./breezeUtils.js"; function createTagsFromSpan(span: ReadableSpan): Tags { const tags: Tags = createTagsFromResource(span.resource); diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/commonUtils.test.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/commonUtils.spec.ts similarity index 96% rename from sdk/monitor/monitor-opentelemetry-exporter/test/internal/commonUtils.test.ts rename to sdk/monitor/monitor-opentelemetry-exporter/test/internal/commonUtils.spec.ts index abcd400c55f3..94851ce677fc 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/commonUtils.test.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/commonUtils.spec.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import os from "os"; -import * as assert from "assert"; + +import os from "node:os"; import { Resource } from "@opentelemetry/resources"; -import { Tags } from "../../src/types"; -import { createTagsFromResource, serializeAttribute } from "../../src/utils/common"; +import type { Tags } from "../../src/types.js"; +import { createTagsFromResource, serializeAttribute } from "../../src/utils/common.js"; +import { describe, it, assert } from "vitest"; describe("commonUtils.ts", () => { describe("#createTagsFromResource", () => { diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/connectionStringParser.test.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/connectionStringParser.spec.ts similarity index 97% rename from sdk/monitor/monitor-opentelemetry-exporter/test/internal/connectionStringParser.test.ts rename to sdk/monitor/monitor-opentelemetry-exporter/test/internal/connectionStringParser.spec.ts index 1d2f1e020ccf..63576e7fa82b 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/connectionStringParser.test.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/connectionStringParser.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as assert from "assert"; -import * as Constants from "../../src/Declarations/Constants"; -import { ConnectionStringParser } from "../../src/utils/connectionStringParser"; +import * as Constants from "../../src/Declarations/Constants.js"; +import { ConnectionStringParser } from "../../src/utils/connectionStringParser.js"; +import { describe, it, assert } from "vitest"; describe("ConnectionStringParser", () => { describe("#parse()", () => { diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/context.test.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/context.spec.ts similarity index 89% rename from sdk/monitor/monitor-opentelemetry-exporter/test/internal/context.test.ts rename to sdk/monitor/monitor-opentelemetry-exporter/test/internal/context.spec.ts index 660db3b2abf5..d77b128f07aa 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/context.test.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/context.spec.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context, getInstance } from "../../src/platform"; -import * as assert from "assert"; +import { Context, getInstance } from "../../src/platform/index.js"; +import { describe, it, assert } from "vitest"; describe("context.ts", () => { - describe("#constructor", () => { + it("#constructor", () => { const context = getInstance(); assert.ok(Context.nodeVersion, "Missing nodeVersion"); assert.ok(Context.opentelemetryVersion, "Missing opentelemetryVersion"); @@ -14,7 +14,7 @@ describe("context.ts", () => { assert.ok(context.tags["ai.internal.sdkVersion"], "Missing ai.internal.sdkVersion"); }); - describe("#_loadInternalContext", () => { + it("#_loadInternalContext", () => { const context = getInstance(); context["_loadInternalContext"](); assert.ok( diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/eventhub.test.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/eventhub.spec.ts similarity index 85% rename from sdk/monitor/monitor-opentelemetry-exporter/test/internal/eventhub.test.ts rename to sdk/monitor/monitor-opentelemetry-exporter/test/internal/eventhub.spec.ts index 496470a3d89c..aa0c93f0daf9 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/eventhub.test.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/eventhub.spec.ts @@ -1,25 +1,29 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { SpanAttributes, HrTime, SpanContext, SpanKind, ROOT_CONTEXT } from "@opentelemetry/api"; +import type { Attributes, HrTime, SpanContext } from "@opentelemetry/api"; +import { SpanKind, ROOT_CONTEXT } from "@opentelemetry/api"; import { timeInputToHrTime } from "@opentelemetry/core"; import { BasicTracerProvider, Span } from "@opentelemetry/sdk-trace-base"; -import * as assert from "assert"; -import { ENQUEUED_TIME, TIME_SINCE_ENQUEUED } from "../../src/utils/constants/applicationinsights"; +import { + ENQUEUED_TIME, + TIME_SINCE_ENQUEUED, +} from "../../src/utils/constants/applicationinsights.js"; import { AzNamespace, MessageBusDestination, MicrosoftEventHub, -} from "../../src/utils/constants/span/azAttributes"; -import { parseEventHubSpan } from "../../src/utils/eventhub"; -import { RemoteDependencyData, TelemetryItem as Envelope } from "../../src/generated"; +} from "../../src/utils/constants/span/azAttributes.js"; +import { parseEventHubSpan } from "../../src/utils/eventhub.js"; +import type { RemoteDependencyData, TelemetryItem as Envelope } from "../../src/generated/index.js"; +import { describe, it, assert } from "vitest"; const tracer = new BasicTracerProvider().getTracer("default"); describe("#parseEventHubSpan(...)", () => { const peerAddress = "example.servicebus.windows.net"; const destination = "test123"; - const attributes: SpanAttributes = { + const attributes: Attributes = { [AzNamespace]: MicrosoftEventHub, ["peer.address"]: peerAddress, [MessageBusDestination]: destination, diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/fileSystemPersist.test.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/fileSystemPersist.spec.ts similarity index 91% rename from sdk/monitor/monitor-opentelemetry-exporter/test/internal/fileSystemPersist.test.ts rename to sdk/monitor/monitor-opentelemetry-exporter/test/internal/fileSystemPersist.spec.ts index f764cfe8e9eb..aa4a8b6cf70e 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/fileSystemPersist.test.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/fileSystemPersist.spec.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as assert from "assert"; -import * as fs from "fs"; -import * as os from "os"; -import * as path from "path"; -import { FileSystemPersist } from "../../src/platform/nodejs/persist/fileSystemPersist"; -import { TelemetryItem as Envelope } from "../../src/generated"; -import { promisify } from "util"; -import { FileAccessControl } from "../../src/platform/nodejs/persist/fileAccessControl"; +import * as fs from "node:fs"; +import * as os from "node:os"; +import * as path from "node:path"; +import { FileSystemPersist } from "../../src/platform/nodejs/persist/fileSystemPersist.js"; +import type { TelemetryItem as Envelope } from "../../src/generated/index.js"; +import { promisify } from "node:util"; +import { FileAccessControl } from "../../src/platform/nodejs/persist/fileAccessControl.js"; +import { describe, it, assert, expect, beforeEach } from "vitest"; const statAsync = promisify(fs.stat); const readdirAsync = promisify(fs.readdir); @@ -66,18 +66,6 @@ describe("FileSystemPersist", () => { deleteFolderRecursive(tempDir); }); - afterEach((done) => { - fs.readdir(tempDir, (err, files) => { - if (err) { - console.error(err); - done(); - } else { - assert.deepStrictEqual(files, []); - done(); - } - }); - }); - describe("#configuration", () => { it("disableOfflineStorage", async () => { const envelope: Envelope = { @@ -163,18 +151,16 @@ describe("FileSystemPersist", () => { describe("#shift()", () => { it("should not crash if folder does not exist", () => { const persister = new FileSystemPersist(instrumentationKey); - assert.doesNotThrow(async () => { - await persister.shift(); - }); + expect(() => persister.shift()).not.toThrow(); }); it("should not crash if file does not exist", () => { const persister = new FileSystemPersist(instrumentationKey); const mkdirAsync = promisify(fs.mkdir); - assert.doesNotThrow(async () => { + expect(async () => { await mkdirAsync(tempDir); await persister.shift(); - }); + }).not.toThrow(); }); it("should get the first file on disk and return it", async () => { diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/functional/log.test.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/functional/log.test.ts index 3d2670a2486f..b78320c9493f 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/functional/log.test.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/functional/log.test.ts @@ -1,19 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { assertCount, assertLogExpectation } from "../../utils/assert"; -import { LogBasicScenario } from "../../utils/basic"; -import { DEFAULT_BREEZE_ENDPOINT } from "../../../src/Declarations/Constants"; +import { assertCount, assertLogExpectation } from "../../utils/assert.js"; +import { LogBasicScenario } from "../../utils/basic.js"; +import { DEFAULT_BREEZE_ENDPOINT } from "../../../src/Declarations/Constants.js"; import nock from "nock"; -import { successfulBreezeResponse } from "../../utils/breezeTestUtils"; -import { TelemetryItem as Envelope } from "../../../src/generated"; +import { successfulBreezeResponse } from "../../utils/breezeTestUtils.js"; +import type { TelemetryItem as Envelope } from "../../../src/generated/index.js"; +import { describe, it, beforeAll, afterAll } from "vitest"; describe("Log Exporter Scenarios", () => { describe(LogBasicScenario.prototype.constructor.name, () => { const scenario = new LogBasicScenario(); const ingest: Envelope[] = []; - before(() => { + beforeAll(() => { nock(DEFAULT_BREEZE_ENDPOINT) .post("/v2.1/track", (body: Envelope[]) => { // todo: gzip is not supported by generated applicationInsightsClient @@ -27,28 +28,20 @@ describe("Log Exporter Scenarios", () => { scenario.prepare(); }); - after(() => { + afterAll(() => { scenario.cleanup(); nock.cleanAll(); }); - it("should work", (done) => { - scenario - .run() - .then(() => { - // promisify doesn't work on this, so use callbacks/done for now - // eslint-disable-next-line promise/always-return - return scenario.flush().then(() => { - setTimeout(() => { - assertLogExpectation(ingest, scenario.expectation); - assertCount(ingest, scenario.expectation); - done(); - }, 1); - }); - }) - .catch((e) => { - done(e); - }); + it("should work", async () => { + await scenario.run(); + // promisify doesn't work on this, so use callbacks/done for now + // eslint-disable-next-line promise/always-return + await scenario.flush(); + setTimeout(() => { + assertLogExpectation(ingest, scenario.expectation); + assertCount(ingest, scenario.expectation); + }, 1); }); }); }); diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/functional/metric.test.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/functional/metric.test.ts index 20d360f1f5e5..79cfb1bc8e3b 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/functional/metric.test.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/functional/metric.test.ts @@ -1,19 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { assertCount, assertMetricExpectation } from "../../utils/assert"; -import { MetricBasicScenario } from "../../utils/basic"; -import { DEFAULT_BREEZE_ENDPOINT } from "../../../src/Declarations/Constants"; +import { assertCount, assertMetricExpectation } from "../../utils/assert.js"; +import { MetricBasicScenario } from "../../utils/basic.js"; +import { DEFAULT_BREEZE_ENDPOINT } from "../../../src/Declarations/Constants.js"; import nock from "nock"; -import { successfulBreezeResponse } from "../../utils/breezeTestUtils"; -import { TelemetryItem as Envelope } from "../../../src/generated"; +import { successfulBreezeResponse } from "../../utils/breezeTestUtils.js"; +import type { TelemetryItem as Envelope } from "../../../src/generated/index.js"; +import { describe, it, beforeAll, afterAll } from "vitest"; describe("Metric Exporter Scenarios", () => { describe(MetricBasicScenario.prototype.constructor.name, () => { const scenario = new MetricBasicScenario(); let ingest: Envelope[] = []; - before(() => { + beforeAll(() => { nock(DEFAULT_BREEZE_ENDPOINT) .post("/v2.1/track", (body: Envelope[]) => { ingest.push(...body); @@ -24,27 +25,19 @@ describe("Metric Exporter Scenarios", () => { scenario.prepare(); }); - after(() => { + afterAll(() => { scenario.cleanup(); nock.cleanAll(); ingest = []; }); - it("should work", (done) => { - scenario - .run() - .then(() => { - // promisify doesn't work on this, so use callbacks/done for now - // eslint-disable-next-line promise/always-return - return scenario.flush().then(() => { - assertMetricExpectation(ingest, scenario.expectation); - assertCount(ingest, scenario.expectation); - done(); - }); - }) - .catch((e) => { - done(e); - }); + it("should work", async () => { + await scenario.run(); + // promisify doesn't work on this, so use callbacks/done for now + // eslint-disable-next-line promise/always-return + await scenario.flush(); + assertMetricExpectation(ingest, scenario.expectation); + assertCount(ingest, scenario.expectation); }); }); }); diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/functional/trace.test.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/functional/trace.test.ts index 8c20f5860d02..be303e995bc4 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/functional/trace.test.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/functional/trace.test.ts @@ -1,19 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { assertCount, assertTraceExpectation } from "../../utils/assert"; -import { TraceBasicScenario } from "../../utils/basic"; -import { DEFAULT_BREEZE_ENDPOINT } from "../../../src/Declarations/Constants"; +import { assertCount, assertTraceExpectation } from "../../utils/assert.js"; +import { TraceBasicScenario } from "../../utils/basic.js"; +import { DEFAULT_BREEZE_ENDPOINT } from "../../../src/Declarations/Constants.js"; import nock from "nock"; -import { successfulBreezeResponse } from "../../utils/breezeTestUtils"; -import { TelemetryItem as Envelope } from "../../../src/generated"; +import { successfulBreezeResponse } from "../../utils/breezeTestUtils.js"; +import type { TelemetryItem as Envelope } from "../../../src/generated/index.js"; +import { describe, it, beforeAll, afterAll } from "vitest"; describe("Trace Exporter Scenarios", () => { describe(TraceBasicScenario.prototype.constructor.name, () => { const scenario = new TraceBasicScenario(); let ingest: Envelope[] = []; - before(() => { + beforeAll(() => { nock(DEFAULT_BREEZE_ENDPOINT) .post("/v2.1/track", (body: Envelope[]) => { // todo: gzip is not supported by generated applicationInsightsClient @@ -27,27 +28,17 @@ describe("Trace Exporter Scenarios", () => { scenario.prepare(); }); - after(() => { + afterAll(() => { scenario.cleanup(); nock.cleanAll(); ingest = []; }); - it("should work", (done) => { - scenario - .run() - .then(() => { - // promisify doesn't work on this, so use callbacks/done for now - // eslint-disable-next-line promise/always-return - return scenario.flush().then(() => { - assertTraceExpectation(ingest, scenario.expectation); - assertCount(ingest, scenario.expectation); - done(); - }); - }) - .catch((e) => { - done(e); - }); + it("should work", async () => { + await scenario.run(); + await scenario.flush(); + assertTraceExpectation(ingest, scenario.expectation); + assertCount(ingest, scenario.expectation); }); }); @@ -55,7 +46,7 @@ describe("Trace Exporter Scenarios", () => { const scenario = new TraceBasicScenario(); let ingest: Envelope[] = []; - before(() => { + beforeAll(() => { process.env.ENV_OPENTELEMETRY_RESOURCE_METRIC_DISABLED = "true"; nock(DEFAULT_BREEZE_ENDPOINT) .post("/v2.1/track", (body: Envelope[]) => { @@ -70,27 +61,18 @@ describe("Trace Exporter Scenarios", () => { scenario.prepare(); }); - after(() => { + afterAll(() => { scenario.cleanup(); nock.cleanAll(); ingest = []; }); - it("should work with OTel resource metric disabled", (done) => { - scenario - .run() - .then(() => { - // promisify doesn't work on this, so use callbacks/done for now - // eslint-disable-next-line promise/always-return - return scenario.flush().then(() => { - assertTraceExpectation(ingest, scenario.disabledExpectation); - assertCount(ingest, scenario.disabledExpectation); - done(); - }); - }) - .catch((e) => { - done(e); - }); + it("should work with OTel resource metric disabled", async () => { + await scenario.run(); + + await scenario.flush(); + assertTraceExpectation(ingest, scenario.disabledExpectation); + assertCount(ingest, scenario.disabledExpectation); }); }); }); diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/httpSender.test.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/httpSender.spec.ts similarity index 67% rename from sdk/monitor/monitor-opentelemetry-exporter/test/internal/httpSender.test.ts rename to sdk/monitor/monitor-opentelemetry-exporter/test/internal/httpSender.spec.ts index 5820c09490be..dc7324741bef 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/httpSender.test.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/httpSender.spec.ts @@ -1,19 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as assert from "assert"; -import { AccessToken, TokenCredential } from "@azure/core-auth"; -import { HttpSender } from "../../src/platform/nodejs/httpSender"; -import { DEFAULT_BREEZE_ENDPOINT } from "../../src/Declarations/Constants"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; +import { HttpSender } from "../../src/platform/nodejs/httpSender.js"; +import { DEFAULT_BREEZE_ENDPOINT } from "../../src/Declarations/Constants.js"; import { successfulBreezeResponse, failedBreezeResponse, partialBreezeResponse, -} from "../utils/breezeTestUtils"; -import { TelemetryItem as Envelope } from "../../src/generated"; +} from "../utils/breezeTestUtils.js"; +import type { TelemetryItem as Envelope } from "../../src/generated/index.js"; import nock from "nock"; -import { PipelinePolicy } from "@azure/core-rest-pipeline"; +import type { PipelinePolicy } from "@azure/core-rest-pipeline"; import { ExportResultCode } from "@opentelemetry/core"; +import { describe, it, assert, afterAll } from "vitest"; function toObject(obj: T): T { return JSON.parse(JSON.stringify(obj)) as T; @@ -41,7 +41,7 @@ describe("HttpSender", () => { const scope = nock(DEFAULT_BREEZE_ENDPOINT).persist().post("/v2.1/track"); nock.disableNetConnect(); - after(() => { + afterAll(() => { nock.cleanAll(); nock.enableNetConnect(); }); @@ -50,7 +50,7 @@ describe("HttpSender", () => { it("should create a valid instance", () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -63,23 +63,26 @@ describe("HttpSender", () => { name: "name", time: new Date(), }; - it("should send a valid envelope", async () => { + it("should send a valid envelope", () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); scope.reply(200, JSON.stringify(successfulBreezeResponse(1))); - const { result, statusCode } = await sender.send([envelope]); - assert.strictEqual(statusCode, 200); - assert.deepStrictEqual(JSON.parse(result), successfulBreezeResponse(1)); + // eslint-disable-next-line @typescript-eslint/no-misused-promises + setTimeout(async () => { + const { result, statusCode } = await sender.send([envelope]); + assert.strictEqual(statusCode, 200); + assert.deepStrictEqual(JSON.parse(result), successfulBreezeResponse(1)); + }, 1500); }); it("should send an invalid non-retriable envelope", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -93,23 +96,26 @@ describe("HttpSender", () => { } }); - it("should send a partially retriable envelope", async () => { + it("should send a partially retriable envelope", () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); scope.reply(206, JSON.stringify(partialBreezeResponse([200, 408, 408]))); - const { result, statusCode } = await sender.send([envelope, envelope]); - assert.strictEqual(statusCode, 206); - assert.deepStrictEqual(JSON.parse(result), partialBreezeResponse([200, 408, 408])); + // eslint-disable-next-line @typescript-eslint/no-misused-promises + setTimeout(async () => { + const { result, statusCode } = await sender.send([envelope, envelope]); + assert.strictEqual(statusCode, 206); + assert.deepStrictEqual(JSON.parse(result), partialBreezeResponse([200, 408, 408])); + }, 1500); }); it("should persist retriable failed telemetry 429", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -120,14 +126,17 @@ describe("HttpSender", () => { assert.strictEqual(result.code, ExportResultCode.SUCCESS); const persistedEnvelopes = (await sender["persister"].shift()) as Envelope[]; - assert.strictEqual(persistedEnvelopes?.length, 1); - assert.deepStrictEqual(persistedEnvelopes[0], toObject(envelope)); + // Test enters race condition without this timeout. + setTimeout(() => { + assert.strictEqual(persistedEnvelopes?.length, 1); + assert.deepStrictEqual(persistedEnvelopes[0], toObject(envelope)); + }, 1500); }); it("should persist retriable failed telemetry 500", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -138,14 +147,17 @@ describe("HttpSender", () => { assert.strictEqual(result.code, ExportResultCode.SUCCESS); const persistedEnvelopes = (await sender["persister"].shift()) as Envelope[]; - assert.strictEqual(persistedEnvelopes?.length, 1); - assert.deepStrictEqual(persistedEnvelopes[0], toObject(envelope)); + // Test enters race condition without this timeout. + setTimeout(() => { + assert.strictEqual(persistedEnvelopes?.length, 1); + assert.deepStrictEqual(persistedEnvelopes[0], toObject(envelope)); + }, 1500); }); it("should persist retriable failed 502", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -156,14 +168,17 @@ describe("HttpSender", () => { assert.strictEqual(result.code, ExportResultCode.SUCCESS); const persistedEnvelopes = (await sender["persister"].shift()) as Envelope[]; - assert.strictEqual(persistedEnvelopes?.length, 1); - assert.deepStrictEqual(persistedEnvelopes[0], toObject(envelope)); + // Test enters race condition without this timeout. + setTimeout(() => { + assert.strictEqual(persistedEnvelopes?.length, 1); + assert.deepStrictEqual(persistedEnvelopes[0], toObject(envelope)); + }, 1500); }); it("should persist retriable failed telemetry 503", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -174,14 +189,17 @@ describe("HttpSender", () => { assert.strictEqual(result.code, ExportResultCode.SUCCESS); const persistedEnvelopes = (await sender["persister"].shift()) as Envelope[]; - assert.strictEqual(persistedEnvelopes?.length, 1); - assert.deepStrictEqual(persistedEnvelopes[0], toObject(envelope)); + // Test enters race condition without this timeout. + setTimeout(() => { + assert.strictEqual(persistedEnvelopes?.length, 1); + assert.deepStrictEqual(persistedEnvelopes[0], toObject(envelope)); + }, 1500); }); it("should persist retriable failed telemetry 504", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -192,14 +210,17 @@ describe("HttpSender", () => { assert.strictEqual(result.code, ExportResultCode.SUCCESS); const persistedEnvelopes = (await sender["persister"].shift()) as Envelope[]; - assert.strictEqual(persistedEnvelopes?.length, 1); - assert.deepStrictEqual(persistedEnvelopes[0], toObject(envelope)); + // Test enters race condition without this timeout. + setTimeout(() => { + assert.strictEqual(persistedEnvelopes?.length, 1); + assert.deepStrictEqual(persistedEnvelopes[0], toObject(envelope)); + }, 1500); }); it("should persist partial retriable failed telemetry", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -210,13 +231,16 @@ describe("HttpSender", () => { assert.strictEqual(result.code, ExportResultCode.SUCCESS); const persistedEnvelopes = (await sender["persister"].shift()) as Envelope[]; - assert.strictEqual(persistedEnvelopes?.length, 2); + // Test enters race condition without this timeout. + setTimeout(() => { + assert.strictEqual(persistedEnvelopes?.length, 2); + }, 1500); }); it("should not persist partial non retriable failed telemetry", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -227,13 +251,16 @@ describe("HttpSender", () => { assert.strictEqual(result.code, ExportResultCode.SUCCESS); const persistedEnvelopes = (await sender["persister"].shift()) as Envelope[]; - assert.strictEqual(persistedEnvelopes?.length, 1); + // Test enters race condition without this timeout. + setTimeout(() => { + assert.strictEqual(persistedEnvelopes?.length, 1); + }, 1500); }); it("should not persist non-retriable failed telemetry", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -241,16 +268,20 @@ describe("HttpSender", () => { scope.reply(400, JSON.stringify(response)); const result = await sender.exportEnvelopes([envelope]); - assert.strictEqual(result.code, ExportResultCode.FAILED); + setTimeout(() => { + assert.strictEqual(result.code, ExportResultCode.FAILED); + }, 1500); const persistedEnvelopes = await sender["persister"].shift(); - assert.strictEqual(persistedEnvelopes, null); + setTimeout(() => { + assert.strictEqual(persistedEnvelopes, null); + }, 1500); }); it("should not persist non-retriable failed telemetry", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -258,32 +289,40 @@ describe("HttpSender", () => { scope.reply(404, JSON.stringify(response)); const result = await sender.exportEnvelopes([envelope]); - assert.strictEqual(result.code, ExportResultCode.FAILED); + setTimeout(() => { + assert.strictEqual(result.code, ExportResultCode.FAILED); + }, 1500); const persistedEnvelopes = await sender["persister"].shift(); - assert.strictEqual(persistedEnvelopes, null); + setTimeout(() => { + assert.strictEqual(persistedEnvelopes, null); + }, 1500); }); it("should not persist when an error is caught", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); scope.reply(1, ""); // httpSender will throw const result = await sender.exportEnvelopes([envelope]); - assert.strictEqual(result.code, ExportResultCode.FAILED); + setTimeout(() => { + assert.strictEqual(result.code, ExportResultCode.FAILED); + }, 1500); const persistedEnvelopes = await sender["persister"].shift(); - assert.strictEqual(persistedEnvelopes, null); + setTimeout(() => { + assert.strictEqual(persistedEnvelopes, null); + }, 1500); }); it("should start retry timer when telemetry is successfully sent", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -291,8 +330,10 @@ describe("HttpSender", () => { scope.reply(200, JSON.stringify(response)); const result = await sender.exportEnvelopes([envelope]); - assert.strictEqual(result.code, ExportResultCode.SUCCESS); - assert.notStrictEqual(sender["retryTimer"], null); + setTimeout(() => { + assert.strictEqual(result.code, ExportResultCode.SUCCESS); + assert.notStrictEqual(sender["retryTimer"], null); + }, 1500); clearTimeout(sender["retryTimer"]!); sender["retryTimer"] = null; @@ -301,7 +342,7 @@ describe("HttpSender", () => { it("should not start a retry timer when one already exists", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -311,13 +352,13 @@ describe("HttpSender", () => { const result = await sender.exportEnvelopes([envelope]); assert.strictEqual(result.code, ExportResultCode.SUCCESS); - assert.strictEqual(sender["retryTimer"], "foo"); + assert.strictEqual(sender["retryTimer"], "foo" as unknown as NodeJS.Timeout); }); it("should handle permanent redirects in Azure Monitor", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -332,15 +373,17 @@ describe("HttpSender", () => { const result = await sender.exportEnvelopes([envelope]); const persistedEnvelopes = (await sender["persister"].shift()) as Envelope[]; - assert.strictEqual(persistedEnvelopes, null); - assert.strictEqual(result.code, ExportResultCode.SUCCESS); - assert.strictEqual(sender["appInsightsClient"]["host"], redirectHost); + setTimeout(() => { + assert.strictEqual(persistedEnvelopes, null); + assert.strictEqual(result.code, ExportResultCode.SUCCESS); + assert.strictEqual(sender["appInsightsClient"]["host"], redirectHost); + }, 1500); }); it("should handle temporary redirects in Azure Monitor", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -355,15 +398,17 @@ describe("HttpSender", () => { const result = await sender.exportEnvelopes([envelope]); const persistedEnvelopes = (await sender["persister"].shift()) as Envelope[]; - assert.strictEqual(persistedEnvelopes, null); - assert.strictEqual(result.code, ExportResultCode.SUCCESS); - assert.strictEqual(sender["appInsightsClient"]["host"], redirectHost); + setTimeout(() => { + assert.strictEqual(persistedEnvelopes, null); + assert.strictEqual(result.code, ExportResultCode.SUCCESS); + assert.strictEqual(sender["appInsightsClient"]["host"], redirectHost); + }, 1500); }); it("should use redirect URL for following requests", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -376,17 +421,21 @@ describe("HttpSender", () => { redirectScope.twice().reply(200, JSON.stringify(successfulBreezeResponse(1))); scope.reply(307, {}, { location: redirectLocation }); let result = await sender.exportEnvelopes([envelope]); - assert.strictEqual(result.code, ExportResultCode.SUCCESS); - assert.strictEqual(sender["appInsightsClient"]["host"], redirectHost); + setTimeout(() => { + assert.strictEqual(result.code, ExportResultCode.SUCCESS); + assert.strictEqual(sender["appInsightsClient"]["host"], redirectHost); + }, 1500); result = await sender.exportEnvelopes([envelope]); - assert.strictEqual(result.code, ExportResultCode.SUCCESS); - assert.strictEqual(sender["appInsightsClient"]["host"], redirectHost); + setTimeout(() => { + assert.strictEqual(result.code, ExportResultCode.SUCCESS); + assert.strictEqual(sender["appInsightsClient"]["host"], redirectHost); + }, 1500); }); it("should stop redirecting when circular redirect is triggered", async () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: {}, }); @@ -407,8 +456,10 @@ describe("HttpSender", () => { .persist(); const result = await sender.exportEnvelopes([envelope]); - assert.strictEqual(result.code, ExportResultCode.FAILED); - assert.strictEqual(result.error?.message, "Circular redirect"); + setTimeout(() => { + assert.strictEqual(result.code, ExportResultCode.FAILED); + assert.strictEqual(result.error?.message, "Circular redirect"); + }, 1500); }); }); @@ -416,7 +467,7 @@ describe("HttpSender", () => { it("should add bearerTokenAuthenticationPolicy", () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: { credential: new TestTokenCredential(), @@ -432,7 +483,7 @@ describe("HttpSender", () => { it("should allow configuration of credentialScopes", () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, aadAudience: "testAudience", exporterOptions: { @@ -447,7 +498,7 @@ describe("HttpSender", () => { it("proxy configuration", () => { const sender = new HttpSender({ endpointUrl: DEFAULT_BREEZE_ENDPOINT, - instrumentationKey: "someIkey", + instrumentationKey: "InstrumentationKey=00000000-0000-0000-0000-000000000000", trackStatsbeat: false, exporterOptions: { proxyOptions: { diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/logUtils.test.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/logUtils.spec.ts similarity index 82% rename from sdk/monitor/monitor-opentelemetry-exporter/test/internal/logUtils.test.ts rename to sdk/monitor/monitor-opentelemetry-exporter/test/internal/logUtils.spec.ts index cc0c6e565393..3594c02d4e06 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/logUtils.test.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/logUtils.spec.ts @@ -1,30 +1,37 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as assert from "assert"; + import { Resource } from "@opentelemetry/resources"; import { - SemanticAttributes, - SemanticResourceAttributes, + SEMRESATTRS_SERVICE_INSTANCE_ID, + SEMRESATTRS_SERVICE_NAME, + SEMRESATTRS_SERVICE_NAMESPACE, + SEMATTRS_EXCEPTION_TYPE, + SEMATTRS_MESSAGE_TYPE, + SEMATTRS_EXCEPTION_MESSAGE, + SEMATTRS_EXCEPTION_STACKTRACE, } from "@opentelemetry/semantic-conventions"; - -import { Tags, Properties, Measurements, MaxPropertyLengths } from "../../src/types"; -import { getInstance } from "../../src/platform"; -import { +import type { Tags, Properties, Measurements } from "../../src/types.js"; +import { MaxPropertyLengths } from "../../src/types.js"; +import { getInstance } from "../../src/platform/index.js"; +import type { AvailabilityData, - KnownContextTagKeys, MessageData, MonitorDomain, PageViewData, TelemetryEventData, TelemetryExceptionData, TelemetryExceptionDetails, -} from "../../src/generated"; -import { TelemetryItem as Envelope } from "../../src/generated"; -import { ReadableLogRecord } from "@opentelemetry/sdk-logs"; -import { logToEnvelope } from "../../src/utils/logUtils"; +} from "../../src/generated/index.js"; +import { KnownContextTagKeys } from "../../src/generated/index.js"; +import type { TelemetryItem as Envelope } from "../../src/generated/index.js"; +import type { ReadableLogRecord } from "@opentelemetry/sdk-logs"; +import { logToEnvelope } from "../../src/utils/logUtils.js"; import { SeverityNumber } from "@opentelemetry/api-logs"; -import { HrTime, TraceFlags } from "@opentelemetry/api"; -import { hrTimeToDate } from "../../src/utils/common"; +import type { HrTime } from "@opentelemetry/api"; +import { TraceFlags } from "@opentelemetry/api"; +import { hrTimeToDate } from "../../src/utils/common.js"; +import { describe, it, assert } from "vitest"; const context = getInstance(); @@ -38,18 +45,18 @@ function assertEnvelope( expectedBaseData?: Partial, expectedTime?: Date, ): void { - assert.ok(envelope); - assert.strictEqual(envelope.name, name); - assert.strictEqual(envelope.sampleRate, sampleRate); - assert.deepStrictEqual(envelope.data?.baseType, baseType); + assert.isDefined(envelope); + assert.strictEqual(envelope?.name, name); + assert.strictEqual(envelope?.sampleRate, sampleRate); + assert.deepStrictEqual(envelope?.data?.baseType, baseType); - assert.strictEqual(envelope.instrumentationKey, "ikey"); - assert.ok(envelope.time); - assert.ok(envelope.version); - assert.ok(envelope.data); + assert.strictEqual(envelope?.instrumentationKey, "ikey"); + assert.ok(envelope?.time); + assert.ok(envelope?.version); + assert.ok(envelope?.data); if (expectedTime) { - assert.deepStrictEqual(envelope.time, expectedTime); + assert.deepStrictEqual(envelope?.time, expectedTime); } const expectedServiceTags: Tags = { @@ -58,13 +65,13 @@ function assertEnvelope( [KnownContextTagKeys.AiOperationId]: "1f1008dc8e270e85c40a0d7c3939b278", [KnownContextTagKeys.AiOperationParentId]: "5e107261f64fa53e", }; - assert.deepStrictEqual(envelope.tags, { + assert.deepStrictEqual(envelope?.tags, { ...context.tags, ...expectedServiceTags, }); assert.deepStrictEqual((envelope?.data?.baseData as any).properties, expectedProperties); assert.deepStrictEqual((envelope?.data?.baseData as any).measurements, expectedMeasurements); - assert.deepStrictEqual(envelope.data?.baseData, expectedBaseData); + assert.deepStrictEqual(envelope?.data?.baseData, expectedBaseData); } const emptyMeasurements: Measurements = {}; @@ -72,9 +79,9 @@ const emptyMeasurements: Measurements = {}; describe("logUtils.ts", () => { const testLogRecord: any = { resource: new Resource({ - [SemanticResourceAttributes.SERVICE_INSTANCE_ID]: "testServiceInstanceID", - [SemanticResourceAttributes.SERVICE_NAME]: "testServiceName", - [SemanticResourceAttributes.SERVICE_NAMESPACE]: "testServiceNamespace", + [SEMRESATTRS_SERVICE_INSTANCE_ID]: "testServiceInstanceID", + [SEMRESATTRS_SERVICE_NAME]: "testServiceName", + [SEMRESATTRS_SERVICE_NAMESPACE]: "testServiceNamespace", }), instrumentationScope: { name: "scope_name_1", @@ -103,11 +110,11 @@ describe("logUtils.ts", () => { testLogRecord.severityLevel = "Information"; testLogRecord.attributes = { "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; const expectedProperties = { "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; const expectedBaseData: Partial = { message: `Test message`, @@ -137,9 +144,9 @@ describe("logUtils.ts", () => { const expectedTime = hrTimeToDate(testLogRecord.hrTime); testLogRecord.attributes = { "extra.attribute": "foo", - [SemanticAttributes.EXCEPTION_TYPE]: "test exception type", - [SemanticAttributes.EXCEPTION_MESSAGE]: "test exception message", - [SemanticAttributes.EXCEPTION_STACKTRACE]: "test exception stack", + [SEMATTRS_EXCEPTION_TYPE]: "test exception type", + [SEMATTRS_EXCEPTION_MESSAGE]: "test exception message", + [SEMATTRS_EXCEPTION_STACKTRACE]: "test exception stack", }; const expectedProperties = { "extra.attribute": "foo", @@ -184,14 +191,14 @@ describe("logUtils.ts", () => { testLogRecord.attributes = { "_MS.baseType": "MessageData", "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; testLogRecord.body = data; const expectedTime = hrTimeToDate(testLogRecord.hrTime); const expectedProperties = { "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; const expectedMeasurements: Measurements = { testMeasurement: 1, @@ -227,14 +234,14 @@ describe("logUtils.ts", () => { testLogRecord.attributes = { "_MS.baseType": "MessageData", "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; testLogRecord.body = data; const expectedTime = hrTimeToDate(testLogRecord.hrTime); const expectedProperties = { "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; const expectedMeasurements: Measurements = { testMeasurement: 1, @@ -276,13 +283,13 @@ describe("logUtils.ts", () => { testLogRecord.attributes = { "_MS.baseType": "ExceptionData", "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; testLogRecord.body = data; const expectedTime = hrTimeToDate(testLogRecord.hrTime); const expectedProperties = { "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; const expectedBaseData: Partial = { message: `testMessage`, @@ -325,13 +332,13 @@ describe("logUtils.ts", () => { testLogRecord.attributes = { "_MS.baseType": "AvailabilityData", "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; testLogRecord.body = data; const expectedTime = hrTimeToDate(testLogRecord.hrTime); const expectedProperties = { "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; const expectedBaseData: Partial = { id: "testId", @@ -370,13 +377,13 @@ describe("logUtils.ts", () => { testLogRecord.attributes = { "_MS.baseType": "PageViewData", "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; testLogRecord.body = data; const expectedTime = hrTimeToDate(testLogRecord.hrTime); const expectedProperties = { "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; const expectedBaseData: PageViewData = { id: "testId", @@ -410,13 +417,13 @@ describe("logUtils.ts", () => { testLogRecord.attributes = { "_MS.baseType": "EventData", "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; testLogRecord.body = data; const expectedTime = hrTimeToDate(testLogRecord.hrTime); const expectedProperties = { "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; const expectedBaseData: TelemetryEventData = { name: "testName", @@ -443,7 +450,7 @@ describe("logUtils.ts", () => { testLogRecord.attributes = { "_MS.baseType": "MessageData", "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; testLogRecord.body = { message: { nested: { nested2: { test: "test" } } }, @@ -453,7 +460,7 @@ describe("logUtils.ts", () => { const expectedTime = hrTimeToDate(testLogRecord.hrTime); const expectedProperties = { "extra.attribute": "foo", - [SemanticAttributes.MESSAGE_TYPE]: "test message type", + [SEMATTRS_MESSAGE_TYPE]: "test message type", }; const expectedBaseData: Partial = { message: '{"nested":{"nested2":{"test":"test"}}}', diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/metricUtil.test.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/metricUtil.spec.ts similarity index 94% rename from sdk/monitor/monitor-opentelemetry-exporter/test/internal/metricUtil.test.ts rename to sdk/monitor/monitor-opentelemetry-exporter/test/internal/metricUtil.spec.ts index 80a7377ef58b..d74cec20eb2a 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/metricUtil.test.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/metricUtil.spec.ts @@ -2,28 +2,31 @@ // Licensed under the MIT License. import { Resource } from "@opentelemetry/resources"; -import fs from "fs"; -import path from "path"; -import * as os from "os"; -import { +import fs from "node:fs"; +import path from "node:path"; +import * as os from "node:os"; +import type { ResourceMetrics, - MeterProvider, PeriodicExportingMetricReaderOptions, - PeriodicExportingMetricReader, } from "@opentelemetry/sdk-metrics"; -import { resourceMetricsToEnvelope } from "../../src/utils/metricUtils"; -import { SemanticResourceAttributes } from "@opentelemetry/semantic-conventions"; -import { AzureMonitorMetricExporter } from "../../src/export/metric"; -import { AzureMonitorExporterOptions } from "../../src/config"; +import { MeterProvider, PeriodicExportingMetricReader } from "@opentelemetry/sdk-metrics"; +import { resourceMetricsToEnvelope } from "../../src/utils/metricUtils.js"; import { + SemanticResourceAttributes, + SEMRESATTRS_SERVICE_INSTANCE_ID, +} from "@opentelemetry/semantic-conventions"; +import { AzureMonitorMetricExporter } from "../../src/export/metric.js"; +import type { AzureMonitorExporterOptions } from "../../src/config.js"; +import type { TelemetryItem as Envelope, - KnownContextTagKeys, RemoteDependencyData, RequestData, -} from "../../src/generated"; -import assert from "assert"; -import { BreezePerformanceCounterNames, OTelPerformanceCounterNames, Tags } from "../../src/types"; -import { Context, getInstance } from "../../src/platform"; +} from "../../src/generated/index.js"; +import { KnownContextTagKeys } from "../../src/generated/index.js"; +import type { Tags } from "../../src/types.js"; +import { BreezePerformanceCounterNames, OTelPerformanceCounterNames } from "../../src/types.js"; +import { Context, getInstance } from "../../src/platform/index.js"; +import { describe, it, assert } from "vitest"; const context = getInstance(); const packageJsonPath = path.resolve(__dirname, "../../", "./package.json"); @@ -38,7 +41,7 @@ class TestExporter extends AzureMonitorMetricExporter { async export(metrics: ResourceMetrics): Promise { testMetrics = metrics; testMetrics.resource = new Resource({ - [SemanticResourceAttributes.SERVICE_INSTANCE_ID]: "testServiceInstanceID", + [SEMRESATTRS_SERVICE_INSTANCE_ID]: "testServiceInstanceID", [SemanticResourceAttributes.SERVICE_NAME]: "testServiceName", [SemanticResourceAttributes.SERVICE_NAMESPACE]: "testServiceNamespace", }); diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/sampling.test.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/sampling.spec.ts similarity index 98% rename from sdk/monitor/monitor-opentelemetry-exporter/test/internal/sampling.test.ts rename to sdk/monitor/monitor-opentelemetry-exporter/test/internal/sampling.spec.ts index 65128f410073..39461e24dd6a 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/sampling.test.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/sampling.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as assert from "assert"; import { RandomIdGenerator, SamplingDecision } from "@opentelemetry/sdk-trace-base"; -import { ApplicationInsightsSampler } from "../../src/sampling"; +import { ApplicationInsightsSampler } from "../../src/sampling.js"; import { context, SpanKind } from "@opentelemetry/api"; +import { describe, it, assert } from "vitest"; describe("Library/ApplicationInsightsSampler", () => { const idGenerator = new RandomIdGenerator(); diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/spanUtils.test.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/spanUtils.spec.ts similarity index 98% rename from sdk/monitor/monitor-opentelemetry-exporter/test/internal/spanUtils.test.ts rename to sdk/monitor/monitor-opentelemetry-exporter/test/internal/spanUtils.spec.ts index 871e49ae92b3..98220153c24b 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/spanUtils.test.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/spanUtils.spec.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import fs from "fs"; -import path from "path"; -import { Span, BasicTracerProvider, TracerConfig } from "@opentelemetry/sdk-trace-base"; +import fs from "node:fs"; +import path from "node:path"; +import type { TracerConfig } from "@opentelemetry/sdk-trace-base"; +import { Span, BasicTracerProvider } from "@opentelemetry/sdk-trace-base"; import { SpanKind, SpanStatusCode, ROOT_CONTEXT } from "@opentelemetry/api"; -import * as assert from "assert"; import { Resource } from "@opentelemetry/resources"; import { DBSYSTEMVALUES_HIVE, @@ -32,19 +32,21 @@ import { SEMRESATTRS_SERVICE_NAMESPACE, } from "@opentelemetry/semantic-conventions"; -import { Tags, Properties, Measurements, MaxPropertyLengths } from "../../src/types"; -import { Context, getInstance } from "../../src/platform"; -import { readableSpanToEnvelope, spanEventsToEnvelopes } from "../../src/utils/spanUtils"; -import { +import type { Tags, Properties, Measurements } from "../../src/types.js"; +import { MaxPropertyLengths } from "../../src/types.js"; +import { Context, getInstance } from "../../src/platform/index.js"; +import { readableSpanToEnvelope, spanEventsToEnvelopes } from "../../src/utils/spanUtils.js"; +import type { RemoteDependencyData, RequestData, - KnownContextTagKeys, TelemetryExceptionData, MessageData, -} from "../../src/generated"; -import { TelemetryItem as Envelope } from "../../src/generated"; -import { DependencyTypes } from "../../src/utils/constants/applicationinsights"; -import { hrTimeToDate } from "../../src/utils/common"; +} from "../../src/generated/index.js"; +import { KnownContextTagKeys } from "../../src/generated/index.js"; +import type { TelemetryItem as Envelope } from "../../src/generated/index.js"; +import { DependencyTypes } from "../../src/utils/constants/applicationinsights.js"; +import { hrTimeToDate } from "../../src/utils/common.js"; +import { describe, it, assert } from "vitest"; const context = getInstance(); @@ -107,7 +109,7 @@ function assertEnvelope( if (envelope.data?.baseData) { delete envelope.data.baseData.duration; } - assert.deepStrictEqual(envelope.data?.baseData, expectedBaseData); + assert.deepStrictEqual(envelope.data?.baseData, expectedBaseData as MonitorDomain); } const emptyMeasurements: Measurements = {}; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/statsbeat.test.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/statsbeat.spec.ts similarity index 75% rename from sdk/monitor/monitor-opentelemetry-exporter/test/internal/statsbeat.test.ts rename to sdk/monitor/monitor-opentelemetry-exporter/test/internal/statsbeat.spec.ts index 1e9804dac2b9..d417fcc7fd64 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/internal/statsbeat.test.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/internal/statsbeat.spec.ts @@ -1,22 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as assert from "assert"; import { ExportResultCode } from "@opentelemetry/core"; -import { failedBreezeResponse, successfulBreezeResponse } from "../utils/breezeTestUtils"; +import { failedBreezeResponse, successfulBreezeResponse } from "../utils/breezeTestUtils.js"; import { DEFAULT_BREEZE_ENDPOINT, ENV_DISABLE_STATSBEAT, LEGACY_ENV_DISABLE_STATSBEAT, -} from "../../src/Declarations/Constants"; +} from "../../src/Declarations/Constants.js"; import nock from "nock"; -import { NetworkStatsbeatMetrics } from "../../src/export/statsbeat/networkStatsbeatMetrics"; -// @ts-expect-error Need to ignore this while we do not import types -import sinon from "sinon"; -import { StatsbeatCounter } from "../../src/export/statsbeat/types"; -import { getInstance } from "../../src/export/statsbeat/longIntervalStatsbeatMetrics"; -import { AzureMonitorTraceExporter } from "../../src/export/trace"; +import { NetworkStatsbeatMetrics } from "../../src/export/statsbeat/networkStatsbeatMetrics.js"; +import { StatsbeatCounter } from "../../src/export/statsbeat/types.js"; +import { getInstance } from "../../src/export/statsbeat/longIntervalStatsbeatMetrics.js"; +import { AzureMonitorTraceExporter } from "../../src/export/trace.js"; import { diag } from "@opentelemetry/api"; +import { describe, it, assert, expect, vi, beforeAll, afterAll } from "vitest"; describe("#AzureMonitorStatsbeatExporter", () => { process.env.LONG_INTERVAL_EXPORT_MILLIS = "100"; @@ -43,19 +41,17 @@ describe("#AzureMonitorStatsbeatExporter", () => { describe("Export/Statsbeat", () => { let scope: nock.Interceptor; - let sandbox: any; const envelope = { name: "Name", time: new Date(), }; - before(() => { + beforeAll(() => { scope = nock(DEFAULT_BREEZE_ENDPOINT).post("/v2.1/track"); - sandbox = sinon.createSandbox(); }); - after(() => { - sandbox.restore(); + afterAll(() => { + vi.restoreAllMocks(); nock.cleanAll(); }); @@ -73,7 +69,10 @@ describe("#AzureMonitorStatsbeatExporter", () => { const result = await exporter["sender"]["exportEnvelopes"]([envelope]); assert.strictEqual(result.code, ExportResultCode.SUCCESS); assert.ok(exporter["sender"]["networkStatsbeatMetrics"]); - assert.strictEqual(exporter["sender"]["networkStatsbeatMetrics"]["isInitialized"], true); + assert.strictEqual( + exporter?.["sender"]?.["networkStatsbeatMetrics"]?.["isInitialized"], + true, + ); }); it("should use non EU connection string", () => { @@ -103,7 +102,7 @@ describe("#AzureMonitorStatsbeatExporter", () => { assert.strictEqual(statsbeat["getShortHost"]("https://www.test.com"), "test"); }); - it("should add correct network properites to the custom metric", (done) => { + it("should add correct network properties to the custom metric", () => { const statsbeat = new NetworkStatsbeatMetrics(options); // eslint-disable-next-line no-unused-expressions statsbeat["statsCollectionShortInterval"]; @@ -126,8 +125,6 @@ describe("#AzureMonitorStatsbeatExporter", () => { assert.ok(statsbeat["os"]); assert.ok(statsbeat["runtimeVersion"]); assert.ok(statsbeat["version"]); - - done(); }); it("should add correct long interval properties to the custom metric", () => { @@ -154,13 +151,13 @@ describe("#AzureMonitorStatsbeatExporter", () => { }); it("should not log error upon failed send if statsbeat is being sent", async () => { - const mockExport = sandbox.stub(diag, "error"); + const mockExport = vi.spyOn(diag, "error"); const exporter = new AzureMonitorTraceExporter(exportOptions); const response = failedBreezeResponse(1, 500); scope.reply(500, JSON.stringify(response)); exporter["sender"]["isStatsbeatSender"] = true; await exporter["sender"]["exportEnvelopes"]([envelope]); - assert.ok(!mockExport.called); + expect(mockExport).not.toHaveBeenCalled(); }); }); @@ -175,137 +172,83 @@ describe("#AzureMonitorStatsbeatExporter", () => { }); describe("Resource provider function", () => { - let sandboxInner: any; - - before(() => { - sandboxInner = sinon.createSandbox(); - }); - - afterEach(() => { - sandboxInner.restore(); - }); - const statsbeat = new NetworkStatsbeatMetrics(options); - it("it should determine if the rp is unknown", (done) => { - statsbeat["getResourceProvider"]() - // eslint-disable-next-line promise/always-return - .then(() => { - assert.strictEqual(statsbeat["resourceProvider"], "unknown"); - done(); - }) - .catch((error: Error) => { - done(error); - }); + it("it should determine if the rp is unknown", async () => { + await statsbeat["getResourceProvider"](); + assert.strictEqual(statsbeat["resourceProvider"], "unknown"); }); - it("it should determine if the rp is an app service", (done) => { + it("it should determine if the rp is an app service", async () => { const newEnv = <{ [id: string]: string }>{}; newEnv["WEBSITE_SITE_NAME"] = "Test Website"; newEnv["WEBSITE_HOME_STAMPNAME"] = "testhome"; const originalEnv = process.env; process.env = newEnv; - statsbeat["getResourceProvider"]() - // eslint-disable-next-line promise/always-return - .then(() => { - process.env = originalEnv; - assert.strictEqual(statsbeat["resourceProvider"], "appsvc"); - assert.strictEqual(statsbeat["resourceIdentifier"], "Test Website/testhome"); - done(); - }) - .catch((error: Error) => { - done(error); - }); + await statsbeat["getResourceProvider"](); + process.env = originalEnv; + assert.strictEqual(statsbeat["resourceProvider"], "appsvc"); + assert.strictEqual(statsbeat["resourceIdentifier"], "Test Website/testhome"); }); - it("should determine if the rp is an Azure Function", (done) => { + it("should determine if the rp is an Azure Function", async () => { const newEnv = <{ [id: string]: string }>{}; newEnv["FUNCTIONS_WORKER_RUNTIME"] = "test"; newEnv["WEBSITE_HOSTNAME"] = "testhost"; const originalEnv = process.env; process.env = newEnv; - statsbeat["getResourceProvider"]() - // eslint-disable-next-line promise/always-return - .then(() => { - process.env = originalEnv; - assert.strictEqual(statsbeat["resourceProvider"], "functions"); - assert.strictEqual(statsbeat["resourceIdentifier"], "testhost"); - done(); - }) - .catch((error: Error) => { - done(error); - }); + await statsbeat["getResourceProvider"](); + process.env = originalEnv; + assert.strictEqual(statsbeat["resourceProvider"], "functions"); + assert.strictEqual(statsbeat["resourceIdentifier"], "testhost"); }); - it("should determine if the rp is an Azure VM", (done) => { - const getAzureComputeStub = sandboxInner.stub(statsbeat, "getAzureComputeMetadata"); - getAzureComputeStub.returns(Promise.resolve(true)); + it("should determine if the rp is an Azure VM", async () => { + const getAzureComputeStub = vi.spyOn(statsbeat, "getAzureComputeMetadata"); + getAzureComputeStub.mockResolvedValue(true); const newEnv = <{ [id: string]: string }>{}; const originalEnv = process.env; process.env = newEnv; - statsbeat["getResourceProvider"]() - // eslint-disable-next-line promise/always-return - .then(() => { - process.env = originalEnv; - assert.strictEqual(statsbeat["resourceProvider"], "vm"); - assert.strictEqual(statsbeat["resourceIdentifier"], "undefined/undefined"); - done(); - }) - .catch((error: Error) => { - done(error); - }); + await statsbeat["getResourceProvider"](); + process.env = originalEnv; + assert.strictEqual(statsbeat["resourceProvider"], "vm"); + assert.strictEqual(statsbeat["resourceIdentifier"], "undefined/undefined"); }); - it("should determine if the rp is AKS", (done) => { + it("should determine if the rp is AKS", async () => { const newEnv = <{ [id: string]: string }>{}; newEnv["AKS_ARM_NAMESPACE_ID"] = "testaks"; const originalEnv = process.env; process.env = newEnv; - statsbeat["getResourceProvider"]() - // eslint-disable-next-line promise/always-return - .then(() => { - process.env = originalEnv; - assert.strictEqual(statsbeat["resourceProvider"], "aks"); - assert.strictEqual(statsbeat["resourceIdentifier"], "testaks"); - done(); - }) - .catch((error: Error) => { - done(error); - }); + await statsbeat["getResourceProvider"](); + process.env = originalEnv; + assert.strictEqual(statsbeat["resourceProvider"], "aks"); + assert.strictEqual(statsbeat["resourceIdentifier"], "testaks"); }); - it("should override OS and VM info", (done) => { - const getAzureComputeStub = sandboxInner.stub(statsbeat, "getAzureComputeMetadata"); - getAzureComputeStub.returns(Promise.resolve(true)); + it("should override OS and VM info", async () => { + const getAzureComputeStub = vi.spyOn(statsbeat, "getAzureComputeMetadata"); + getAzureComputeStub.mockResolvedValue(true); statsbeat["vmInfo"]["osType"] = "test"; const newEnv = <{ [id: string]: string }>{}; const originalEnv = process.env; process.env = newEnv; - statsbeat["getResourceProvider"]() - // eslint-disable-next-line promise/always-return - .then(() => { - process.env = originalEnv; - assert.strictEqual(statsbeat["resourceProvider"], "vm"); - assert.strictEqual(statsbeat["os"], "test"); - done(); - }) - .catch((error: Error) => { - done(error); - }); + await statsbeat["getResourceProvider"](); + process.env = originalEnv; + assert.strictEqual(statsbeat["resourceProvider"], "vm"); + assert.strictEqual(statsbeat["os"], "test"); }); }); describe("Track data from statsbeats", () => { - let sandboxInner: sinon.SinonSandbox; let statsbeat: NetworkStatsbeatMetrics; - before(() => { - sandboxInner = sinon.createSandbox(); + beforeAll(() => { process.env.WEBSITE_SITE_NAME = "test"; statsbeat = new NetworkStatsbeatMetrics({ ...options, @@ -313,17 +256,13 @@ describe("#AzureMonitorStatsbeatExporter", () => { }); }); - afterEach(() => { - sandboxInner.restore(); - }); - - after(() => { - statsbeat.shutdown(); + afterAll(async () => { + await statsbeat.shutdown(); process.env.WEBSITE_SITE_NAME = undefined; }); it("should track duration", async () => { - const mockExport = sandboxInner.stub(statsbeat["networkAzureExporter"], "export"); + const mockExport = vi.spyOn(statsbeat["networkAzureExporter"], "export"); statsbeat.countSuccess(100); statsbeat.countRetry(206); statsbeat.countFailure(200, 500); @@ -331,8 +270,8 @@ describe("#AzureMonitorStatsbeatExporter", () => { statsbeat.countException({ name: "Statsbeat", message: "Statsbeat Exception" }); await new Promise((resolve) => setTimeout(resolve, 120)); - assert.ok(mockExport.called); - const resourceMetrics = mockExport.args[0][0]; + expect(mockExport).toHaveBeenCalled(); + const resourceMetrics = mockExport.mock.calls[0][0]; const scopeMetrics = resourceMetrics.scopeMetrics; assert.strictEqual(scopeMetrics.length, 1, "Scope Metrics count"); const metrics = scopeMetrics[0].metrics; @@ -349,7 +288,7 @@ describe("#AzureMonitorStatsbeatExporter", () => { }); it("should track statsbeat counts", async () => { - const mockExport = sandboxInner.stub(statsbeat["networkAzureExporter"], "export"); + const mockExport = vi.spyOn(statsbeat["networkAzureExporter"], "export"); statsbeat.countSuccess(100); statsbeat.countSuccess(100); statsbeat.countSuccess(100); @@ -370,8 +309,8 @@ describe("#AzureMonitorStatsbeatExporter", () => { statsbeat.countWriteFailure(); await new Promise((resolve) => setTimeout(resolve, 500)); - assert.ok(mockExport.called); - const resourceMetrics = mockExport.args[0][0]; + expect(mockExport).toHaveBeenCalled(); + const resourceMetrics = mockExport.mock.calls[0][0]; const scopeMetrics = resourceMetrics.scopeMetrics; const metrics = scopeMetrics[0].metrics; @@ -424,14 +363,11 @@ describe("#AzureMonitorStatsbeatExporter", () => { it("should track long interval statsbeats", async () => { const longIntervalStatsbeat = getInstance(options); - const mockExport = sandboxInner.stub( - longIntervalStatsbeat["longIntervalAzureExporter"], - "export", - ); + const mockExport = vi.spyOn(longIntervalStatsbeat["longIntervalAzureExporter"], "export"); await new Promise((resolve) => setTimeout(resolve, 120)); - assert.ok(mockExport.called); - const resourceMetrics = mockExport.args[0][0]; + expect(mockExport).toHaveBeenCalled(); + const resourceMetrics = mockExport.mock.calls[0][0]; const scopeMetrics = resourceMetrics.scopeMetrics; assert.strictEqual(scopeMetrics.length, 1, "Scope Metrics count"); const metrics = scopeMetrics[0].metrics; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/utils/assert.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/utils/assert.ts index 3e78bcde8420..76a8b4313b29 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/utils/assert.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/utils/assert.ts @@ -1,28 +1,29 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as assert from "assert"; -import { Expectation } from "./types"; -import { +import { assert } from "vitest"; +import type { Expectation } from "./types.js"; +import type { MetricsData, MonitorBase, RequestData, TelemetryItem as Envelope, - KnownContextTagKeys, MonitorDomain, -} from "../../src/generated"; -import { TelemetryItem as EnvelopeMapper } from "../../src/generated/models/mappers"; +} from "../../src/generated/index.js"; +import { KnownContextTagKeys } from "../../src/generated/index.js"; +import { TelemetryItem as EnvelopeMapper } from "../../src/generated/models/mappers.js"; export const assertData = (actual: MonitorBase, expected: MonitorBase): void => { assert.strictEqual(actual.baseType, expected.baseType); - assert.ok(actual.baseData); + assert.isDefined(actual.baseData); for (const [key, value] of Object.entries(expected.baseData!)) { const serializedKey = EnvelopeMapper.type.modelProperties![key]?.serializedName ?? key; + assert.isDefined(actual.baseData); assert.deepStrictEqual( - actual.baseData[serializedKey], + actual.baseData![serializedKey], value, - `baseData.${serializedKey} should be equal\nActual: ${actual.baseData[serializedKey]}\nExpected: ${value}`, + `baseData.${serializedKey} should be equal\nActual: ${actual.baseData![serializedKey]}\nExpected: ${value}`, ); } }; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/utils/basic.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/utils/basic.ts index ec2cebf933d7..515ff3a93053 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/utils/basic.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/utils/basic.ts @@ -3,23 +3,20 @@ import * as opentelemetry from "@opentelemetry/api"; import { BasicTracerProvider } from "@opentelemetry/sdk-trace-base"; -import { - MeterProvider, - PeriodicExportingMetricReader, - PeriodicExportingMetricReaderOptions, -} from "@opentelemetry/sdk-metrics"; +import type { PeriodicExportingMetricReaderOptions } from "@opentelemetry/sdk-metrics"; +import { MeterProvider, PeriodicExportingMetricReader } from "@opentelemetry/sdk-metrics"; -import { AzureMonitorTraceExporter, AzureMonitorMetricExporter } from "../../src"; -import { Expectation, Scenario } from "./types"; +import { AzureMonitorTraceExporter, AzureMonitorMetricExporter } from "../../src/index.js"; +import type { Expectation, Scenario } from "./types.js"; import { SpanStatusCode } from "@opentelemetry/api"; -import { TelemetryItem as Envelope } from "../../src/generated"; -import { FlushSpanProcessor } from "./flushSpanProcessor"; +import type { TelemetryItem as Envelope } from "../../src/generated/index.js"; +import { FlushSpanProcessor } from "./flushSpanProcessor.js"; import { Resource } from "@opentelemetry/resources"; import { SemanticResourceAttributes, SemanticAttributes, } from "@opentelemetry/semantic-conventions"; -import { AzureMonitorLogExporter } from "../../src/export/log"; +import { AzureMonitorLogExporter } from "../../src/export/log.js"; import { LoggerProvider, SimpleLogRecordProcessor } from "@opentelemetry/sdk-logs"; import { SeverityNumber } from "@opentelemetry/api-logs"; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/utils/breezeTestUtils.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/utils/breezeTestUtils.ts index 3fe8c8c81263..246bf9060103 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/utils/breezeTestUtils.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/utils/breezeTestUtils.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { BreezeResponse } from "../../src/utils/breezeUtils"; +import type { BreezeResponse } from "../../src/utils/breezeUtils.js"; export function successfulBreezeResponse(count: number): BreezeResponse { return { diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/utils/flushSpanProcessor.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/utils/flushSpanProcessor.ts index 2f90ee3da419..7b7aa1bfccb9 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/utils/flushSpanProcessor.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/utils/flushSpanProcessor.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ReadableSpan, SpanExporter, SpanProcessor } from "@opentelemetry/sdk-trace-base"; +import type { ReadableSpan, SpanExporter, SpanProcessor } from "@opentelemetry/sdk-trace-base"; /** * Span Processor that only exports spans on flush diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/utils/types.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/utils/types.ts index 6609f7a6b741..71e3b90211b1 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/utils/types.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/utils/types.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TelemetryItem as Envelope } from "../../src/generated"; +import type { TelemetryItem as Envelope } from "../../src/generated/index.js"; export interface Expectation extends Partial { children: Expectation[]; diff --git a/sdk/monitor/monitor-opentelemetry-exporter/tsconfig.json b/sdk/monitor/monitor-opentelemetry-exporter/tsconfig.json index f9181154cfff..45489856fd33 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/tsconfig.json +++ b/sdk/monitor/monitor-opentelemetry-exporter/tsconfig.json @@ -1,11 +1,12 @@ { "extends": "../../../tsconfig", "compilerOptions": { - "outDir": "./dist-esm", - "declarationDir": "./types", "paths": { "@azure/monitor-opentelemetry-exporter": ["./src/index"] - } + }, + "module": "NodeNext", + "moduleResolution": "NodeNext", + "rootDir": "." }, - "include": ["src/**/*.ts", "test/**/*.ts", "samples-dev/**/*.ts"] + "include": ["src/**/*.ts", "src/**/*.mts", "src/**/*.cts", "samples-dev/**/*.ts", "test/**/*.ts"] } diff --git a/sdk/monitor/monitor-opentelemetry-exporter/vitest.config.ts b/sdk/monitor/monitor-opentelemetry-exporter/vitest.config.ts new file mode 100644 index 000000000000..39267dd2f56f --- /dev/null +++ b/sdk/monitor/monitor-opentelemetry-exporter/vitest.config.ts @@ -0,0 +1,15 @@ + +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { defineConfig, mergeConfig } from "vitest/config"; +import viteConfig from "../../../vitest.shared.config.ts"; + +export default mergeConfig( + viteConfig, + defineConfig({ + test: { + include: ["test/**/*.spec.ts"], + }, + }), +); diff --git a/sdk/monitor/monitor-opentelemetry/review/monitor-opentelemetry.api.md b/sdk/monitor/monitor-opentelemetry/review/monitor-opentelemetry.api.md index ff22b920b70a..4d9fa3152e06 100644 --- a/sdk/monitor/monitor-opentelemetry/review/monitor-opentelemetry.api.md +++ b/sdk/monitor/monitor-opentelemetry/review/monitor-opentelemetry.api.md @@ -4,11 +4,11 @@ ```ts -import { AzureMonitorExporterOptions } from '@azure/monitor-opentelemetry-exporter'; -import { InstrumentationConfig } from '@opentelemetry/instrumentation'; -import { LogRecordProcessor } from '@opentelemetry/sdk-logs'; -import { Resource } from '@opentelemetry/resources'; -import { SpanProcessor } from '@opentelemetry/sdk-trace-base'; +import type { AzureMonitorExporterOptions } from '@azure/monitor-opentelemetry-exporter'; +import type { InstrumentationConfig } from '@opentelemetry/instrumentation'; +import type { LogRecordProcessor } from '@opentelemetry/sdk-logs'; +import type { Resource } from '@opentelemetry/resources'; +import type { SpanProcessor } from '@opentelemetry/sdk-trace-base'; // @public export interface AzureMonitorOpenTelemetryOptions { diff --git a/sdk/monitor/monitor-opentelemetry/src/browserSdkLoader/browserSdkLoader.ts b/sdk/monitor/monitor-opentelemetry/src/browserSdkLoader/browserSdkLoader.ts index 2c33dbdec9b8..4aa2d382d18a 100644 --- a/sdk/monitor/monitor-opentelemetry/src/browserSdkLoader/browserSdkLoader.ts +++ b/sdk/monitor/monitor-opentelemetry/src/browserSdkLoader/browserSdkLoader.ts @@ -9,9 +9,9 @@ import { webSnippet as sdkLoader } from "@microsoft/applicationinsights-web-snip import * as browserSdkLoaderHelper from "./browserSdkLoaderHelper"; import * as prefixHelper from "../utils/common"; import * as zlib from "zlib"; -import { InternalConfig } from "../shared"; +import type { InternalConfig } from "../shared"; import { ConnectionStringParser } from "../utils/connectionStringParser"; -import { IncomingMessage, ServerResponse } from "http"; +import type { IncomingMessage, ServerResponse } from "http"; import { Logger } from "../shared/logging/logger"; import { BROWSER_SDK_LOADER_DEFAULT_SOURCE } from "../types"; import { diag } from "@opentelemetry/api"; diff --git a/sdk/monitor/monitor-opentelemetry/src/browserSdkLoader/browserSdkLoaderHelper.ts b/sdk/monitor/monitor-opentelemetry/src/browserSdkLoader/browserSdkLoaderHelper.ts index a9d77d023fce..cf65556ba73a 100644 --- a/sdk/monitor/monitor-opentelemetry/src/browserSdkLoader/browserSdkLoaderHelper.ts +++ b/sdk/monitor/monitor-opentelemetry/src/browserSdkLoader/browserSdkLoaderHelper.ts @@ -5,7 +5,7 @@ import * as zlib from "zlib"; import { promisify } from "util"; -import * as http from "http"; +import type * as http from "http"; // currently support the following encoding types export enum contentEncodingMethod { diff --git a/sdk/monitor/monitor-opentelemetry/src/index.ts b/sdk/monitor/monitor-opentelemetry/src/index.ts index cce70d107628..2deaa9273360 100644 --- a/sdk/monitor/monitor-opentelemetry/src/index.ts +++ b/sdk/monitor/monitor-opentelemetry/src/index.ts @@ -3,23 +3,23 @@ import { metrics, trace } from "@opentelemetry/api"; import { logs } from "@opentelemetry/api-logs"; -import { NodeSDK, NodeSDKConfiguration } from "@opentelemetry/sdk-node"; +import type { NodeSDKConfiguration } from "@opentelemetry/sdk-node"; +import { NodeSDK } from "@opentelemetry/sdk-node"; import { InternalConfig } from "./shared/config"; import { MetricHandler } from "./metrics"; import { TraceHandler } from "./traces/handler"; import { LogHandler } from "./logs"; +import type { StatsbeatFeatures, StatsbeatInstrumentations } from "./types"; import { AZURE_MONITOR_OPENTELEMETRY_VERSION, AzureMonitorOpenTelemetryOptions, InstrumentationOptions, BrowserSdkLoaderOptions, - StatsbeatFeatures, - StatsbeatInstrumentations, } from "./types"; import { BrowserSdkLoader } from "./browserSdkLoader/browserSdkLoader"; import { setSdkPrefix } from "./metrics/quickpulse/utils"; -import { SpanProcessor } from "@opentelemetry/sdk-trace-base"; -import { LogRecordProcessor } from "@opentelemetry/sdk-logs"; +import type { SpanProcessor } from "@opentelemetry/sdk-trace-base"; +import type { LogRecordProcessor } from "@opentelemetry/sdk-logs"; import { getInstance } from "./utils/statsbeat"; import { patchOpenTelemetryInstrumentationEnable } from "./utils/opentelemetryInstrumentationPatcher"; import { parseResourceDetectorsFromEnvVar } from "./utils/common"; diff --git a/sdk/monitor/monitor-opentelemetry/src/logs/batchLogRecordProcessor.ts b/sdk/monitor/monitor-opentelemetry/src/logs/batchLogRecordProcessor.ts index 148b1e8f10fa..2009ff515392 100644 --- a/sdk/monitor/monitor-opentelemetry/src/logs/batchLogRecordProcessor.ts +++ b/sdk/monitor/monitor-opentelemetry/src/logs/batchLogRecordProcessor.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { TraceFlags } from "@opentelemetry/api"; -import { LogRecord, BatchLogRecordProcessor, LogRecordExporter } from "@opentelemetry/sdk-logs"; +import type { LogRecord, LogRecordExporter } from "@opentelemetry/sdk-logs"; +import { BatchLogRecordProcessor } from "@opentelemetry/sdk-logs"; /** * Azure Monitor BatchLogRecord Processor. diff --git a/sdk/monitor/monitor-opentelemetry/src/logs/handler.ts b/sdk/monitor/monitor-opentelemetry/src/logs/handler.ts index ba2857b9a36e..8c86624d218f 100644 --- a/sdk/monitor/monitor-opentelemetry/src/logs/handler.ts +++ b/sdk/monitor/monitor-opentelemetry/src/logs/handler.ts @@ -2,12 +2,12 @@ // Licensed under the MIT License. import { AzureMonitorLogExporter } from "@azure/monitor-opentelemetry-exporter"; -import { Instrumentation } from "@opentelemetry/instrumentation"; +import type { Instrumentation } from "@opentelemetry/instrumentation"; import { BunyanInstrumentation } from "@opentelemetry/instrumentation-bunyan"; import { WinstonInstrumentation } from "@opentelemetry/instrumentation-winston"; -import { BatchLogRecordProcessor } from "@opentelemetry/sdk-logs"; -import { InternalConfig } from "../shared/config"; -import { MetricHandler } from "../metrics/handler"; +import type { BatchLogRecordProcessor } from "@opentelemetry/sdk-logs"; +import type { InternalConfig } from "../shared/config"; +import type { MetricHandler } from "../metrics/handler"; import { AzureLogRecordProcessor } from "./logRecordProcessor"; import { AzureBatchLogRecordProcessor } from "./batchLogRecordProcessor"; import { logLevelToSeverityNumber } from "../utils/logUtils"; diff --git a/sdk/monitor/monitor-opentelemetry/src/logs/logRecordProcessor.ts b/sdk/monitor/monitor-opentelemetry/src/logs/logRecordProcessor.ts index 1c637fd38ce9..c8f1999089a7 100644 --- a/sdk/monitor/monitor-opentelemetry/src/logs/logRecordProcessor.ts +++ b/sdk/monitor/monitor-opentelemetry/src/logs/logRecordProcessor.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MetricHandler } from "../metrics/handler"; -import { LogRecord, LogRecordProcessor } from "@opentelemetry/sdk-logs"; +import type { MetricHandler } from "../metrics/handler"; +import type { LogRecord, LogRecordProcessor } from "@opentelemetry/sdk-logs"; /** * Azure Monitor LogRecord Processor. diff --git a/sdk/monitor/monitor-opentelemetry/src/metrics/handler.ts b/sdk/monitor/monitor-opentelemetry/src/metrics/handler.ts index 334a12602d79..8c840bd4fc74 100644 --- a/sdk/monitor/monitor-opentelemetry/src/metrics/handler.ts +++ b/sdk/monitor/monitor-opentelemetry/src/metrics/handler.ts @@ -2,15 +2,12 @@ // Licensed under the MIT License. import { AzureMonitorMetricExporter } from "@azure/monitor-opentelemetry-exporter"; -import { - PeriodicExportingMetricReader, - PeriodicExportingMetricReaderOptions, - View, -} from "@opentelemetry/sdk-metrics"; -import { InternalConfig } from "../shared/config"; +import type { PeriodicExportingMetricReaderOptions } from "@opentelemetry/sdk-metrics"; +import { PeriodicExportingMetricReader, View } from "@opentelemetry/sdk-metrics"; +import type { InternalConfig } from "../shared/config"; import { StandardMetrics } from "./standardMetrics"; -import { ReadableSpan, Span } from "@opentelemetry/sdk-trace-base"; -import { LogRecord } from "@opentelemetry/sdk-logs"; +import type { ReadableSpan, Span } from "@opentelemetry/sdk-trace-base"; +import type { LogRecord } from "@opentelemetry/sdk-logs"; import { APPLICATION_INSIGHTS_NO_STANDARD_METRICS } from "./types"; import { LiveMetrics } from "./quickpulse/liveMetrics"; diff --git a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/export/exporter.ts b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/export/exporter.ts index d3cfdf7460ab..62661d68db53 100644 --- a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/export/exporter.ts +++ b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/export/exporter.ts @@ -1,16 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { context, diag } from "@opentelemetry/api"; -import { - AggregationTemporality, - InstrumentType, - PushMetricExporter, - ResourceMetrics, -} from "@opentelemetry/sdk-metrics"; -import { ExportResult, ExportResultCode, suppressTracing } from "@opentelemetry/core"; -import { QuickpulseExporterOptions } from "../types"; +import type { PushMetricExporter, ResourceMetrics } from "@opentelemetry/sdk-metrics"; +import { AggregationTemporality, InstrumentType } from "@opentelemetry/sdk-metrics"; +import type { ExportResult } from "@opentelemetry/core"; +import { ExportResultCode, suppressTracing } from "@opentelemetry/core"; +import type { QuickpulseExporterOptions } from "../types"; import { QuickpulseSender } from "./sender"; -import { +import type { DocumentIngress, MonitoringDataPoint, PublishOptionalParams, diff --git a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/export/sender.ts b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/export/sender.ts index 2b3440c500f1..7ab7bf8aefdb 100644 --- a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/export/sender.ts +++ b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/export/sender.ts @@ -1,17 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import url from "url"; -import { RestError, redirectPolicyName } from "@azure/core-rest-pipeline"; -import { TokenCredential } from "@azure/core-auth"; +import type { RestError } from "@azure/core-rest-pipeline"; +import { redirectPolicyName } from "@azure/core-rest-pipeline"; +import type { TokenCredential } from "@azure/core-auth"; import { diag } from "@opentelemetry/api"; -import { +import type { IsSubscribedOptionalParams, IsSubscribedResponse, PublishOptionalParams, PublishResponse, - QuickpulseClient, QuickpulseClientOptionalParams, } from "../../../generated"; +import { QuickpulseClient } from "../../../generated"; const applicationInsightsResource = "https://monitor.azure.com//.default"; diff --git a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/collectionConfigurationErrorTracker.ts b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/collectionConfigurationErrorTracker.ts index c4012ffbd415..5842caed7e14 100644 --- a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/collectionConfigurationErrorTracker.ts +++ b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/collectionConfigurationErrorTracker.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CollectionConfigurationError } from "../../../generated"; +import type { CollectionConfigurationError } from "../../../generated"; export class CollectionConfigurationErrorTracker { /** diff --git a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/filter.ts b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/filter.ts index e55150f4cff8..0b6f8f0f8fb8 100644 --- a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/filter.ts +++ b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/filter.ts @@ -1,21 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - DerivedMetricInfo, - FilterInfo, - KnownPredicateType, - FilterConjunctionGroupInfo, -} from "../../../generated"; -import { +import type { DerivedMetricInfo, FilterInfo, FilterConjunctionGroupInfo } from "../../../generated"; +import { KnownPredicateType } from "../../../generated"; +import type { RequestData, TelemetryData, DependencyData, ExceptionData, TraceData, - KnownDependencyColumns, - KnownRequestColumns, } from "../types"; +import { KnownDependencyColumns, KnownRequestColumns } from "../types"; import { isRequestData, isDependencyData, diff --git a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/projection.ts b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/projection.ts index f15d014d748c..fc9473a59809 100644 --- a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/projection.ts +++ b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/projection.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DerivedMetricInfo, KnownAggregationType } from "../../../generated"; -import { TelemetryData } from "../types"; +import type { DerivedMetricInfo } from "../../../generated"; +import { KnownAggregationType } from "../../../generated"; +import type { TelemetryData } from "../types"; import { isRequestData, isDependencyData } from "../utils"; import { MetricFailureToCreateError } from "./quickpulseErrors"; diff --git a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/validator.ts b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/validator.ts index 6884bc5ac4ee..72831e95382d 100644 --- a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/validator.ts +++ b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/filtering/validator.ts @@ -3,14 +3,13 @@ import { TelemetryTypeError, UnexpectedFilterCreateError } from "./quickpulseErrors"; import { KnownRequestColumns, KnownDependencyColumns } from "../types"; -import { +import type { DerivedMetricInfo, - KnownTelemetryType, FilterInfo, - KnownPredicateType, DocumentFilterConjunctionGroupInfo, FilterConjunctionGroupInfo, } from "../../../generated"; +import { KnownTelemetryType, KnownPredicateType } from "../../../generated"; import { getMsFromFilterTimestampString } from "../utils"; const knownStringColumns = new Set([ diff --git a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/liveMetrics.ts b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/liveMetrics.ts index 6e6cc81f2799..e139c6425e66 100644 --- a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/liveMetrics.ts +++ b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/liveMetrics.ts @@ -1,25 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import * as os from "os"; -import { - MeterProvider, +import type { MeterProviderOptions, - PeriodicExportingMetricReader, PeriodicExportingMetricReaderOptions, } from "@opentelemetry/sdk-metrics"; -import { InternalConfig } from "../../shared/config"; -import { - Meter, - ObservableGauge, - ObservableResult, - SpanKind, - SpanStatusCode, - ValueType, - context, -} from "@opentelemetry/api"; -import { RandomIdGenerator, ReadableSpan, TimedEvent } from "@opentelemetry/sdk-trace-base"; -import { LogRecord } from "@opentelemetry/sdk-logs"; -import { +import { MeterProvider, PeriodicExportingMetricReader } from "@opentelemetry/sdk-metrics"; +import type { InternalConfig } from "../../shared/config"; +import type { Meter, ObservableGauge, ObservableResult } from "@opentelemetry/api"; +import { SpanKind, SpanStatusCode, ValueType, context } from "@opentelemetry/api"; +import type { ReadableSpan, TimedEvent } from "@opentelemetry/sdk-trace-base"; +import { RandomIdGenerator } from "@opentelemetry/sdk-trace-base"; +import type { LogRecord } from "@opentelemetry/sdk-logs"; +import type { DocumentIngress, Exception, MonitoringDataPoint, @@ -30,12 +23,11 @@ import { /* eslint-disable-next-line @typescript-eslint/no-redeclare */ Request, Trace, - KnownCollectionConfigurationErrorType, KeyValuePairString, DerivedMetricInfo, - KnownTelemetryType, FilterConjunctionGroupInfo, } from "../../generated"; +import { KnownCollectionConfigurationErrorType, KnownTelemetryType } from "../../generated"; import { getCloudRole, getCloudRoleInstance, @@ -54,8 +46,7 @@ import { QuickpulseMetricExporter } from "./export/exporter"; import { QuickpulseSender } from "./export/sender"; import { ConnectionStringParser } from "../../utils/connectionStringParser"; import { DEFAULT_LIVEMETRICS_ENDPOINT } from "../../types"; -import { - QuickPulseOpenTelemetryMetricNames, +import type { QuickpulseExporterOptions, RequestData, DependencyData, @@ -63,9 +54,10 @@ import { ExceptionData, TelemetryData, } from "./types"; +import { QuickPulseOpenTelemetryMetricNames } from "./types"; import { hrTimeToMilliseconds, suppressTracing } from "@opentelemetry/core"; import { getInstance } from "../../utils/statsbeat"; -import { CollectionConfigurationError } from "../../generated"; +import type { CollectionConfigurationError } from "../../generated"; import { Filter } from "./filtering/filter"; import { Validator } from "./filtering/validator"; import { CollectionConfigurationErrorTracker } from "./filtering/collectionConfigurationErrorTracker"; diff --git a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/types.ts b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/types.ts index f26ae3366197..a3a73827d28d 100644 --- a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/types.ts +++ b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/types.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; -import { MonitoringDataPoint, PublishResponse } from "../../generated"; -import { DocumentIngress, CollectionConfigurationError } from "../../generated"; +import type { TokenCredential } from "@azure/core-auth"; +import type { MonitoringDataPoint, PublishResponse } from "../../generated"; +import type { DocumentIngress, CollectionConfigurationError } from "../../generated"; /** * Quickpulse Exporter Options diff --git a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/utils.ts b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/utils.ts index 33ffe0ea3b02..bb5df9f78fcd 100644 --- a/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/utils.ts +++ b/sdk/monitor/monitor-opentelemetry/src/metrics/quickpulse/utils.ts @@ -4,13 +4,12 @@ /* eslint-disable @typescript-eslint/no-unsafe-enum-comparison */ import * as os from "os"; -import { ReadableSpan } from "@opentelemetry/sdk-trace-base"; -import { LogRecord } from "@opentelemetry/sdk-logs"; -import { +import type { ReadableSpan } from "@opentelemetry/sdk-trace-base"; +import type { LogRecord } from "@opentelemetry/sdk-logs"; +import type { DocumentIngress, Exception, KeyValuePairString, - KnownDocumentType, MetricPoint, MonitoringDataPoint, RemoteDependency, @@ -19,7 +18,9 @@ import { Trace, CollectionConfigurationError, } from "../../generated"; -import { Attributes, SpanKind, SpanStatusCode } from "@opentelemetry/api"; +import { KnownDocumentType } from "../../generated"; +import type { Attributes } from "@opentelemetry/api"; +import { SpanKind, SpanStatusCode } from "@opentelemetry/api"; import { SEMATTRS_EXCEPTION_MESSAGE, SEMATTRS_EXCEPTION_TYPE, @@ -56,27 +57,24 @@ import { SEMATTRS_DB_STATEMENT, } from "@opentelemetry/semantic-conventions"; import { SDK_INFO, hrTimeToMilliseconds } from "@opentelemetry/core"; -import { DataPointType, Histogram, ResourceMetrics } from "@opentelemetry/sdk-metrics"; +import type { Histogram, ResourceMetrics } from "@opentelemetry/sdk-metrics"; +import { DataPointType } from "@opentelemetry/sdk-metrics"; import { AZURE_MONITOR_AUTO_ATTACH, AZURE_MONITOR_OPENTELEMETRY_VERSION, AZURE_MONITOR_PREFIX, AttachTypePrefix, } from "../../types"; -import { Resource } from "@opentelemetry/resources"; +import type { Resource } from "@opentelemetry/resources"; +import type { RequestData, DependencyData, ExceptionData, TraceData, TelemetryData } from "./types"; import { QuickPulseMetricNames, QuickPulseOpenTelemetryMetricNames, - RequestData, - DependencyData, - ExceptionData, - TraceData, - TelemetryData, DependencyTypes, } from "./types"; import { getOsPrefix } from "../../utils/common"; import { getResourceProvider } from "../../utils/common"; -import { LogAttributes } from "@opentelemetry/api-logs"; +import type { LogAttributes } from "@opentelemetry/api-logs"; import { getDependencyTarget, isSqlDB, isExceptionTelemetry } from "../utils"; /** Get the internal SDK version */ diff --git a/sdk/monitor/monitor-opentelemetry/src/metrics/standardMetrics.ts b/sdk/monitor/monitor-opentelemetry/src/metrics/standardMetrics.ts index bfdcbc28bb4f..0d060b781b39 100644 --- a/sdk/monitor/monitor-opentelemetry/src/metrics/standardMetrics.ts +++ b/sdk/monitor/monitor-opentelemetry/src/metrics/standardMetrics.ts @@ -1,17 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - MeterProvider, +import type { MeterProviderOptions, - PeriodicExportingMetricReader, PeriodicExportingMetricReaderOptions, } from "@opentelemetry/sdk-metrics"; -import { InternalConfig } from "../shared/config"; +import { MeterProvider, PeriodicExportingMetricReader } from "@opentelemetry/sdk-metrics"; +import type { InternalConfig } from "../shared/config"; import { AzureMonitorMetricExporter } from "@azure/monitor-opentelemetry-exporter"; -import { Counter, Histogram, Meter, SpanKind, ValueType } from "@opentelemetry/api"; -import { ReadableSpan, Span, TimedEvent } from "@opentelemetry/sdk-trace-base"; -import { LogRecord } from "@opentelemetry/sdk-logs"; +import type { Counter, Histogram, Meter } from "@opentelemetry/api"; +import { SpanKind, ValueType } from "@opentelemetry/api"; +import type { ReadableSpan, Span, TimedEvent } from "@opentelemetry/sdk-trace-base"; +import type { LogRecord } from "@opentelemetry/sdk-logs"; import { getDependencyDimensions, getExceptionDimensions, diff --git a/sdk/monitor/monitor-opentelemetry/src/metrics/utils.ts b/sdk/monitor/monitor-opentelemetry/src/metrics/utils.ts index 1f56b21ac0bb..903baf847a90 100644 --- a/sdk/monitor/monitor-opentelemetry/src/metrics/utils.ts +++ b/sdk/monitor/monitor-opentelemetry/src/metrics/utils.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Attributes, SpanStatusCode } from "@opentelemetry/api"; -import { ReadableSpan } from "@opentelemetry/sdk-trace-base"; +import type { Attributes } from "@opentelemetry/api"; +import { SpanStatusCode } from "@opentelemetry/api"; +import type { ReadableSpan } from "@opentelemetry/sdk-trace-base"; import { SEMRESATTRS_SERVICE_NAME, SEMRESATTRS_SERVICE_NAMESPACE, @@ -24,16 +25,15 @@ import { DBSYSTEMVALUES_HSQLDB, DBSYSTEMVALUES_H2, } from "@opentelemetry/semantic-conventions"; -import { +import type { MetricDependencyDimensions, MetricDimensionTypeKeys, MetricRequestDimensions, StandardMetricBaseDimensions, - StandardMetricIds, - StandardMetricPropertyNames, } from "./types"; -import { LogRecord } from "@opentelemetry/sdk-logs"; -import { Resource } from "@opentelemetry/resources"; +import { StandardMetricIds, StandardMetricPropertyNames } from "./types"; +import type { LogRecord } from "@opentelemetry/sdk-logs"; +import type { Resource } from "@opentelemetry/resources"; import * as os from "os"; export function getRequestDimensions(span: ReadableSpan): Attributes { diff --git a/sdk/monitor/monitor-opentelemetry/src/shared/config.ts b/sdk/monitor/monitor-opentelemetry/src/shared/config.ts index f953f9e3527e..13ea8d21fc63 100644 --- a/sdk/monitor/monitor-opentelemetry/src/shared/config.ts +++ b/sdk/monitor/monitor-opentelemetry/src/shared/config.ts @@ -1,18 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - Resource, - ResourceDetectionConfig, - detectResourcesSync, - envDetectorSync, -} from "@opentelemetry/resources"; -import { +import type { ResourceDetectionConfig } from "@opentelemetry/resources"; +import { Resource, detectResourcesSync, envDetectorSync } from "@opentelemetry/resources"; +import type { BrowserSdkLoaderOptions, AzureMonitorOpenTelemetryOptions, InstrumentationOptions, } from "../types"; -import { AzureMonitorExporterOptions } from "@azure/monitor-opentelemetry-exporter"; +import type { AzureMonitorExporterOptions } from "@azure/monitor-opentelemetry-exporter"; import { JsonConfig } from "./jsonConfig"; import { Logger } from "./logging"; import { diff --git a/sdk/monitor/monitor-opentelemetry/src/shared/jsonConfig.ts b/sdk/monitor/monitor-opentelemetry/src/shared/jsonConfig.ts index edc3d87f6efb..7afc22283073 100644 --- a/sdk/monitor/monitor-opentelemetry/src/shared/jsonConfig.ts +++ b/sdk/monitor/monitor-opentelemetry/src/shared/jsonConfig.ts @@ -5,12 +5,12 @@ import * as fs from "fs"; import * as path from "path"; -import { +import type { BrowserSdkLoaderOptions, AzureMonitorOpenTelemetryOptions, InstrumentationOptions, } from "../types"; -import { AzureMonitorExporterOptions } from "@azure/monitor-opentelemetry-exporter"; +import type { AzureMonitorExporterOptions } from "@azure/monitor-opentelemetry-exporter"; import { Logger } from "./logging"; const ENV_CONFIGURATION_FILE = "APPLICATIONINSIGHTS_CONFIGURATION_FILE"; diff --git a/sdk/monitor/monitor-opentelemetry/src/shared/logging/diagFileConsoleLogger.ts b/sdk/monitor/monitor-opentelemetry/src/shared/logging/diagFileConsoleLogger.ts index da39208c35b7..9ca860bfd8e5 100644 --- a/sdk/monitor/monitor-opentelemetry/src/shared/logging/diagFileConsoleLogger.ts +++ b/sdk/monitor/monitor-opentelemetry/src/shared/logging/diagFileConsoleLogger.ts @@ -4,7 +4,7 @@ import * as fs from "fs"; import * as os from "os"; import * as path from "path"; -import { DiagLogger } from "@opentelemetry/api"; +import type { DiagLogger } from "@opentelemetry/api"; import { accessAsync, appendFileAsync, diff --git a/sdk/monitor/monitor-opentelemetry/src/shared/logging/logger.ts b/sdk/monitor/monitor-opentelemetry/src/shared/logging/logger.ts index 399f20d0d29d..4886aab8726a 100644 --- a/sdk/monitor/monitor-opentelemetry/src/shared/logging/logger.ts +++ b/sdk/monitor/monitor-opentelemetry/src/shared/logging/logger.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureLogLevel, AzureLogger, createClientLogger, setLogLevel } from "@azure/logger"; -import { diag, DiagLogger, DiagLogLevel } from "@opentelemetry/api"; +import type { AzureLogLevel } from "@azure/logger"; +import { AzureLogger, createClientLogger, setLogLevel } from "@azure/logger"; +import type { DiagLogger } from "@opentelemetry/api"; +import { diag, DiagLogLevel } from "@opentelemetry/api"; import { DiagFileConsoleLogger } from "./diagFileConsoleLogger"; export class Logger { diff --git a/sdk/monitor/monitor-opentelemetry/src/traces/azureFnHook.ts b/sdk/monitor/monitor-opentelemetry/src/traces/azureFnHook.ts index 550c5ecef54c..a079117e5ef2 100644 --- a/sdk/monitor/monitor-opentelemetry/src/traces/azureFnHook.ts +++ b/sdk/monitor/monitor-opentelemetry/src/traces/azureFnHook.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context as AzureFnV3Context } from "@azure/functions-old"; -import { InvocationContext as AzureFnV4Context } from "@azure/functions"; -import { context, propagation, Context as OpenTelemetryContext } from "@opentelemetry/api"; +import type { Context as AzureFnV3Context } from "@azure/functions-old"; +import type { InvocationContext as AzureFnV4Context } from "@azure/functions"; +import type { Context as OpenTelemetryContext } from "@opentelemetry/api"; +import { context, propagation } from "@opentelemetry/api"; import { Logger } from "../shared/logging"; type AzureFnContext = AzureFnV3Context & AzureFnV4Context; diff --git a/sdk/monitor/monitor-opentelemetry/src/traces/handler.ts b/sdk/monitor/monitor-opentelemetry/src/traces/handler.ts index 1ef23dd7c4eb..9f888da19733 100644 --- a/sdk/monitor/monitor-opentelemetry/src/traces/handler.ts +++ b/sdk/monitor/monitor-opentelemetry/src/traces/handler.ts @@ -1,27 +1,28 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestOptions } from "http"; +import type { RequestOptions } from "http"; import { createAzureSdkInstrumentation } from "@azure/opentelemetry-instrumentation-azure-sdk"; import { AzureMonitorTraceExporter } from "@azure/monitor-opentelemetry-exporter"; -import { BatchSpanProcessor, BufferConfig } from "@opentelemetry/sdk-trace-base"; -import { - HttpInstrumentation, +import type { BufferConfig } from "@opentelemetry/sdk-trace-base"; +import { BatchSpanProcessor } from "@opentelemetry/sdk-trace-base"; +import type { HttpInstrumentationConfig, IgnoreOutgoingRequestFunction, } from "@opentelemetry/instrumentation-http"; +import { HttpInstrumentation } from "@opentelemetry/instrumentation-http"; import { MongoDBInstrumentation } from "@opentelemetry/instrumentation-mongodb"; import { MySQLInstrumentation } from "@opentelemetry/instrumentation-mysql"; import { PgInstrumentation } from "@opentelemetry/instrumentation-pg"; import { RedisInstrumentation } from "@opentelemetry/instrumentation-redis"; import { RedisInstrumentation as Redis4Instrumentation } from "@opentelemetry/instrumentation-redis-4"; -import { InternalConfig } from "../shared/config"; -import { MetricHandler } from "../metrics/handler"; +import type { InternalConfig } from "../shared/config"; +import type { MetricHandler } from "../metrics/handler"; import { ignoreOutgoingRequestHook } from "../utils/common"; import { AzureMonitorSpanProcessor } from "./spanProcessor"; import { AzureFunctionsHook } from "./azureFnHook"; -import { Instrumentation } from "@opentelemetry/instrumentation"; +import type { Instrumentation } from "@opentelemetry/instrumentation"; import { ApplicationInsightsSampler } from "./sampler"; /** diff --git a/sdk/monitor/monitor-opentelemetry/src/traces/sampler.ts b/sdk/monitor/monitor-opentelemetry/src/traces/sampler.ts index 828c2932c3aa..211e0ebbb8a0 100644 --- a/sdk/monitor/monitor-opentelemetry/src/traces/sampler.ts +++ b/sdk/monitor/monitor-opentelemetry/src/traces/sampler.ts @@ -4,8 +4,10 @@ * TODO: Remove this sampler in favor of the implementation in the AzMon Exporter once we support M2M approach for standard metrics. * This sampler specifically marks spans as sampled out and records them instead of dropping the span altogether. */ -import { Link, Attributes, SpanKind, Context, diag } from "@opentelemetry/api"; -import { Sampler, SamplingDecision, SamplingResult } from "@opentelemetry/sdk-trace-base"; +import type { Link, Attributes, SpanKind, Context } from "@opentelemetry/api"; +import { diag } from "@opentelemetry/api"; +import type { Sampler, SamplingResult } from "@opentelemetry/sdk-trace-base"; +import { SamplingDecision } from "@opentelemetry/sdk-trace-base"; import { AzureMonitorSampleRate } from "../types"; /** diff --git a/sdk/monitor/monitor-opentelemetry/src/traces/spanProcessor.ts b/sdk/monitor/monitor-opentelemetry/src/traces/spanProcessor.ts index c2f6a4a1b421..702a031bb206 100644 --- a/sdk/monitor/monitor-opentelemetry/src/traces/spanProcessor.ts +++ b/sdk/monitor/monitor-opentelemetry/src/traces/spanProcessor.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "@opentelemetry/api"; -import { ReadableSpan, Span, SpanProcessor } from "@opentelemetry/sdk-trace-base"; -import { MetricHandler } from "../metrics"; +import type { Context } from "@opentelemetry/api"; +import type { ReadableSpan, Span, SpanProcessor } from "@opentelemetry/sdk-trace-base"; +import type { MetricHandler } from "../metrics"; /** * Azure Monitor Span Processor. diff --git a/sdk/monitor/monitor-opentelemetry/src/types.ts b/sdk/monitor/monitor-opentelemetry/src/types.ts index c93c4adc79c5..535f8e3b4778 100644 --- a/sdk/monitor/monitor-opentelemetry/src/types.ts +++ b/sdk/monitor/monitor-opentelemetry/src/types.ts @@ -3,11 +3,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureMonitorExporterOptions } from "@azure/monitor-opentelemetry-exporter"; -import { InstrumentationConfig } from "@opentelemetry/instrumentation"; -import { Resource } from "@opentelemetry/resources"; -import { LogRecordProcessor } from "@opentelemetry/sdk-logs"; -import { SpanProcessor } from "@opentelemetry/sdk-trace-base"; +import type { AzureMonitorExporterOptions } from "@azure/monitor-opentelemetry-exporter"; +import type { InstrumentationConfig } from "@opentelemetry/instrumentation"; +import type { Resource } from "@opentelemetry/resources"; +import type { LogRecordProcessor } from "@opentelemetry/sdk-logs"; +import type { SpanProcessor } from "@opentelemetry/sdk-trace-base"; /** * Azure Monitor OpenTelemetry Options diff --git a/sdk/monitor/monitor-opentelemetry/src/utils/common.ts b/sdk/monitor/monitor-opentelemetry/src/utils/common.ts index 19e5386d4428..52fd0e905ce2 100644 --- a/sdk/monitor/monitor-opentelemetry/src/utils/common.ts +++ b/sdk/monitor/monitor-opentelemetry/src/utils/common.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as http from "http"; +import type * as http from "http"; +import type { DetectorSync } from "@opentelemetry/resources"; import { - DetectorSync, envDetectorSync, hostDetectorSync, osDetectorSync, diff --git a/sdk/monitor/monitor-opentelemetry/src/utils/connectionStringParser.ts b/sdk/monitor/monitor-opentelemetry/src/utils/connectionStringParser.ts index 24ff7ce40898..ac0d1bdc30c0 100644 --- a/sdk/monitor/monitor-opentelemetry/src/utils/connectionStringParser.ts +++ b/sdk/monitor/monitor-opentelemetry/src/utils/connectionStringParser.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { diag } from "@opentelemetry/api"; -import { ConnectionString, ConnectionStringKey } from "./types"; +import type { ConnectionString, ConnectionStringKey } from "./types"; import { DEFAULT_BREEZE_ENDPOINT, DEFAULT_LIVEMETRICS_ENDPOINT } from "../types"; /** diff --git a/sdk/monitor/monitor-opentelemetry/src/utils/opentelemetryInstrumentationPatcher.ts b/sdk/monitor/monitor-opentelemetry/src/utils/opentelemetryInstrumentationPatcher.ts index bf60311a4ef2..62531c7034d4 100644 --- a/sdk/monitor/monitor-opentelemetry/src/utils/opentelemetryInstrumentationPatcher.ts +++ b/sdk/monitor/monitor-opentelemetry/src/utils/opentelemetryInstrumentationPatcher.ts @@ -2,11 +2,8 @@ // Licensed under the MIT License. import type { Instrumentation } from "@opentelemetry/instrumentation/build/src/types"; -import { - AZURE_MONITOR_STATSBEAT_FEATURES, - StatsbeatEnvironmentConfig, - StatsbeatInstrumentationMap, -} from "../types"; +import type { StatsbeatEnvironmentConfig } from "../types"; +import { AZURE_MONITOR_STATSBEAT_FEATURES, StatsbeatInstrumentationMap } from "../types"; import { Logger } from "../shared/logging"; /** diff --git a/sdk/monitor/monitor-opentelemetry/src/utils/statsbeat.ts b/sdk/monitor/monitor-opentelemetry/src/utils/statsbeat.ts index ba5df96674d0..088508dca824 100644 --- a/sdk/monitor/monitor-opentelemetry/src/utils/statsbeat.ts +++ b/sdk/monitor/monitor-opentelemetry/src/utils/statsbeat.ts @@ -1,15 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { + StatsbeatEnvironmentConfig, + StatsbeatFeatures, + StatsbeatInstrumentations, + StatsbeatOption, +} from "../types"; import { AZURE_MONITOR_STATSBEAT_FEATURES, - StatsbeatEnvironmentConfig, StatsbeatFeature, - StatsbeatFeatures, StatsbeatFeaturesMap, StatsbeatInstrumentation, - StatsbeatInstrumentations, - StatsbeatOption, } from "../types"; import { Logger as InternalLogger } from "../shared/logging"; diff --git a/sdk/monitor/monitor-opentelemetry/test/internal/functional/log.test.ts b/sdk/monitor/monitor-opentelemetry/test/internal/functional/log.test.ts index a6f0cc7d7d6a..77506ab534e2 100644 --- a/sdk/monitor/monitor-opentelemetry/test/internal/functional/log.test.ts +++ b/sdk/monitor/monitor-opentelemetry/test/internal/functional/log.test.ts @@ -5,7 +5,7 @@ import { assertCount, assertLogExpectation } from "../../utils/assert"; import { LogBasicScenario } from "../../utils/basic"; import nock from "nock"; import { successfulBreezeResponse } from "../../utils/breezeTestUtils"; -import { TelemetryItem as Envelope } from "../../utils/models/index"; +import type { TelemetryItem as Envelope } from "../../utils/models/index"; /** TODO: Add winston-transport check functional test */ describe("Log Exporter Scenarios", () => { diff --git a/sdk/monitor/monitor-opentelemetry/test/internal/functional/metric.test.ts b/sdk/monitor/monitor-opentelemetry/test/internal/functional/metric.test.ts index d64e134c53e8..dcd670177e07 100644 --- a/sdk/monitor/monitor-opentelemetry/test/internal/functional/metric.test.ts +++ b/sdk/monitor/monitor-opentelemetry/test/internal/functional/metric.test.ts @@ -5,7 +5,7 @@ import { assertCount, assertMetricExpectation } from "../../utils/assert"; import { MetricBasicScenario } from "../../utils/basic"; import nock from "nock"; import { successfulBreezeResponse } from "../../utils/breezeTestUtils"; -import { TelemetryItem as Envelope } from "../../utils/models/index"; +import type { TelemetryItem as Envelope } from "../../utils/models/index"; describe("Metric Exporter Scenarios", () => { describe(MetricBasicScenario.prototype.constructor.name, () => { diff --git a/sdk/monitor/monitor-opentelemetry/test/internal/functional/trace.test.ts b/sdk/monitor/monitor-opentelemetry/test/internal/functional/trace.test.ts index 4c24953644f1..16d14b68a252 100644 --- a/sdk/monitor/monitor-opentelemetry/test/internal/functional/trace.test.ts +++ b/sdk/monitor/monitor-opentelemetry/test/internal/functional/trace.test.ts @@ -5,7 +5,7 @@ import { assertCount, assertTraceExpectation } from "../../utils/assert"; import { TraceBasicScenario } from "../../utils/basic"; import nock from "nock"; import { successfulBreezeResponse } from "../../utils/breezeTestUtils"; -import { TelemetryItem as Envelope } from "../../utils/models/index"; +import type { TelemetryItem as Envelope } from "../../utils/models/index"; describe("Trace Exporter Scenarios", () => { describe(TraceBasicScenario.prototype.constructor.name, () => { diff --git a/sdk/monitor/monitor-opentelemetry/test/internal/unit/browserSdkLoader/browserSdkLoader.test.ts b/sdk/monitor/monitor-opentelemetry/test/internal/unit/browserSdkLoader/browserSdkLoader.test.ts index b13e539803c1..d60f26f6cd33 100644 --- a/sdk/monitor/monitor-opentelemetry/test/internal/unit/browserSdkLoader/browserSdkLoader.test.ts +++ b/sdk/monitor/monitor-opentelemetry/test/internal/unit/browserSdkLoader/browserSdkLoader.test.ts @@ -4,15 +4,12 @@ /* eslint-disable no-underscore-dangle*/ import * as assert from "assert"; -import * as http from "http"; +import type * as http from "http"; import * as sinon from "sinon"; import { BrowserSdkLoader } from "../../../../src/browserSdkLoader/browserSdkLoader"; import * as BrowserSdkLoaderHelper from "../../../../src/browserSdkLoader/browserSdkLoaderHelper"; -import { - AzureMonitorOpenTelemetryOptions, - shutdownAzureMonitor, - useAzureMonitor, -} from "../../../../src/index"; +import type { AzureMonitorOpenTelemetryOptions } from "../../../../src/index"; +import { shutdownAzureMonitor, useAzureMonitor } from "../../../../src/index"; import { getOsPrefix } from "../../../../src/utils/common"; import { metrics, trace } from "@opentelemetry/api"; import { logs } from "@opentelemetry/api-logs"; diff --git a/sdk/monitor/monitor-opentelemetry/test/internal/unit/logs/batchLogRecordProcessor.test.ts b/sdk/monitor/monitor-opentelemetry/test/internal/unit/logs/batchLogRecordProcessor.test.ts index 5a46d5ec0854..4a81658083ae 100644 --- a/sdk/monitor/monitor-opentelemetry/test/internal/unit/logs/batchLogRecordProcessor.test.ts +++ b/sdk/monitor/monitor-opentelemetry/test/internal/unit/logs/batchLogRecordProcessor.test.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import * as assert from "assert"; -import { LogRecord as APILogRecord } from "@opentelemetry/api-logs"; +import type { LogRecord as APILogRecord } from "@opentelemetry/api-logs"; import { InMemoryLogRecordExporter, LoggerProvider } from "@opentelemetry/sdk-logs"; import { NodeTracerProvider } from "@opentelemetry/sdk-trace-node"; import { ApplicationInsightsSampler } from "../../../../src/traces/sampler"; diff --git a/sdk/monitor/monitor-opentelemetry/test/internal/unit/logs/logHandler.test.ts b/sdk/monitor/monitor-opentelemetry/test/internal/unit/logs/logHandler.test.ts index b2ba8730a795..383f3a953d78 100644 --- a/sdk/monitor/monitor-opentelemetry/test/internal/unit/logs/logHandler.test.ts +++ b/sdk/monitor/monitor-opentelemetry/test/internal/unit/logs/logHandler.test.ts @@ -6,7 +6,8 @@ import * as assert from "assert"; import sinon from "sinon"; import { trace, context, isValidTraceId, isValidSpanId } from "@opentelemetry/api"; -import { LogRecord as APILogRecord, SeverityNumber, logs } from "@opentelemetry/api-logs"; +import type { LogRecord as APILogRecord } from "@opentelemetry/api-logs"; +import { SeverityNumber, logs } from "@opentelemetry/api-logs"; import { ExportResultCode } from "@opentelemetry/core"; import { LoggerProvider } from "@opentelemetry/sdk-logs"; import { LogHandler } from "../../../../src/logs"; @@ -14,8 +15,8 @@ import { MetricHandler } from "../../../../src/metrics"; import { InternalConfig } from "../../../../src/shared"; import { NodeTracerProvider } from "@opentelemetry/sdk-trace-node"; import { SemanticAttributes } from "@opentelemetry/semantic-conventions"; -import { BunyanInstrumentationConfig } from "@opentelemetry/instrumentation-bunyan"; -import { WinstonInstrumentationConfig } from "@opentelemetry/instrumentation-winston"; +import type { BunyanInstrumentationConfig } from "@opentelemetry/instrumentation-bunyan"; +import type { WinstonInstrumentationConfig } from "@opentelemetry/instrumentation-winston"; describe("LogHandler", () => { let sandbox: sinon.SinonSandbox; diff --git a/sdk/monitor/monitor-opentelemetry/test/internal/unit/main.test.ts b/sdk/monitor/monitor-opentelemetry/test/internal/unit/main.test.ts index 6a2777216128..080a9e786001 100644 --- a/sdk/monitor/monitor-opentelemetry/test/internal/unit/main.test.ts +++ b/sdk/monitor/monitor-opentelemetry/test/internal/unit/main.test.ts @@ -3,26 +3,24 @@ import * as assert from "assert"; import * as sinon from "sinon"; -import { metrics, trace, Context, TracerProvider } from "@opentelemetry/api"; +import type { Context, TracerProvider } from "@opentelemetry/api"; +import { metrics, trace } from "@opentelemetry/api"; import { logs } from "@opentelemetry/api-logs"; -import { - useAzureMonitor, - AzureMonitorOpenTelemetryOptions, - shutdownAzureMonitor, -} from "../../../src/index"; -import { MeterProvider } from "@opentelemetry/sdk-metrics"; +import type { AzureMonitorOpenTelemetryOptions } from "../../../src/index"; +import { useAzureMonitor, shutdownAzureMonitor } from "../../../src/index"; +import type { MeterProvider } from "@opentelemetry/sdk-metrics"; +import type { StatsbeatEnvironmentConfig } from "../../../src/types"; import { AZURE_MONITOR_STATSBEAT_FEATURES, - StatsbeatEnvironmentConfig, StatsbeatFeature, StatsbeatInstrumentation, StatsbeatInstrumentationMap, } from "../../../src/types"; import { getOsPrefix } from "../../../src/utils/common"; -import { ReadableSpan, Span, SpanProcessor } from "@opentelemetry/sdk-trace-base"; -import { LogRecordProcessor, LogRecord } from "@opentelemetry/sdk-logs"; +import type { ReadableSpan, Span, SpanProcessor } from "@opentelemetry/sdk-trace-base"; +import type { LogRecordProcessor, LogRecord } from "@opentelemetry/sdk-logs"; import { getInstance } from "../../../src/utils/statsbeat"; -import { Instrumentation, InstrumentationConfig } from "@opentelemetry/instrumentation"; +import type { Instrumentation, InstrumentationConfig } from "@opentelemetry/instrumentation"; const testInstrumentation: Instrumentation = { instrumentationName: "@opentelemetry/instrumentation-fs", diff --git a/sdk/monitor/monitor-opentelemetry/test/internal/unit/metrics/liveMetrics.test.ts b/sdk/monitor/monitor-opentelemetry/test/internal/unit/metrics/liveMetrics.test.ts index 1f75b38e7558..bd0badb92e22 100644 --- a/sdk/monitor/monitor-opentelemetry/test/internal/unit/metrics/liveMetrics.test.ts +++ b/sdk/monitor/monitor-opentelemetry/test/internal/unit/metrics/liveMetrics.test.ts @@ -12,8 +12,8 @@ import { QuickPulseOpenTelemetryMetricNames, } from "../../../../src/metrics/quickpulse/types"; /* eslint-disable-next-line @typescript-eslint/no-redeclare */ -import { Exception, RemoteDependency, Request } from "../../../../src/generated"; -import { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { Exception, RemoteDependency, Request } from "../../../../src/generated"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; import { resourceMetricsToQuickpulseDataPoint } from "../../../../src/metrics/quickpulse/utils"; describe("#LiveMetrics", () => { diff --git a/sdk/monitor/monitor-opentelemetry/test/internal/unit/metrics/liveMetricsFilter.test.ts b/sdk/monitor/monitor-opentelemetry/test/internal/unit/metrics/liveMetricsFilter.test.ts index a3d569f552a8..c75b7a63f39b 100644 --- a/sdk/monitor/monitor-opentelemetry/test/internal/unit/metrics/liveMetricsFilter.test.ts +++ b/sdk/monitor/monitor-opentelemetry/test/internal/unit/metrics/liveMetricsFilter.test.ts @@ -2,20 +2,22 @@ // Licensed under the MIT License. import * as assert from "assert"; -import { +import type { DerivedMetricInfo, FilterConjunctionGroupInfo, FilterInfo, - KnownPredicateType, - KnownTelemetryType, RemoteDependency, /* eslint-disable-next-line @typescript-eslint/no-redeclare */ Request, Exception, Trace, + DocumentFilterConjunctionGroupInfo, +} from "../../../../src/generated"; +import { + KnownPredicateType, + KnownTelemetryType, KnownDocumentType, KnownAggregationType, - DocumentFilterConjunctionGroupInfo, } from "../../../../src/generated"; import { Validator } from "../../../../src/metrics/quickpulse/filtering/validator"; import { Filter } from "../../../../src/metrics/quickpulse/filtering/filter"; @@ -25,11 +27,13 @@ import { UnexpectedFilterCreateError, MetricFailureToCreateError, } from "../../../../src/metrics/quickpulse/filtering/quickpulseErrors"; -import { +import type { RequestData, DependencyData, ExceptionData, TraceData, +} from "../../../../src/metrics/quickpulse/types"; +import { KnownRequestColumns, KnownDependencyColumns, } from "../../../../src/metrics/quickpulse/types"; diff --git a/sdk/monitor/monitor-opentelemetry/test/internal/unit/metrics/standardMetrics.test.ts b/sdk/monitor/monitor-opentelemetry/test/internal/unit/metrics/standardMetrics.test.ts index 5afbe0b14e75..8706daf858bf 100644 --- a/sdk/monitor/monitor-opentelemetry/test/internal/unit/metrics/standardMetrics.test.ts +++ b/sdk/monitor/monitor-opentelemetry/test/internal/unit/metrics/standardMetrics.test.ts @@ -3,8 +3,9 @@ import * as assert from "assert"; import * as sinon from "sinon"; -import { Attributes, SpanKind, SpanStatusCode } from "@opentelemetry/api"; -import { Histogram } from "@opentelemetry/sdk-metrics"; +import type { Attributes } from "@opentelemetry/api"; +import { SpanKind, SpanStatusCode } from "@opentelemetry/api"; +import type { Histogram } from "@opentelemetry/sdk-metrics"; import { SEMATTRS_HTTP_STATUS_CODE, SEMATTRS_NET_HOST_PORT, diff --git a/sdk/monitor/monitor-opentelemetry/test/internal/unit/shared/config.test.ts b/sdk/monitor/monitor-opentelemetry/test/internal/unit/shared/config.test.ts index 95a3bef4714c..2a878ef95d84 100644 --- a/sdk/monitor/monitor-opentelemetry/test/internal/unit/shared/config.test.ts +++ b/sdk/monitor/monitor-opentelemetry/test/internal/unit/shared/config.test.ts @@ -13,7 +13,7 @@ import { CloudPlatformValues, SemanticResourceAttributes, } from "@opentelemetry/semantic-conventions"; -import { AzureMonitorOpenTelemetryOptions } from "../../../../src/types"; +import type { AzureMonitorOpenTelemetryOptions } from "../../../../src/types"; const vmTestResponse = { additionalCapabilities: { @@ -190,7 +190,7 @@ const testAttributes: any = { "service.name": "unknown_service:node", "telemetry.sdk.language": "nodejs", "telemetry.sdk.name": "opentelemetry", - "telemetry.sdk.version": "1.26.0", + "telemetry.sdk.version": "1.27.0", }; describe("Library/Config", () => { diff --git a/sdk/monitor/monitor-opentelemetry/test/internal/unit/traces/azureFnHook.test.ts b/sdk/monitor/monitor-opentelemetry/test/internal/unit/traces/azureFnHook.test.ts index 7cd90278a916..609418114109 100644 --- a/sdk/monitor/monitor-opentelemetry/test/internal/unit/traces/azureFnHook.test.ts +++ b/sdk/monitor/monitor-opentelemetry/test/internal/unit/traces/azureFnHook.test.ts @@ -5,9 +5,10 @@ import * as assert from "assert"; import * as sinon from "sinon"; -import { Context as AzureFnV3Context } from "@azure/functions-old"; -import { InvocationContext as AzureFnV4Context } from "@azure/functions"; -import { AzureFunctionsHook, PreInvocationContext } from "../../../../src/traces/azureFnHook"; +import type { Context as AzureFnV3Context } from "@azure/functions-old"; +import type { InvocationContext as AzureFnV4Context } from "@azure/functions"; +import type { PreInvocationContext } from "../../../../src/traces/azureFnHook"; +import { AzureFunctionsHook } from "../../../../src/traces/azureFnHook"; import { TraceHandler } from "../../../../src/traces"; import { Logger } from "../../../../src/shared/logging"; import { InternalConfig } from "../../../../src/shared"; diff --git a/sdk/monitor/monitor-opentelemetry/test/internal/unit/traces/traceHandler.test.ts b/sdk/monitor/monitor-opentelemetry/test/internal/unit/traces/traceHandler.test.ts index 3f30fdeae7d2..c441fb018ca7 100644 --- a/sdk/monitor/monitor-opentelemetry/test/internal/unit/traces/traceHandler.test.ts +++ b/sdk/monitor/monitor-opentelemetry/test/internal/unit/traces/traceHandler.test.ts @@ -10,9 +10,14 @@ import { ExportResultCode } from "@opentelemetry/core"; import { TraceHandler } from "../../../../src/traces"; import { MetricHandler } from "../../../../src/metrics"; import { InternalConfig } from "../../../../src/shared"; -import { HttpInstrumentationConfig } from "@opentelemetry/instrumentation-http"; -import { BasicTracerProvider, ReadableSpan, SpanProcessor } from "@opentelemetry/sdk-trace-base"; -import { ProxyTracerProvider, Span, metrics, trace } from "@opentelemetry/api"; +import type { HttpInstrumentationConfig } from "@opentelemetry/instrumentation-http"; +import type { + BasicTracerProvider, + ReadableSpan, + SpanProcessor, +} from "@opentelemetry/sdk-trace-base"; +import type { ProxyTracerProvider, Span } from "@opentelemetry/api"; +import { metrics, trace } from "@opentelemetry/api"; import { NodeTracerProvider } from "@opentelemetry/sdk-trace-node"; describe("Library/TraceHandler", () => { diff --git a/sdk/monitor/monitor-opentelemetry/test/utils/assert.ts b/sdk/monitor/monitor-opentelemetry/test/utils/assert.ts index dbf75d143120..2f1616f8bfce 100644 --- a/sdk/monitor/monitor-opentelemetry/test/utils/assert.ts +++ b/sdk/monitor/monitor-opentelemetry/test/utils/assert.ts @@ -2,15 +2,15 @@ // Licensed under the MIT License. import * as assert from "assert"; -import { Expectation } from "./types"; -import { +import type { Expectation } from "./types"; +import type { MetricsData, MonitorBase, RequestData, TelemetryItem as Envelope, - KnownContextTagKeys, MonitorDomain, } from "./models/index"; +import { KnownContextTagKeys } from "./models/index"; import { TelemetryItem as EnvelopeMapper } from "./models/mappers"; export const assertData = (actual: MonitorBase, expected: MonitorBase): void => { diff --git a/sdk/monitor/monitor-opentelemetry/test/utils/basic.ts b/sdk/monitor/monitor-opentelemetry/test/utils/basic.ts index 8207399da283..6888530e8955 100644 --- a/sdk/monitor/monitor-opentelemetry/test/utils/basic.ts +++ b/sdk/monitor/monitor-opentelemetry/test/utils/basic.ts @@ -12,12 +12,12 @@ import { SEMATTRS_EXCEPTION_STACKTRACE, } from "@opentelemetry/semantic-conventions"; import { SeverityNumber, logs } from "@opentelemetry/api-logs"; -import { NodeTracerProvider } from "@opentelemetry/sdk-trace-node"; -import { MeterProvider } from "@opentelemetry/sdk-metrics"; -import { LoggerProvider } from "@opentelemetry/sdk-logs"; +import type { NodeTracerProvider } from "@opentelemetry/sdk-trace-node"; +import type { MeterProvider } from "@opentelemetry/sdk-metrics"; +import type { LoggerProvider } from "@opentelemetry/sdk-logs"; import { useAzureMonitor } from "../../src"; -import { Expectation, Scenario } from "./types"; +import type { Expectation, Scenario } from "./types"; function delay(t: number, value?: T): Promise { return new Promise((resolve) => setTimeout(() => resolve(value), t)); diff --git a/sdk/monitor/monitor-opentelemetry/test/utils/types.ts b/sdk/monitor/monitor-opentelemetry/test/utils/types.ts index b0fbeb5b7888..8289ef046d4a 100644 --- a/sdk/monitor/monitor-opentelemetry/test/utils/types.ts +++ b/sdk/monitor/monitor-opentelemetry/test/utils/types.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TelemetryItem as Envelope } from "./models/index"; +import type { TelemetryItem as Envelope } from "./models/index"; export interface Expectation extends Partial { children: Expectation[]; diff --git a/sdk/monitor/monitor-query/.nycrc b/sdk/monitor/monitor-query/.nycrc deleted file mode 100644 index 320eddfeffb9..000000000000 --- a/sdk/monitor/monitor-query/.nycrc +++ /dev/null @@ -1,19 +0,0 @@ -{ - "include": [ - "dist-esm/src/**/*.js" - ], - "exclude": [ - "**/*.d.ts", - "dist-esm/src/generated/*" - ], - "reporter": [ - "text-summary", - "html", - "cobertura" - ], - "exclude-after-remap": false, - "sourceMap": true, - "produce-source-map": true, - "instrument": true, - "all": true - } diff --git a/sdk/monitor/monitor-query/api-extractor.json b/sdk/monitor/monitor-query/api-extractor.json index 5ac2da625c75..f7a573f0f7b7 100644 --- a/sdk/monitor/monitor-query/api-extractor.json +++ b/sdk/monitor/monitor-query/api-extractor.json @@ -1,6 +1,6 @@ { "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", - "mainEntryPointFilePath": "types/src/index.d.ts", + "mainEntryPointFilePath": "dist/esm/index.d.ts", "docModel": { "enabled": true }, @@ -11,7 +11,7 @@ "dtsRollup": { "enabled": true, "untrimmedFilePath": "", - "publicTrimmedFilePath": "./types/latest/monitor-query.d.ts" + "publicTrimmedFilePath": "dist/monitor-query.d.ts" }, "messages": { "tsdocMessageReporting": { diff --git a/sdk/monitor/monitor-query/karma.conf.js b/sdk/monitor/monitor-query/karma.conf.js deleted file mode 100644 index 258dad93be10..000000000000 --- a/sdk/monitor/monitor-query/karma.conf.js +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. - -// https://github.com/karma-runner/karma-chrome-launcher -process.env.CHROME_BIN = require("puppeteer").executablePath(); -require("dotenv").config(); -const { relativeRecordingsPath } = require("@azure-tools/test-recorder"); - -process.env.RECORDINGS_RELATIVE_PATH = relativeRecordingsPath(); - -module.exports = function (config) { - config.set({ - // base path that will be used to resolve all patterns (eg. files, exclude) - basePath: "./", - - // frameworks to use - // available frameworks: https://npmjs.org/browse/keyword/karma-adapter - frameworks: ["mocha"], - - plugins: [ - "karma-mocha", - "karma-mocha-reporter", - "karma-chrome-launcher", - "karma-firefox-launcher", - "karma-env-preprocessor", - "karma-coverage", - "karma-junit-reporter", - ], - - // list of files / patterns to load in the browser - files: [ - "dist-test/index.browser.js", - { pattern: "dist-test/index.browser.js.map", type: "html", included: false, served: true }, - ], - - // list of files / patterns to exclude - exclude: [], - - // preprocess matching files before serving them to the browser - // available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor - preprocessors: { - "**/*.js": ["env"], - // IMPORTANT: COMMENT following line if you want to debug in your browsers!! - // Preprocess source file to calculate code coverage, however this will make source file unreadable - //"dist-test/index.browser.js": ["coverage"] - }, - - envPreprocessor: [ - "TEST_MODE", - "MONITOR_WORKSPACE_ID", - "METRICS_RESOURCE_ID", - "LOGS_RESOURCE_ID", - "MONITOR_SECONDARY_WORKSPACE_ID", - "MQ_APPLICATIONINSIGHTS_CONNECTION_STRING", - "AZURE_CLIENT_ID", - "AZURE_CLIENT_SECRET", - "AZURE_TENANT_ID", - "RECORDINGS_RELATIVE_PATH", - ], - - // test results reporter to use - // possible values: 'dots', 'progress' - // available reporters: https://npmjs.org/browse/keyword/karma-reporter - reporters: ["mocha", "coverage", "junit"], - - coverageReporter: { - // specify a common output directory - dir: "coverage-browser/", - reporters: [{ type: "cobertura", subdir: ".", file: "cobertura-coverage.xml" }], - }, - - junitReporter: { - outputDir: "", // results will be saved as $outputDir/$browserName.xml - outputFile: "test-results.browser.xml", // if included, results will be saved as $outputDir/$browserName/$outputFile - suite: "", // suite will become the package name attribute in xml testsuite element - useBrowserName: false, // add browser name to report and classes names - nameFormatter: undefined, // function (browser, result) to customize the name attribute in xml testcase element - classNameFormatter: undefined, // function (browser, result) to customize the classname attribute in xml testcase element - properties: {}, // key value pair of properties to add to the section of the report - }, - - // web server port - port: 9876, - - // enable / disable colors in the output (reporters and logs) - colors: true, - - // level of logging - // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG - logLevel: config.LOG_INFO, - - // enable / disable watching file and executing tests whenever any file changes - autoWatch: false, - - // --no-sandbox allows our tests to run in Linux without having to change the system. - // --disable-web-security allows us to authenticate from the browser without having to write tests using interactive auth, which would be far more complex. - browsers: ["ChromeHeadlessNoSandbox"], - customLaunchers: { - ChromeHeadlessNoSandbox: { - base: "ChromeHeadless", - flags: ["--no-sandbox", "--disable-web-security"], - }, - }, - - // Continuous Integration mode - // if true, Karma captures browsers, runs the tests and exits - singleRun: true, - - // Concurrency level - // how many browser should be started simultaneous - concurrency: 1, - - browserNoActivityTimeout: 600000, - browserDisconnectTimeout: 10000, - browserDisconnectTolerance: 3, - - client: { - mocha: { - // change Karma's debug.html to the mocha web reporter - reporter: "html", - timeout: "600000", - }, - }, - }); -}; diff --git a/sdk/monitor/monitor-query/package.json b/sdk/monitor/monitor-query/package.json index c14a40265cb9..c585291e1469 100644 --- a/sdk/monitor/monitor-query/package.json +++ b/sdk/monitor/monitor-query/package.json @@ -15,14 +15,34 @@ "license": "MIT", "author": "Microsoft Corporation", "sideEffects": false, - "main": "dist/index.js", - "module": "dist-esm/src/index.js", - "browser": {}, - "types": "types/latest/monitor-query.d.ts", + "type": "module", + "exports": { + "./package.json": "./package.json", + ".": { + "browser": { + "types": "./dist/browser/index.d.ts", + "default": "./dist/browser/index.js" + }, + "react-native": { + "types": "./dist/react-native/index.d.ts", + "default": "./dist/react-native/index.js" + }, + "import": { + "types": "./dist/esm/index.d.ts", + "default": "./dist/esm/index.js" + }, + "require": { + "types": "./dist/commonjs/index.d.ts", + "default": "./dist/commonjs/index.js" + } + } + }, + "main": "./dist/commonjs/index.js", + "module": "./dist/esm/index.js", + "browser": "./dist/browser/index.js", + "types": "./dist/commonjs/index.d.ts", "files": [ "dist/", - "dist-esm/src/", - "types/latest/monitor-query.d.ts", "README.md", "LICENSE" ], @@ -44,8 +64,8 @@ "generate:client:metrics-definitions": "autorest --typescript swagger/metric-definitions.md", "generate:client:metrics-namespaces": "autorest --typescript swagger/metric-namespaces.md", "integration-test": "npm run integration-test:node && npm run integration-test:browser", - "integration-test:browser": "dev-tool run test:browser", - "integration-test:node": "dev-tool run test:node-js-input -- --timeout 5000000 'dist-esm/test/**/*.spec.js' 'dist-esm/test/**/**/*.spec.js'", + "integration-test:browser": "npm run clean && dev-tool run build-package && dev-tool run build-test && dev-tool run test:vitest --browser -- -c vitest.browser.int.config.ts", + "integration-test:node": "dev-tool run test:vitest -- -c vitest.int.config.ts", "lint": "dev-tool run vendored eslint package.json api-extractor.json src test", "lint:fix": "dev-tool run vendored eslint package.json api-extractor.json src test --fix --fix-type [problem,suggestion]", "pack": "npm pack 2>&1", @@ -53,8 +73,8 @@ "test:browser": "npm run build:test && npm run integration-test:browser", "test:node": "npm run build:test && npm run integration-test:node", "unit-test": "npm run build:test && npm run unit-test:node && npm run unit-test:browser", - "unit-test:browser": "dev-tool run test:browser", - "unit-test:node": "dev-tool run test:node-tsx-ts -- --timeout 1200000 'test/**/*.spec.ts' 'test/**/**/*.spec.ts'", + "unit-test:browser": "npm run clean && dev-tool run build-package && dev-tool run build-test && dev-tool run test:vitest --browser -- -c vitest.browser.unit.config.ts", + "unit-test:node": "dev-tool run test:vitest -- -c vitest.unit.config.ts", "update-snippets": "echo skipped" }, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", @@ -69,36 +89,25 @@ "tslib": "catalog:" }, "devDependencies": { - "@azure-tools/test-credential": "catalog:test-credentialV1", - "@azure-tools/test-recorder": "catalog:test-recorderV3", - "@azure-tools/test-utils": "workspace:*", + "@azure-tools/test-credential": "workspace:*", + "@azure-tools/test-recorder": "workspace:*", + "@azure-tools/test-utils-vitest": "workspace:*", "@azure/abort-controller": "workspace:*", "@azure/dev-tool": "workspace:*", "@azure/eslint-plugin-azure-sdk": "workspace:*", - "@azure/identity": "workspace:*", + "@azure/identity": "catalog:internal", "@azure/monitor-opentelemetry-exporter": "workspace:*", "@opentelemetry/api": "catalog:otel", "@opentelemetry/sdk-trace-base": "catalog:otel", "@opentelemetry/sdk-trace-node": "catalog:otel", - "@types/chai": "catalog:legacy", - "@types/chai-as-promised": "^7.1.0", - "@types/mocha": "catalog:legacy", "@types/node": "catalog:", - "chai": "catalog:legacy", - "chai-as-promised": "catalog:legacy", + "@vitest/browser": "catalog:", + "@vitest/coverage-istanbul": "catalog:", "dotenv": "catalog:", "eslint": "catalog:", - "karma": "catalog:legacy", - "karma-chrome-launcher": "catalog:legacy", - "karma-coverage": "catalog:legacy", - "karma-env-preprocessor": "catalog:legacy", - "karma-firefox-launcher": "catalog:legacy", - "karma-junit-reporter": "catalog:legacy", - "karma-mocha": "catalog:legacy", - "karma-mocha-reporter": "catalog:legacy", - "mocha": "catalog:legacy", - "nyc": "catalog:legacy", - "typescript": "catalog:" + "playwright": "catalog:", + "typescript": "catalog:", + "vitest": "catalog:" }, "engines": { "node": ">=18.0.0" @@ -137,5 +146,20 @@ "Azure Monitor": "https://docs.microsoft.com/azure/azure-monitor/" } }, - "sdk-type": "client" + "sdk-type": "client", + "tshy": { + "exports": { + "./package.json": "./package.json", + ".": "./src/index.ts" + }, + "dialects": [ + "esm", + "commonjs" + ], + "esmDialects": [ + "browser", + "react-native" + ], + "selfLink": false + } } diff --git a/sdk/monitor/monitor-query/review/monitor-query.api.md b/sdk/monitor/monitor-query/review/monitor-query.api.md index 68697fde28d6..ef67a18607a5 100644 --- a/sdk/monitor/monitor-query/review/monitor-query.api.md +++ b/sdk/monitor/monitor-query/review/monitor-query.api.md @@ -4,11 +4,11 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; -import * as coreClient from '@azure/core-client'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type * as coreClient from '@azure/core-client'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { TokenCredential } from '@azure/core-auth'; // @public export type AggregationType = "None" | "Average" | "Count" | "Minimum" | "Maximum" | "Total"; diff --git a/sdk/monitor/monitor-query/src/constants.ts b/sdk/monitor/monitor-query/src/constants.ts index dc5ca18d9582..edfbed25625b 100644 --- a/sdk/monitor/monitor-query/src/constants.ts +++ b/sdk/monitor/monitor-query/src/constants.ts @@ -10,7 +10,7 @@ export const SDK_VERSION: string = "1.3.1"; * Known values for Monitor Audience * * **NOTE**: This is applicable only to `MetricsClient` in the `@azure/monitor-query` data plane package. - * The name `KnownMonitorAudience` is added for backward compatibilty. + * The name `KnownMonitorAudience` is added for backward compatibility. */ export enum KnownMonitorAudience { /** diff --git a/sdk/monitor/monitor-query/src/generated/logquery/src/azureLogAnalytics.ts b/sdk/monitor/monitor-query/src/generated/logquery/src/azureLogAnalytics.ts index bb9b6aa5804b..c853d259c282 100644 --- a/sdk/monitor/monitor-query/src/generated/logquery/src/azureLogAnalytics.ts +++ b/sdk/monitor/monitor-query/src/generated/logquery/src/azureLogAnalytics.ts @@ -6,10 +6,10 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { QueryImpl, MetadataImpl } from "./operations"; -import { Query, Metadata } from "./operationsInterfaces"; -import { AzureLogAnalyticsContext } from "./azureLogAnalyticsContext"; -import { AzureLogAnalyticsOptionalParams } from "./models"; +import { QueryImpl, MetadataImpl } from "./operations/index.js"; +import { Query, Metadata } from "./operationsInterfaces/index.js"; +import { AzureLogAnalyticsContext } from "./azureLogAnalyticsContext.js"; +import { AzureLogAnalyticsOptionalParams } from "./models/index.js"; /** @internal */ export class AzureLogAnalytics extends AzureLogAnalyticsContext { diff --git a/sdk/monitor/monitor-query/src/generated/logquery/src/azureLogAnalyticsContext.ts b/sdk/monitor/monitor-query/src/generated/logquery/src/azureLogAnalyticsContext.ts index 083dbfcdef82..c66b3cb6ae41 100644 --- a/sdk/monitor/monitor-query/src/generated/logquery/src/azureLogAnalyticsContext.ts +++ b/sdk/monitor/monitor-query/src/generated/logquery/src/azureLogAnalyticsContext.ts @@ -7,7 +7,7 @@ */ import * as coreClient from "@azure/core-client"; -import { AzureLogAnalyticsOptionalParams } from "./models"; +import { AzureLogAnalyticsOptionalParams } from "./models/index.js"; /** @internal */ export class AzureLogAnalyticsContext extends coreClient.ServiceClient { diff --git a/sdk/monitor/monitor-query/src/generated/logquery/src/index.ts b/sdk/monitor/monitor-query/src/generated/logquery/src/index.ts index 6c14216c24be..37a44ffc9e45 100644 --- a/sdk/monitor/monitor-query/src/generated/logquery/src/index.ts +++ b/sdk/monitor/monitor-query/src/generated/logquery/src/index.ts @@ -6,7 +6,7 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./models"; -export { AzureLogAnalytics } from "./azureLogAnalytics"; -export { AzureLogAnalyticsContext } from "./azureLogAnalyticsContext"; -export * from "./operationsInterfaces"; +export * from "./models/index.js"; +export { AzureLogAnalytics } from "./azureLogAnalytics.js"; +export { AzureLogAnalyticsContext } from "./azureLogAnalyticsContext.js"; +export * from "./operationsInterfaces/index.js"; diff --git a/sdk/monitor/monitor-query/src/generated/logquery/src/models/parameters.ts b/sdk/monitor/monitor-query/src/generated/logquery/src/models/parameters.ts index 3b19b426aa3a..7cdd90afa20b 100644 --- a/sdk/monitor/monitor-query/src/generated/logquery/src/models/parameters.ts +++ b/sdk/monitor/monitor-query/src/generated/logquery/src/models/parameters.ts @@ -14,7 +14,7 @@ import { import { QueryBody as QueryBodyMapper, BatchRequest as BatchRequestMapper -} from "../models/mappers"; +} from "../models/mappers.js"; export const accept: OperationParameter = { parameterPath: "accept", diff --git a/sdk/monitor/monitor-query/src/generated/logquery/src/operations/index.ts b/sdk/monitor/monitor-query/src/generated/logquery/src/operations/index.ts index e90c0bd5dbf2..2037887da43f 100644 --- a/sdk/monitor/monitor-query/src/generated/logquery/src/operations/index.ts +++ b/sdk/monitor/monitor-query/src/generated/logquery/src/operations/index.ts @@ -6,5 +6,5 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./query"; -export * from "./metadata"; +export * from "./query.js"; +export * from "./metadata.js"; diff --git a/sdk/monitor/monitor-query/src/generated/logquery/src/operations/metadata.ts b/sdk/monitor/monitor-query/src/generated/logquery/src/operations/metadata.ts index 48e21cb7cf6d..6c4f357f6ea9 100644 --- a/sdk/monitor/monitor-query/src/generated/logquery/src/operations/metadata.ts +++ b/sdk/monitor/monitor-query/src/generated/logquery/src/operations/metadata.ts @@ -6,17 +6,17 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { Metadata } from "../operationsInterfaces"; +import { Metadata } from "../operationsInterfaces/index.js"; import * as coreClient from "@azure/core-client"; -import * as Mappers from "../models/mappers"; -import * as Parameters from "../models/parameters"; -import { AzureLogAnalyticsContext } from "../azureLogAnalyticsContext"; +import * as Mappers from "../models/mappers.js"; +import * as Parameters from "../models/parameters.js"; +import { AzureLogAnalyticsContext } from "../azureLogAnalyticsContext.js"; import { MetadataGetOptionalParams, MetadataGetResponse, MetadataPostOptionalParams, MetadataPostResponse -} from "../models"; +} from "../models/index.js"; /** Class containing Metadata operations. */ export class MetadataImpl implements Metadata { diff --git a/sdk/monitor/monitor-query/src/generated/logquery/src/operations/query.ts b/sdk/monitor/monitor-query/src/generated/logquery/src/operations/query.ts index 5c3e050e8b17..334357416353 100644 --- a/sdk/monitor/monitor-query/src/generated/logquery/src/operations/query.ts +++ b/sdk/monitor/monitor-query/src/generated/logquery/src/operations/query.ts @@ -6,11 +6,11 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { Query } from "../operationsInterfaces"; +import { Query } from "../operationsInterfaces/index.js"; import * as coreClient from "@azure/core-client"; -import * as Mappers from "../models/mappers"; -import * as Parameters from "../models/parameters"; -import { AzureLogAnalyticsContext } from "../azureLogAnalyticsContext"; +import * as Mappers from "../models/mappers.js"; +import * as Parameters from "../models/parameters.js"; +import { AzureLogAnalyticsContext } from "../azureLogAnalyticsContext.js"; import { QueryGetOptionalParams, QueryGetResponse, @@ -28,7 +28,7 @@ import { QueryResourceGetXmsResponse, QueryResourceExecuteXmsOptionalParams, QueryResourceExecuteXmsResponse -} from "../models"; +} from "../models/index.js"; /** Class containing Query operations. */ export class QueryImpl implements Query { diff --git a/sdk/monitor/monitor-query/src/generated/logquery/src/operationsInterfaces/index.ts b/sdk/monitor/monitor-query/src/generated/logquery/src/operationsInterfaces/index.ts index e90c0bd5dbf2..2037887da43f 100644 --- a/sdk/monitor/monitor-query/src/generated/logquery/src/operationsInterfaces/index.ts +++ b/sdk/monitor/monitor-query/src/generated/logquery/src/operationsInterfaces/index.ts @@ -6,5 +6,5 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./query"; -export * from "./metadata"; +export * from "./query.js"; +export * from "./metadata.js"; diff --git a/sdk/monitor/monitor-query/src/generated/logquery/src/operationsInterfaces/metadata.ts b/sdk/monitor/monitor-query/src/generated/logquery/src/operationsInterfaces/metadata.ts index deb2fc40418b..5f065a79bd07 100644 --- a/sdk/monitor/monitor-query/src/generated/logquery/src/operationsInterfaces/metadata.ts +++ b/sdk/monitor/monitor-query/src/generated/logquery/src/operationsInterfaces/metadata.ts @@ -11,7 +11,7 @@ import { MetadataGetResponse, MetadataPostOptionalParams, MetadataPostResponse -} from "../models"; +} from "../models/index.js"; /** Interface representing a Metadata. */ export interface Metadata { diff --git a/sdk/monitor/monitor-query/src/generated/logquery/src/operationsInterfaces/query.ts b/sdk/monitor/monitor-query/src/generated/logquery/src/operationsInterfaces/query.ts index 0dd69aa52ae6..6ec86288f6d7 100644 --- a/sdk/monitor/monitor-query/src/generated/logquery/src/operationsInterfaces/query.ts +++ b/sdk/monitor/monitor-query/src/generated/logquery/src/operationsInterfaces/query.ts @@ -23,7 +23,7 @@ import { QueryResourceGetXmsResponse, QueryResourceExecuteXmsOptionalParams, QueryResourceExecuteXmsResponse -} from "../models"; +} from "../models/index.js"; /** Interface representing a Query. */ export interface Query { diff --git a/sdk/monitor/monitor-query/src/generated/metricBatch/src/azureMonitorMetricBatch.ts b/sdk/monitor/monitor-query/src/generated/metricBatch/src/azureMonitorMetricBatch.ts index d69787f3345f..de288fe29aa1 100644 --- a/sdk/monitor/monitor-query/src/generated/metricBatch/src/azureMonitorMetricBatch.ts +++ b/sdk/monitor/monitor-query/src/generated/metricBatch/src/azureMonitorMetricBatch.ts @@ -6,13 +6,13 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { MetricsBatchImpl } from "./operations"; -import { MetricsBatch } from "./operationsInterfaces"; -import { AzureMonitorMetricBatchContext } from "./azureMonitorMetricBatchContext"; +import { MetricsBatchImpl } from "./operations/index.js"; +import { MetricsBatch } from "./operationsInterfaces/index.js"; +import { AzureMonitorMetricBatchContext } from "./azureMonitorMetricBatchContext.js"; import { AzureMonitorMetricBatchOptionalParams, ApiVersion20240201 -} from "./models"; +} from "./models/index.js"; /** @internal */ export class AzureMonitorMetricBatch extends AzureMonitorMetricBatchContext { diff --git a/sdk/monitor/monitor-query/src/generated/metricBatch/src/azureMonitorMetricBatchContext.ts b/sdk/monitor/monitor-query/src/generated/metricBatch/src/azureMonitorMetricBatchContext.ts index c8a49c991fff..d54eff30ede5 100644 --- a/sdk/monitor/monitor-query/src/generated/metricBatch/src/azureMonitorMetricBatchContext.ts +++ b/sdk/monitor/monitor-query/src/generated/metricBatch/src/azureMonitorMetricBatchContext.ts @@ -10,7 +10,7 @@ import * as coreClient from "@azure/core-client"; import { ApiVersion20240201, AzureMonitorMetricBatchOptionalParams -} from "./models"; +} from "./models/index.js"; /** @internal */ export class AzureMonitorMetricBatchContext extends coreClient.ServiceClient { diff --git a/sdk/monitor/monitor-query/src/generated/metricBatch/src/index.ts b/sdk/monitor/monitor-query/src/generated/metricBatch/src/index.ts index ccb3a58d77fb..2820f75f90cb 100644 --- a/sdk/monitor/monitor-query/src/generated/metricBatch/src/index.ts +++ b/sdk/monitor/monitor-query/src/generated/metricBatch/src/index.ts @@ -6,7 +6,7 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./models"; -export { AzureMonitorMetricBatch } from "./azureMonitorMetricBatch"; -export { AzureMonitorMetricBatchContext } from "./azureMonitorMetricBatchContext"; -export * from "./operationsInterfaces"; +export * from "./models/index.js"; +export { AzureMonitorMetricBatch } from "./azureMonitorMetricBatch.js"; +export { AzureMonitorMetricBatchContext } from "./azureMonitorMetricBatchContext.js"; +export * from "./operationsInterfaces/index.js"; diff --git a/sdk/monitor/monitor-query/src/generated/metricBatch/src/models/parameters.ts b/sdk/monitor/monitor-query/src/generated/metricBatch/src/models/parameters.ts index 3dea8fbcef7f..057640149177 100644 --- a/sdk/monitor/monitor-query/src/generated/metricBatch/src/models/parameters.ts +++ b/sdk/monitor/monitor-query/src/generated/metricBatch/src/models/parameters.ts @@ -11,7 +11,7 @@ import { OperationURLParameter, OperationQueryParameter } from "@azure/core-client"; -import { ResourceIdList as ResourceIdListMapper } from "../models/mappers"; +import { ResourceIdList as ResourceIdListMapper } from "../models/mappers.js"; export const contentType: OperationParameter = { parameterPath: ["options", "contentType"], diff --git a/sdk/monitor/monitor-query/src/generated/metricBatch/src/operations/index.ts b/sdk/monitor/monitor-query/src/generated/metricBatch/src/operations/index.ts index f4b239aebb17..5e2144117f4f 100644 --- a/sdk/monitor/monitor-query/src/generated/metricBatch/src/operations/index.ts +++ b/sdk/monitor/monitor-query/src/generated/metricBatch/src/operations/index.ts @@ -6,4 +6,4 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./metricsBatch"; +export * from "./metricsBatch.js"; diff --git a/sdk/monitor/monitor-query/src/generated/metricBatch/src/operations/metricsBatch.ts b/sdk/monitor/monitor-query/src/generated/metricBatch/src/operations/metricsBatch.ts index fee2b90ae4c6..d93995924fcb 100644 --- a/sdk/monitor/monitor-query/src/generated/metricBatch/src/operations/metricsBatch.ts +++ b/sdk/monitor/monitor-query/src/generated/metricBatch/src/operations/metricsBatch.ts @@ -6,16 +6,16 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { MetricsBatch } from "../operationsInterfaces"; +import { MetricsBatch } from "../operationsInterfaces/index.js"; import * as coreClient from "@azure/core-client"; -import * as Mappers from "../models/mappers"; -import * as Parameters from "../models/parameters"; -import { AzureMonitorMetricBatchContext } from "../azureMonitorMetricBatchContext"; +import * as Mappers from "../models/mappers.js"; +import * as Parameters from "../models/parameters.js"; +import { AzureMonitorMetricBatchContext } from "../azureMonitorMetricBatchContext.js"; import { ResourceIdList, MetricsBatchBatchOptionalParams, MetricsBatchBatchResponse -} from "../models"; +} from "../models/index.js"; /** Class containing MetricsBatch operations. */ export class MetricsBatchImpl implements MetricsBatch { diff --git a/sdk/monitor/monitor-query/src/generated/metricBatch/src/operationsInterfaces/index.ts b/sdk/monitor/monitor-query/src/generated/metricBatch/src/operationsInterfaces/index.ts index f4b239aebb17..5e2144117f4f 100644 --- a/sdk/monitor/monitor-query/src/generated/metricBatch/src/operationsInterfaces/index.ts +++ b/sdk/monitor/monitor-query/src/generated/metricBatch/src/operationsInterfaces/index.ts @@ -6,4 +6,4 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./metricsBatch"; +export * from "./metricsBatch.js"; diff --git a/sdk/monitor/monitor-query/src/generated/metricBatch/src/operationsInterfaces/metricsBatch.ts b/sdk/monitor/monitor-query/src/generated/metricBatch/src/operationsInterfaces/metricsBatch.ts index c7ed002edce2..ad69f78751c8 100644 --- a/sdk/monitor/monitor-query/src/generated/metricBatch/src/operationsInterfaces/metricsBatch.ts +++ b/sdk/monitor/monitor-query/src/generated/metricBatch/src/operationsInterfaces/metricsBatch.ts @@ -10,7 +10,7 @@ import { ResourceIdList, MetricsBatchBatchOptionalParams, MetricsBatchBatchResponse -} from "../models"; +} from "../models/index.js"; /** Interface representing a MetricsBatch. */ export interface MetricsBatch { diff --git a/sdk/monitor/monitor-query/src/generated/metrics/src/index.ts b/sdk/monitor/monitor-query/src/generated/metrics/src/index.ts index 295925816308..44a2e517d18a 100644 --- a/sdk/monitor/monitor-query/src/generated/metrics/src/index.ts +++ b/sdk/monitor/monitor-query/src/generated/metrics/src/index.ts @@ -6,7 +6,7 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./models"; -export { MonitorManagementClient } from "./monitorManagementClient"; -export { MonitorManagementClientContext } from "./monitorManagementClientContext"; -export * from "./operationsInterfaces"; +export * from "./models/index.js"; +export { MonitorManagementClient } from "./monitorManagementClient.js"; +export { MonitorManagementClientContext } from "./monitorManagementClientContext.js"; +export * from "./operationsInterfaces/index.js"; diff --git a/sdk/monitor/monitor-query/src/generated/metrics/src/models/parameters.ts b/sdk/monitor/monitor-query/src/generated/metrics/src/models/parameters.ts index 2d4120cb89bd..c64e2e75dd6c 100644 --- a/sdk/monitor/monitor-query/src/generated/metrics/src/models/parameters.ts +++ b/sdk/monitor/monitor-query/src/generated/metrics/src/models/parameters.ts @@ -11,7 +11,7 @@ import { OperationURLParameter, OperationQueryParameter } from "@azure/core-client"; -import { SubscriptionScopeMetricsRequestBodyParameters as SubscriptionScopeMetricsRequestBodyParametersMapper } from "../models/mappers"; +import { SubscriptionScopeMetricsRequestBodyParameters as SubscriptionScopeMetricsRequestBodyParametersMapper } from "../models/mappers.js"; export const accept: OperationParameter = { parameterPath: "accept", diff --git a/sdk/monitor/monitor-query/src/generated/metrics/src/monitorManagementClient.ts b/sdk/monitor/monitor-query/src/generated/metrics/src/monitorManagementClient.ts index 344ecf2b8a6d..33466f1b4942 100644 --- a/sdk/monitor/monitor-query/src/generated/metrics/src/monitorManagementClient.ts +++ b/sdk/monitor/monitor-query/src/generated/metrics/src/monitorManagementClient.ts @@ -6,13 +6,13 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { MetricsImpl } from "./operations"; -import { Metrics } from "./operationsInterfaces"; -import { MonitorManagementClientContext } from "./monitorManagementClientContext"; +import { MetricsImpl } from "./operations/index.js"; +import { Metrics } from "./operationsInterfaces/index.js"; +import { MonitorManagementClientContext } from "./monitorManagementClientContext.js"; import { MonitorManagementClientOptionalParams, ApiVersion20240201 -} from "./models"; +} from "./models/index.js"; /** @internal */ export class MonitorManagementClient extends MonitorManagementClientContext { diff --git a/sdk/monitor/monitor-query/src/generated/metrics/src/monitorManagementClientContext.ts b/sdk/monitor/monitor-query/src/generated/metrics/src/monitorManagementClientContext.ts index 1be5e32646c4..f4c9f958ec7a 100644 --- a/sdk/monitor/monitor-query/src/generated/metrics/src/monitorManagementClientContext.ts +++ b/sdk/monitor/monitor-query/src/generated/metrics/src/monitorManagementClientContext.ts @@ -10,7 +10,7 @@ import * as coreClient from "@azure/core-client"; import { ApiVersion20240201, MonitorManagementClientOptionalParams -} from "./models"; +} from "./models/index.js"; /** @internal */ export class MonitorManagementClientContext extends coreClient.ServiceClient { diff --git a/sdk/monitor/monitor-query/src/generated/metrics/src/operations/index.ts b/sdk/monitor/monitor-query/src/generated/metrics/src/operations/index.ts index a18dd1b918d4..b613fc54229f 100644 --- a/sdk/monitor/monitor-query/src/generated/metrics/src/operations/index.ts +++ b/sdk/monitor/monitor-query/src/generated/metrics/src/operations/index.ts @@ -6,4 +6,4 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./metrics"; +export * from "./metrics.js"; diff --git a/sdk/monitor/monitor-query/src/generated/metrics/src/operations/metrics.ts b/sdk/monitor/monitor-query/src/generated/metrics/src/operations/metrics.ts index 315fcc37faf1..505b31641114 100644 --- a/sdk/monitor/monitor-query/src/generated/metrics/src/operations/metrics.ts +++ b/sdk/monitor/monitor-query/src/generated/metrics/src/operations/metrics.ts @@ -6,11 +6,11 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { Metrics } from "../operationsInterfaces"; +import { Metrics } from "../operationsInterfaces/index.js"; import * as coreClient from "@azure/core-client"; -import * as Mappers from "../models/mappers"; -import * as Parameters from "../models/parameters"; -import { MonitorManagementClientContext } from "../monitorManagementClientContext"; +import * as Mappers from "../models/mappers.js"; +import * as Parameters from "../models/parameters.js"; +import { MonitorManagementClientContext } from "../monitorManagementClientContext.js"; import { MetricsListAtSubscriptionScopeOptionalParams, MetricsListAtSubscriptionScopeResponse, @@ -18,7 +18,7 @@ import { MetricsListAtSubscriptionScopePostResponse, MetricsListOptionalParams, MetricsListResponse -} from "../models"; +} from "../models/index.js"; /** Class containing Metrics operations. */ export class MetricsImpl implements Metrics { diff --git a/sdk/monitor/monitor-query/src/generated/metrics/src/operationsInterfaces/index.ts b/sdk/monitor/monitor-query/src/generated/metrics/src/operationsInterfaces/index.ts index a18dd1b918d4..b613fc54229f 100644 --- a/sdk/monitor/monitor-query/src/generated/metrics/src/operationsInterfaces/index.ts +++ b/sdk/monitor/monitor-query/src/generated/metrics/src/operationsInterfaces/index.ts @@ -6,4 +6,4 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./metrics"; +export * from "./metrics.js"; diff --git a/sdk/monitor/monitor-query/src/generated/metrics/src/operationsInterfaces/metrics.ts b/sdk/monitor/monitor-query/src/generated/metrics/src/operationsInterfaces/metrics.ts index 90063a8c9654..c807059b3aaf 100644 --- a/sdk/monitor/monitor-query/src/generated/metrics/src/operationsInterfaces/metrics.ts +++ b/sdk/monitor/monitor-query/src/generated/metrics/src/operationsInterfaces/metrics.ts @@ -13,7 +13,7 @@ import { MetricsListAtSubscriptionScopePostResponse, MetricsListOptionalParams, MetricsListResponse -} from "../models"; +} from "../models/index.js"; /** Interface representing a Metrics. */ export interface Metrics { diff --git a/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/index.ts b/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/index.ts index 295925816308..44a2e517d18a 100644 --- a/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/index.ts +++ b/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/index.ts @@ -6,7 +6,7 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./models"; -export { MonitorManagementClient } from "./monitorManagementClient"; -export { MonitorManagementClientContext } from "./monitorManagementClientContext"; -export * from "./operationsInterfaces"; +export * from "./models/index.js"; +export { MonitorManagementClient } from "./monitorManagementClient.js"; +export { MonitorManagementClientContext } from "./monitorManagementClientContext.js"; +export * from "./operationsInterfaces/index.js"; diff --git a/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/monitorManagementClient.ts b/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/monitorManagementClient.ts index 4d979e3a7f10..dc0aaaefb444 100644 --- a/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/monitorManagementClient.ts +++ b/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/monitorManagementClient.ts @@ -6,13 +6,13 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { MetricDefinitionsImpl } from "./operations"; -import { MetricDefinitions } from "./operationsInterfaces"; -import { MonitorManagementClientContext } from "./monitorManagementClientContext"; +import { MetricDefinitionsImpl } from "./operations/index.js"; +import { MetricDefinitions } from "./operationsInterfaces/index.js"; +import { MonitorManagementClientContext } from "./monitorManagementClientContext.js"; import { MonitorManagementClientOptionalParams, ApiVersion20240201 -} from "./models"; +} from "./models/index.js"; /** @internal */ export class MonitorManagementClient extends MonitorManagementClientContext { diff --git a/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/monitorManagementClientContext.ts b/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/monitorManagementClientContext.ts index 0d52449a1006..0c6f4ba411d2 100644 --- a/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/monitorManagementClientContext.ts +++ b/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/monitorManagementClientContext.ts @@ -10,7 +10,7 @@ import * as coreClient from "@azure/core-client"; import { ApiVersion20240201, MonitorManagementClientOptionalParams -} from "./models"; +} from "./models/index.js"; /** @internal */ export class MonitorManagementClientContext extends coreClient.ServiceClient { diff --git a/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operations/index.ts b/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operations/index.ts index 88f473bbcd75..55af584c1773 100644 --- a/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operations/index.ts +++ b/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operations/index.ts @@ -6,4 +6,4 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./metricDefinitions"; +export * from "./metricDefinitions.js"; diff --git a/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operations/metricDefinitions.ts b/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operations/metricDefinitions.ts index 8b7dc8220145..90d928b98e86 100644 --- a/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operations/metricDefinitions.ts +++ b/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operations/metricDefinitions.ts @@ -6,17 +6,17 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { MetricDefinitions } from "../operationsInterfaces"; +import { MetricDefinitions } from "../operationsInterfaces/index.js"; import * as coreClient from "@azure/core-client"; -import * as Mappers from "../models/mappers"; -import * as Parameters from "../models/parameters"; -import { MonitorManagementClientContext } from "../monitorManagementClientContext"; +import * as Mappers from "../models/mappers.js"; +import * as Parameters from "../models/parameters.js"; +import { MonitorManagementClientContext } from "../monitorManagementClientContext.js"; import { MetricDefinitionsListAtSubscriptionScopeOptionalParams, MetricDefinitionsListAtSubscriptionScopeResponse, MetricDefinitionsListOptionalParams, MetricDefinitionsListResponse -} from "../models"; +} from "../models/index.js"; /** Class containing MetricDefinitions operations. */ export class MetricDefinitionsImpl implements MetricDefinitions { diff --git a/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operationsInterfaces/index.ts b/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operationsInterfaces/index.ts index 88f473bbcd75..55af584c1773 100644 --- a/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operationsInterfaces/index.ts +++ b/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operationsInterfaces/index.ts @@ -6,4 +6,4 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./metricDefinitions"; +export * from "./metricDefinitions.js"; diff --git a/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operationsInterfaces/metricDefinitions.ts b/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operationsInterfaces/metricDefinitions.ts index c3e2bc65d8e5..96596b8e1480 100644 --- a/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operationsInterfaces/metricDefinitions.ts +++ b/sdk/monitor/monitor-query/src/generated/metricsdefinitions/src/operationsInterfaces/metricDefinitions.ts @@ -11,7 +11,7 @@ import { MetricDefinitionsListAtSubscriptionScopeResponse, MetricDefinitionsListOptionalParams, MetricDefinitionsListResponse -} from "../models"; +} from "../models/index.js"; /** Interface representing a MetricDefinitions. */ export interface MetricDefinitions { diff --git a/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/index.ts b/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/index.ts index 295925816308..44a2e517d18a 100644 --- a/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/index.ts +++ b/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/index.ts @@ -6,7 +6,7 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./models"; -export { MonitorManagementClient } from "./monitorManagementClient"; -export { MonitorManagementClientContext } from "./monitorManagementClientContext"; -export * from "./operationsInterfaces"; +export * from "./models/index.js"; +export { MonitorManagementClient } from "./monitorManagementClient.js"; +export { MonitorManagementClientContext } from "./monitorManagementClientContext.js"; +export * from "./operationsInterfaces/index.js"; diff --git a/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/monitorManagementClient.ts b/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/monitorManagementClient.ts index ba43186cabdd..e4176d8ec232 100644 --- a/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/monitorManagementClient.ts +++ b/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/monitorManagementClient.ts @@ -6,13 +6,13 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { MetricNamespacesImpl } from "./operations"; -import { MetricNamespaces } from "./operationsInterfaces"; -import { MonitorManagementClientContext } from "./monitorManagementClientContext"; +import { MetricNamespacesImpl } from "./operations/index.js"; +import { MetricNamespaces } from "./operationsInterfaces/index.js"; +import { MonitorManagementClientContext } from "./monitorManagementClientContext.js"; import { MonitorManagementClientOptionalParams, ApiVersion20240201 -} from "./models"; +} from "./models/index.js"; /** @internal */ export class MonitorManagementClient extends MonitorManagementClientContext { diff --git a/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/monitorManagementClientContext.ts b/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/monitorManagementClientContext.ts index 1ec5b938d554..37132536313e 100644 --- a/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/monitorManagementClientContext.ts +++ b/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/monitorManagementClientContext.ts @@ -10,7 +10,7 @@ import * as coreClient from "@azure/core-client"; import { ApiVersion20240201, MonitorManagementClientOptionalParams -} from "./models"; +} from "./models/index.js"; /** @internal */ export class MonitorManagementClientContext extends coreClient.ServiceClient { diff --git a/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operations/index.ts b/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operations/index.ts index 6e4827b6a51c..dcee7a20b859 100644 --- a/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operations/index.ts +++ b/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operations/index.ts @@ -6,4 +6,4 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./metricNamespaces"; +export * from "./metricNamespaces.js"; diff --git a/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operations/metricNamespaces.ts b/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operations/metricNamespaces.ts index 273db59b7aa3..bffa0aa6d20f 100644 --- a/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operations/metricNamespaces.ts +++ b/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operations/metricNamespaces.ts @@ -6,15 +6,15 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { MetricNamespaces } from "../operationsInterfaces"; +import { MetricNamespaces } from "../operationsInterfaces/index.js"; import * as coreClient from "@azure/core-client"; -import * as Mappers from "../models/mappers"; -import * as Parameters from "../models/parameters"; -import { MonitorManagementClientContext } from "../monitorManagementClientContext"; +import * as Mappers from "../models/mappers.js"; +import * as Parameters from "../models/parameters.js"; +import { MonitorManagementClientContext } from "../monitorManagementClientContext.js"; import { MetricNamespacesListOptionalParams, MetricNamespacesListResponse -} from "../models"; +} from "../models/index.js"; /** Class containing MetricNamespaces operations. */ export class MetricNamespacesImpl implements MetricNamespaces { diff --git a/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operationsInterfaces/index.ts b/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operationsInterfaces/index.ts index 6e4827b6a51c..dcee7a20b859 100644 --- a/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operationsInterfaces/index.ts +++ b/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operationsInterfaces/index.ts @@ -6,4 +6,4 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -export * from "./metricNamespaces"; +export * from "./metricNamespaces.js"; diff --git a/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operationsInterfaces/metricNamespaces.ts b/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operationsInterfaces/metricNamespaces.ts index 26e1f99b366b..42ce1ebea606 100644 --- a/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operationsInterfaces/metricNamespaces.ts +++ b/sdk/monitor/monitor-query/src/generated/metricsnamespaces/src/operationsInterfaces/metricNamespaces.ts @@ -9,7 +9,7 @@ import { MetricNamespacesListOptionalParams, MetricNamespacesListResponse -} from "../models"; +} from "../models/index.js"; /** Interface representing a MetricNamespaces. */ export interface MetricNamespaces { diff --git a/sdk/monitor/monitor-query/src/index.ts b/sdk/monitor/monitor-query/src/index.ts index a6812b31bb78..f121e890f37d 100644 --- a/sdk/monitor/monitor-query/src/index.ts +++ b/sdk/monitor/monitor-query/src/index.ts @@ -4,7 +4,7 @@ // // Curated exports // -export { LogsQueryClientOptions, LogsQueryClient } from "./logsQueryClient"; +export { LogsQueryClientOptions, LogsQueryClient } from "./logsQueryClient.js"; export { QueryBatch, LogsQueryBatchOptions, @@ -18,11 +18,11 @@ export { LogsColumn, LogsQueryResultStatus, LogsErrorInfo, -} from "./models/publicLogsModels"; +} from "./models/publicLogsModels.js"; export { MetricsQueryClient, MetricsQueryClientOptions as MetricsClientOptions, -} from "./metricsQueryClient"; +} from "./metricsQueryClient.js"; export { ListMetricDefinitionsOptions, ListMetricNamespacesOptions, @@ -34,10 +34,10 @@ export { TimeSeriesElement, MetricNamespace, MetricAvailability, -} from "./models/publicMetricsModels"; +} from "./models/publicMetricsModels.js"; -export { Durations } from "./models/constants"; -export { QueryTimeInterval } from "./models/timeInterval"; +export { Durations } from "./models/constants.js"; +export { QueryTimeInterval } from "./models/timeInterval.js"; // // LogsClient: generated exports // @@ -46,7 +46,7 @@ export { // TODO: these are the generated model names. We probably want to run them // through a manual review to make them consistent with style. LogsColumnType, -} from "./generated/logquery/src"; +} from "./generated/logquery/src/index.js"; // // MetricsClient: generated exports (from all three clients) @@ -57,15 +57,15 @@ export { MetricValue, ResultType, MetricUnit, -} from "./generated/metrics/src"; +} from "./generated/metrics/src/index.js"; -export { AggregationType, MetricClass } from "./generated/metricsdefinitions/src"; -export { NamespaceClassification } from "./generated/metricsnamespaces/src"; +export { AggregationType, MetricClass } from "./generated/metricsdefinitions/src/index.js"; +export { NamespaceClassification } from "./generated/metricsnamespaces/src/index.js"; -export { MetricsQueryResourcesOptions } from "./models/publicBatchModels"; -export { MetricsClient } from "./metricsClient"; +export { MetricsQueryResourcesOptions } from "./models/publicBatchModels.js"; +export { MetricsClient } from "./metricsClient.js"; export { KnownMonitorAudience, KnownMonitorLogsQueryAudience, KnownMonitorMetricsQueryAudience, -} from "./constants"; +} from "./constants.js"; diff --git a/sdk/monitor/monitor-query/src/internal/logQueryOptionUtils.ts b/sdk/monitor/monitor-query/src/internal/logQueryOptionUtils.ts index 0aef6c4b49bd..a55fd2f1bbdb 100644 --- a/sdk/monitor/monitor-query/src/internal/logQueryOptionUtils.ts +++ b/sdk/monitor/monitor-query/src/internal/logQueryOptionUtils.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { LogsQueryClientOptions } from "../logsQueryClient"; +import type { LogsQueryClientOptions } from "../logsQueryClient.js"; export function getLogQueryEndpoint(options: LogsQueryClientOptions): string { if (!options.endpoint) { diff --git a/sdk/monitor/monitor-query/src/internal/modelConverters.ts b/sdk/monitor/monitor-query/src/internal/modelConverters.ts index 15c1507fc411..9422b7cca9e8 100644 --- a/sdk/monitor/monitor-query/src/internal/modelConverters.ts +++ b/sdk/monitor/monitor-query/src/internal/modelConverters.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { BatchQueryRequest as GeneratedBatchQueryRequest, BatchQueryResponse as GeneratedBatchQueryResponse, BatchQueryResults as GeneratedBatchQueryResults, @@ -10,57 +10,56 @@ import { QueryBatchResponse as GeneratedQueryBatchResponse, Table as GeneratedTable, QueryBody, -} from "../generated/logquery/src"; +} from "../generated/logquery/src/index.js"; -import { +import type { Metric as GeneratedMetric, MetricsListOptionalParams as GeneratedMetricsListOptionalParams, MetricsListResponse as GeneratedMetricsListResponse, TimeSeriesElement as GeneratedTimeSeriesElement, -} from "../generated/metrics/src"; +} from "../generated/metrics/src/index.js"; -import { +import type { MetricDefinition as GeneratedMetricDefinition, MetricDefinitionsListOptionalParams as GeneratedMetricDefinitionsListOptionalParams, -} from "../generated/metricsdefinitions/src"; +} from "../generated/metricsdefinitions/src/index.js"; -import { MetricNamespace as GeneratedMetricNamespace } from "../generated/metricsnamespaces/src"; -import { formatPreferHeader } from "./util"; +import type { MetricNamespace as GeneratedMetricNamespace } from "../generated/metricsnamespaces/src/index.js"; +import { formatPreferHeader } from "./util.js"; -import { +import type { ListMetricDefinitionsOptions, LogsQueryBatchResult, LogsTable, MetricsQueryOptions, MetricsQueryResult, QueryBatch, -} from "../../src"; -import { +} from "../../src/index.js"; +import type { Metric, MetricAvailability, MetricDefinition, MetricNamespace, TimeSeriesElement, - createMetricsQueryResult, - getMetricByName, -} from "../models/publicMetricsModels"; -import { FullOperationResponse } from "@azure/core-client"; +} from "../models/publicMetricsModels.js"; +import { createMetricsQueryResult, getMetricByName } from "../models/publicMetricsModels.js"; +import type { FullOperationResponse } from "@azure/core-client"; import { convertIntervalToTimeIntervalObject, convertTimespanToInterval, -} from "../timespanConversion"; -import { +} from "../timespanConversion.js"; +import type { LogsErrorInfo, LogsQueryError, LogsQueryPartialResult, - LogsQueryResultStatus, LogsQuerySuccessfulResult, -} from "../models/publicLogsModels"; -import { +} from "../models/publicLogsModels.js"; +import { LogsQueryResultStatus } from "../models/publicLogsModels.js"; +import type { MetricsBatchBatchResponse as GeneratedMetricsBatchResponse, MetricsBatchBatchOptionalParams as GeneratedMetricsBatchOptionalParams, -} from "../generated/metricBatch/src"; -import { MetricsQueryResourcesOptions } from "../models/publicBatchModels"; +} from "../generated/metricBatch/src/index.js"; +import type { MetricsQueryResourcesOptions } from "../models/publicBatchModels.js"; /** * @internal diff --git a/sdk/monitor/monitor-query/src/internal/util.ts b/sdk/monitor/monitor-query/src/internal/util.ts index 7ed2ea87b812..7631a0144cea 100644 --- a/sdk/monitor/monitor-query/src/internal/util.ts +++ b/sdk/monitor/monitor-query/src/internal/util.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { LogsQueryOptions } from "../models/publicLogsModels"; +import type { LogsQueryOptions } from "../models/publicLogsModels.js"; /** * @internal diff --git a/sdk/monitor/monitor-query/src/logsQueryClient.ts b/sdk/monitor/monitor-query/src/logsQueryClient.ts index e7fced12cb02..8c1acf30a06f 100644 --- a/sdk/monitor/monitor-query/src/logsQueryClient.ts +++ b/sdk/monitor/monitor-query/src/logsQueryClient.ts @@ -1,33 +1,37 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureLogAnalytics } from "./generated/logquery/src/azureLogAnalytics"; -import { TokenCredential } from "@azure/core-auth"; +import { AzureLogAnalytics } from "./generated/logquery/src/azureLogAnalytics.js"; +import type { TokenCredential } from "@azure/core-auth"; -import { +import type { LogsQueryBatchOptions, LogsQueryBatchResult, LogsQueryOptions, LogsQueryPartialResult, LogsQueryResult, - LogsQueryResultStatus, LogsQuerySuccessfulResult, QueryBatch, -} from "./models/publicLogsModels"; +} from "./models/publicLogsModels.js"; +import { LogsQueryResultStatus } from "./models/publicLogsModels.js"; import { convertGeneratedTable, convertRequestForQueryBatch, convertResponseForQueryBatch, mapError, -} from "./internal/modelConverters"; -import { formatPreferHeader } from "./internal/util"; -import { CommonClientOptions, FullOperationResponse, OperationOptions } from "@azure/core-client"; -import { QueryTimeInterval } from "./models/timeInterval"; -import { convertTimespanToInterval } from "./timespanConversion"; -import { KnownMonitorLogsQueryAudience, SDK_VERSION } from "./constants"; -import { tracingClient } from "./tracing"; -import { getLogQueryEndpoint } from "./internal/logQueryOptionUtils"; +} from "./internal/modelConverters.js"; +import { formatPreferHeader } from "./internal/util.js"; +import type { + CommonClientOptions, + FullOperationResponse, + OperationOptions, +} from "@azure/core-client"; +import type { QueryTimeInterval } from "./models/timeInterval.js"; +import { convertTimespanToInterval } from "./timespanConversion.js"; +import { KnownMonitorLogsQueryAudience, SDK_VERSION } from "./constants.js"; +import { tracingClient } from "./tracing.js"; +import { getLogQueryEndpoint } from "./internal/logQueryOptionUtils.js"; /** * Options for the LogsQueryClient. diff --git a/sdk/monitor/monitor-query/src/metricsClient.ts b/sdk/monitor/monitor-query/src/metricsClient.ts index f537ee1fadf8..37fdb4e8af5b 100644 --- a/sdk/monitor/monitor-query/src/metricsClient.ts +++ b/sdk/monitor/monitor-query/src/metricsClient.ts @@ -1,19 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; -import { tracingClient } from "./tracing"; + +import type { TokenCredential } from "@azure/core-auth"; +import { tracingClient } from "./tracing.js"; import { AzureMonitorMetricBatch as GeneratedMonitorMetricClient, KnownApiVersion20240201 as MonitorMetricBatchApiVersion, -} from "./generated/metricBatch/src"; +} from "./generated/metricBatch/src/index.js"; import { convertResponseForMetricBatch, convertRequestForMetricsBatchQuery, -} from "./internal/modelConverters"; -import { SDK_VERSION, KnownMonitorAudience } from "./constants"; -import { MetricsQueryResourcesOptions } from "./models/publicBatchModels"; -import { MetricsQueryResult } from "./models/publicMetricsModels"; -import { MetricsQueryClientOptions } from "./metricsQueryClient"; +} from "./internal/modelConverters.js"; +import { SDK_VERSION, KnownMonitorAudience } from "./constants.js"; +import type { MetricsQueryResourcesOptions } from "./models/publicBatchModels.js"; +import type { MetricsQueryResult } from "./models/publicMetricsModels.js"; +import type { MetricsQueryClientOptions } from "./metricsQueryClient.js"; export const getSubscriptionFromResourceId = function (resourceId: string): string { const startPos: number = resourceId.indexOf("subscriptions/") + 14; diff --git a/sdk/monitor/monitor-query/src/metricsQueryClient.ts b/sdk/monitor/monitor-query/src/metricsQueryClient.ts index 7f1f31f7075d..1271b57f5357 100644 --- a/sdk/monitor/monitor-query/src/metricsQueryClient.ts +++ b/sdk/monitor/monitor-query/src/metricsQueryClient.ts @@ -1,40 +1,40 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { CommonClientOptions } from "@azure/core-client"; -import { tracingClient } from "./tracing"; +import type { TokenCredential } from "@azure/core-auth"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { CommonClientOptions } from "@azure/core-client"; +import { tracingClient } from "./tracing.js"; -import { +import type { ListMetricDefinitionsOptions, ListMetricNamespacesOptions, MetricDefinition, MetricNamespace, MetricsQueryOptions, MetricsQueryResult, -} from "./models/publicMetricsModels"; +} from "./models/publicMetricsModels.js"; import { MonitorManagementClient as GeneratedMetricsClient, KnownApiVersion20240201 as MetricsApiVersion, -} from "./generated/metrics/src"; +} from "./generated/metrics/src/index.js"; import { MonitorManagementClient as GeneratedMetricsDefinitionsClient, KnownApiVersion20240201 as MetricDefinitionsApiVersion, -} from "./generated/metricsdefinitions/src"; +} from "./generated/metricsdefinitions/src/index.js"; +import type { MetricNamespacesListOptionalParams } from "./generated/metricsnamespaces/src/index.js"; import { MonitorManagementClient as GeneratedMetricsNamespacesClient, KnownApiVersion20240201 as MetricNamespacesApiVersion, - MetricNamespacesListOptionalParams, -} from "./generated/metricsnamespaces/src"; +} from "./generated/metricsnamespaces/src/index.js"; import { convertRequestForMetrics, convertRequestOptionsForMetricsDefinitions, convertResponseForMetricNamespaces, convertResponseForMetrics, convertResponseForMetricsDefinitions, -} from "./internal/modelConverters"; -import { SDK_VERSION, KnownMonitorMetricsQueryAudience } from "./constants"; +} from "./internal/modelConverters.js"; +import { SDK_VERSION, KnownMonitorMetricsQueryAudience } from "./constants.js"; /** * Options for the MetricsQueryClient. diff --git a/sdk/monitor/monitor-query/src/models/publicBatchModels.ts b/sdk/monitor/monitor-query/src/models/publicBatchModels.ts index 5fb6866c3b18..64c3f0997a4c 100644 --- a/sdk/monitor/monitor-query/src/models/publicBatchModels.ts +++ b/sdk/monitor/monitor-query/src/models/publicBatchModels.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import * as coreClient from "@azure/core-client"; +import type * as coreClient from "@azure/core-client"; /** Optional parameters. */ export interface MetricsQueryResourcesOptions extends coreClient.OperationOptions { diff --git a/sdk/monitor/monitor-query/src/models/publicLogsModels.ts b/sdk/monitor/monitor-query/src/models/publicLogsModels.ts index 8df4d20f42f8..24ecbf72d555 100644 --- a/sdk/monitor/monitor-query/src/models/publicLogsModels.ts +++ b/sdk/monitor/monitor-query/src/models/publicLogsModels.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { LogsColumnType } from "../generated/logquery/src"; -import { QueryTimeInterval } from "./timeInterval"; +import type { OperationOptions } from "@azure/core-client"; +import type { LogsColumnType } from "../generated/logquery/src/index.js"; +import type { QueryTimeInterval } from "./timeInterval.js"; // https://dev.loganalytics.io/documentation/Using-the-API/RequestOptions // https://dev.loganalytics.io/documentation/Using-the-API/Timeouts diff --git a/sdk/monitor/monitor-query/src/models/publicMetricsModels.ts b/sdk/monitor/monitor-query/src/models/publicMetricsModels.ts index 07dcacd8672a..957e8d6d9edc 100644 --- a/sdk/monitor/monitor-query/src/models/publicMetricsModels.ts +++ b/sdk/monitor/monitor-query/src/models/publicMetricsModels.ts @@ -1,16 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { +import type { OperationOptions } from "@azure/core-client"; +import type { AggregationType, MetricClass, MetricUnit, MetricValue, NamespaceClassification, ResultType, -} from ".."; -import { QueryTimeInterval } from "./timeInterval"; +} from "../index.js"; +import type { QueryTimeInterval } from "./timeInterval.js"; /** * Options used when querying metrics. diff --git a/sdk/monitor/monitor-query/src/timespanConversion.ts b/sdk/monitor/monitor-query/src/timespanConversion.ts index 30cc864656dc..c8c8d5d1a71b 100644 --- a/sdk/monitor/monitor-query/src/timespanConversion.ts +++ b/sdk/monitor/monitor-query/src/timespanConversion.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { QueryTimeInterval } from "./models/timeInterval"; +import type { QueryTimeInterval } from "./models/timeInterval.js"; import { isObjectWithProperties } from "@azure/core-util"; export function convertTimespanToInterval(timespan: QueryTimeInterval): string { diff --git a/sdk/monitor/monitor-query/src/tracing.ts b/sdk/monitor/monitor-query/src/tracing.ts index 4316227f2aa3..f3589bdf94c1 100644 --- a/sdk/monitor/monitor-query/src/tracing.ts +++ b/sdk/monitor/monitor-query/src/tracing.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { createTracingClient } from "@azure/core-tracing"; -import { SDK_VERSION } from "./constants"; +import { SDK_VERSION } from "./constants.js"; /** * Global tracing client used by this package. diff --git a/sdk/monitor/monitor-query/test/internal/unit/logQueryOptionUtils.spec.ts b/sdk/monitor/monitor-query/test/internal/unit/logQueryOptionUtils.spec.ts index 2a20c3421002..d8b906198abe 100644 --- a/sdk/monitor/monitor-query/test/internal/unit/logQueryOptionUtils.spec.ts +++ b/sdk/monitor/monitor-query/test/internal/unit/logQueryOptionUtils.spec.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { assert } from "@azure-tools/test-utils"; -import { getLogQueryEndpoint } from "../../../src/internal/logQueryOptionUtils"; +import { getLogQueryEndpoint } from "../../../src/internal/logQueryOptionUtils.js"; +import { describe, it, assert } from "vitest"; describe("logQueryOptionsUtils", () => { describe("getLogQueryEndpoint", () => { diff --git a/sdk/monitor/monitor-query/test/internal/unit/logsQueryClient.unittest.spec.ts b/sdk/monitor/monitor-query/test/internal/unit/logsQueryClient.unittest.spec.ts index 7e48d9a2fa1d..ff6d1c05f3f3 100644 --- a/sdk/monitor/monitor-query/test/internal/unit/logsQueryClient.unittest.spec.ts +++ b/sdk/monitor/monitor-query/test/internal/unit/logsQueryClient.unittest.spec.ts @@ -1,9 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Durations, LogsQueryClient } from "../../../src"; -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import { assert } from "@azure-tools/test-utils"; +import { Durations, LogsQueryClient } from "../../../src/index.js"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import { describe, it, assert, expect } from "vitest"; +import type { OperationOptions } from "@azure/core-client"; +import { toSupportTracing } from "@azure-tools/test-utils-vitest"; + +expect.extend({ toSupportTracing }); describe("LogsQueryClient unit tests", () => { /** @@ -49,30 +53,22 @@ describe("LogsQueryClient unit tests", () => { const client = new LogsQueryClient(tokenCredential, { endpoint: "https://customEndpoint1", }); - await assert.supportsTracing( - async (options) => { - const promises: Promise[] = [ - client.queryWorkspace( - "workspaceId", - "query", - { duration: Durations.fiveMinutes }, - options, - ), - client.queryBatch( - [ - { - workspaceId: "monitorWorkspaceId", - query: "AppEvents | project TimeGenerated, Name, AppRoleInstance | limit 1", - timespan: { duration: "P1D" }, - }, - ], - options, - ), - ]; - // We don't care about errors, only that we created (and closed) the appropriate spans. - await Promise.all(promises.map((p) => p.catch(() => undefined))); - }, - ["LogsQueryClient.queryWorkspace", "LogsQueryClient.queryBatch"], - ); + await expect(async (options: OperationOptions) => { + const promises: Promise[] = [ + client.queryWorkspace("workspaceId", "query", { duration: Durations.fiveMinutes }, options), + client.queryBatch( + [ + { + workspaceId: "monitorWorkspaceId", + query: "AppEvents | project TimeGenerated, Name, AppRoleInstance | limit 1", + timespan: { duration: "P1D" }, + }, + ], + options, + ), + ]; + // We don't care about errors, only that we created (and closed) the appropriate spans. + await Promise.all(promises.map((p) => p.catch(() => undefined))); + }).toSupportTracing(["LogsQueryClient.queryWorkspace", "LogsQueryClient.queryBatch"]); }); }); diff --git a/sdk/monitor/monitor-query/test/internal/unit/metricsQueryClient.unittest.spec.ts b/sdk/monitor/monitor-query/test/internal/unit/metricsQueryClient.unittest.spec.ts index 367e15c1c4b9..2e8a8ac624b0 100644 --- a/sdk/monitor/monitor-query/test/internal/unit/metricsQueryClient.unittest.spec.ts +++ b/sdk/monitor/monitor-query/test/internal/unit/metricsQueryClient.unittest.spec.ts @@ -1,32 +1,36 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import { assert } from "@azure-tools/test-utils"; -import { Durations, MetricsQueryClient } from "../../../src"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import { Durations, MetricsQueryClient } from "../../../src/index.js"; +import { describe, it, expect } from "vitest"; +import type { OperationOptions } from "@azure/core-client"; +import { toSupportTracing } from "@azure-tools/test-utils-vitest"; -it("verify tracing", async () => { - const scopesPassed: string[] = []; +expect.extend({ toSupportTracing }); - const tokenCredential: TokenCredential = { - async getToken( - scopes: string | string[], - _options?: GetTokenOptions, - ): Promise { - if (Array.isArray(scopes)) { - scopesPassed.push(...scopes); - } else { - scopesPassed.push(scopes); - } +describe("MetricsQueryClient unit tests", () => { + it("verify tracing", async () => { + const scopesPassed: string[] = []; - throw new Error("Shortcircuit auth exception"); - }, - }; - const client = new MetricsQueryClient(tokenCredential, { - endpoint: "https://customEndpoint1", - }); - await assert.supportsTracing( - async (options) => { + const tokenCredential: TokenCredential = { + async getToken( + scopes: string | string[], + _options?: GetTokenOptions, + ): Promise { + if (Array.isArray(scopes)) { + scopesPassed.push(...scopes); + } else { + scopesPassed.push(scopes); + } + + throw new Error("Shortcircuit auth exception"); + }, + }; + const client = new MetricsQueryClient(tokenCredential, { + endpoint: "https://customEndpoint1", + }); + await expect(async (options: OperationOptions) => { const promises: Promise[] = [ client.queryResource("resourceId", ["metricName1", "metricName2"], { granularity: "PT1M", @@ -38,11 +42,10 @@ it("verify tracing", async () => { ]; // We don't care about errors, only that we created (and closed) the appropriate spans. await Promise.all(promises.map((p) => p.catch(() => undefined))); - }, - [ + }).toSupportTracing([ "MetricsQueryClient.queryResource", "MetricsQueryClient.listSegmentOfMetricNamespaces", "MetricsQueryClient.listSegmentOfMetricDefinitions", - ], - ); + ]); + }); }); diff --git a/sdk/monitor/monitor-query/test/internal/unit/modelConverters.unittest.spec.ts b/sdk/monitor/monitor-query/test/internal/unit/modelConverters.unittest.spec.ts index d0e78dacd089..ffb22e152d4e 100644 --- a/sdk/monitor/monitor-query/test/internal/unit/modelConverters.unittest.spec.ts +++ b/sdk/monitor/monitor-query/test/internal/unit/modelConverters.unittest.spec.ts @@ -1,40 +1,40 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { assert } from "chai"; -import { +import type { BatchQueryRequest, BatchRequest as GeneratedBatchRequest, -} from "../../../src/generated/logquery/src"; -import { +} from "../../../src/generated/logquery/src/index.js"; +import type { MetricsListOptionalParams as GeneratedMetricsListOptionalParams, MetricsListResponse as GeneratedMetricsListResponse, -} from "../../../src/generated/metrics/src"; -import { MetricDefinitionsListOptionalParams as GeneratedMetricDefinitionsListOptionalParams } from "../../../src/generated/metricsdefinitions/src"; +} from "../../../src/generated/metrics/src/index.js"; +import type { MetricDefinitionsListOptionalParams as GeneratedMetricDefinitionsListOptionalParams } from "../../../src/generated/metricsdefinitions/src/index.js"; import { convertRequestForMetrics, convertRequestForQueryBatch, convertRequestOptionsForMetricsDefinitions, convertResponseForMetrics, convertResponseForMetricsDefinitions, -} from "../../../src/internal/modelConverters"; -import { +} from "../../../src/internal/modelConverters.js"; +import type { OperationRequestOptions, RawResponseCallback, SerializerOptions, } from "@azure/core-client"; -import { OperationTracingOptions } from "@azure/core-tracing"; -import { - Durations, +import type { OperationTracingOptions } from "@azure/core-tracing"; +import type { ListMetricDefinitionsOptions, MetricsQueryOptions, MetricsQueryResult, -} from "../../../src"; -import { AbortSignalLike } from "@azure/abort-controller"; +} from "../../../src/index.js"; +import { Durations } from "../../../src/index.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { convertIntervalToTimeIntervalObject, convertTimespanToInterval, -} from "../../../src/timespanConversion"; +} from "../../../src/timespanConversion.js"; +import { describe, it, assert } from "vitest"; describe("Model unit tests", () => { describe("LogsClient", () => { diff --git a/sdk/monitor/monitor-query/test/internal/unit/utils.unittest.spec.ts b/sdk/monitor/monitor-query/test/internal/unit/utils.unittest.spec.ts index 6f66e34d4f82..9b1578713b9f 100644 --- a/sdk/monitor/monitor-query/test/internal/unit/utils.unittest.spec.ts +++ b/sdk/monitor/monitor-query/test/internal/unit/utils.unittest.spec.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { assert } from "chai"; -import { formatPreferHeader } from "../../../src/internal/util"; +import { formatPreferHeader } from "../../../src/internal/util.js"; +import { describe, it, assert } from "vitest"; describe("Utils unit tests", () => { type PreferHeadersArg = Parameters[0]; diff --git a/sdk/monitor/monitor-query/test/public/logsQueryClient.spec.ts b/sdk/monitor/monitor-query/test/public/logsQueryClient.spec.ts index 17cfab2e4a46..255c2ae1ea1e 100644 --- a/sdk/monitor/monitor-query/test/public/logsQueryClient.spec.ts +++ b/sdk/monitor/monitor-query/test/public/logsQueryClient.spec.ts @@ -1,22 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { assert } from "chai"; -import { Context } from "mocha"; -import { env } from "process"; -import { - RecorderAndLogsClient, - createRecorderAndLogsClient, - getLogsArmResourceId, -} from "./shared/testShared"; +import type { RecorderAndLogsClient } from "./shared/testShared.js"; +import { createRecorderAndLogsClient, getLogsArmResourceId } from "./shared/testShared.js"; import { Recorder } from "@azure-tools/test-recorder"; -import { Durations, LogsQueryClient, LogsQueryResultStatus, QueryBatch } from "../../src"; -// import { runWithTelemetry } from "../setupOpenTelemetry"; - -import { assertQueryTable, getMonitorWorkspaceId, loggerForTest } from "./shared/testShared"; -import { ErrorInfo } from "../../src/generated/logquery/src"; -import { RestError } from "@azure/core-rest-pipeline"; +import type { LogsQueryClient, QueryBatch } from "../../src/index.js"; +import { Durations, LogsQueryResultStatus } from "../../src/index.js"; +import { assertQueryTable, getMonitorWorkspaceId, loggerForTest } from "./shared/testShared.js"; +import type { ErrorInfo } from "../../src/generated/logquery/src/index.js"; +import type { RestError } from "@azure/core-rest-pipeline"; import { setLogLevel } from "@azure/logger"; +import { describe, it, assert, beforeEach, afterEach, beforeAll } from "vitest"; describe("LogsQueryClient live tests", function () { let monitorWorkspaceId: string; @@ -26,9 +20,9 @@ describe("LogsQueryClient live tests", function () { let testRunId: string; - beforeEach(async function (this: Context) { + beforeEach(async function (ctx) { loggerForTest.verbose(`Recorder: starting...`); - recorder = new Recorder(this.currentTest); + recorder = new Recorder(ctx); const recordedClient: RecorderAndLogsClient = await createRecorderAndLogsClient(recorder); logsResourceId = getLogsArmResourceId(); monitorWorkspaceId = getMonitorWorkspaceId(); @@ -359,10 +353,10 @@ describe("LogsQueryClient live tests", function () { }); describe.skip("Ingested data tests (can be slow due to loading times)", () => { - before(async function (this: Context) { - if (env.TEST_RUN_ID) { - loggerForTest.warning(`Using cached test run ID ${env.TEST_RUN_ID}`); - testRunId = env.TEST_RUN_ID; + beforeAll(async function () { + if (globalThis?.process?.env?.TEST_RUN_ID) { + loggerForTest.warning(`Using cached test run ID ${globalThis.process.env.TEST_RUN_ID}`); + testRunId = process.env.TEST_RUN_ID!; } else { testRunId = `ingestedDataTest-${Date.now()}`; // send some events @@ -516,10 +510,10 @@ describe("LogsQueryClient live tests - server timeout", function () { let logsClient: LogsQueryClient; let recorder: Recorder; - beforeEach(async function (this: Context) { + beforeEach(async function (ctx) { setLogLevel("verbose"); loggerForTest.verbose(`Recorder: starting...`); - recorder = new Recorder(this.currentTest); + recorder = new Recorder(ctx); const recordedClient: RecorderAndLogsClient = await createRecorderAndLogsClient(recorder, { maxRetries: 0, retryDelayInMs: 0, @@ -535,7 +529,7 @@ describe("LogsQueryClient live tests - server timeout", function () { }); // disabling http retries otherwise we'll waste retries to realize that the // query has timed out on purpose. - it("serverTimeoutInSeconds", async function (this: Context) { + it("serverTimeoutInSeconds", async function () { try { const randomLimit = Math.round((Math.random() + 1) * 10000000000000); await logsClient.queryWorkspace( diff --git a/sdk/monitor/monitor-query/test/public/metricsBatchClient.spec.ts b/sdk/monitor/monitor-query/test/public/metricsBatchClient.spec.ts index ba4183dca9df..5942b665a572 100644 --- a/sdk/monitor/monitor-query/test/public/metricsBatchClient.spec.ts +++ b/sdk/monitor/monitor-query/test/public/metricsBatchClient.spec.ts @@ -1,16 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. - -import { assert } from "chai"; -import { Context } from "mocha"; -import { MetricsClient, MetricsQueryResult } from "../../src"; +import type { MetricsClient, MetricsQueryResult } from "../../src/index.js"; +import type { RecorderAndMetricsBatchQueryClient } from "./shared/testShared.js"; import { - RecorderAndMetricsBatchQueryClient, createRecorderAndMetricsBatchQueryClient, getMetricsBatchResourceIds, getMetricsBatchNamespace, getMetricsBatchNames, -} from "./shared/testShared"; +} from "./shared/testShared.js"; +import { describe, it, assert, beforeEach } from "vitest"; describe.skip("MetricsBatchClient live tests", function () { let resourceIds: string[]; @@ -18,7 +16,7 @@ describe.skip("MetricsBatchClient live tests", function () { let metricNames: string[]; let metricsBatchQueryClient: MetricsClient; - beforeEach(async function (this: Context) { + beforeEach(async function () { const recordedClient: RecorderAndMetricsBatchQueryClient = await createRecorderAndMetricsBatchQueryClient(); resourceIds = getMetricsBatchResourceIds(); @@ -27,16 +25,11 @@ describe.skip("MetricsBatchClient live tests", function () { metricsBatchQueryClient = recordedClient.client; }); - // afterEach(async function () { - // loggerForTest.verbose("Recorder: stopping"); - // await recorder.stop(); - // }); - it("batch query with no resource ids", async () => { try { await metricsBatchQueryClient.queryResources([], metricNames, metricsNamespace); assert.fail("Code should not reach here."); - } catch (e) { + } catch { assert.equal(1, 1); } }); diff --git a/sdk/monitor/monitor-query/test/public/metricsQueryClient.spec.ts b/sdk/monitor/monitor-query/test/public/metricsQueryClient.spec.ts index 38ba0feb55ec..f79e87e5d860 100644 --- a/sdk/monitor/monitor-query/test/public/metricsQueryClient.spec.ts +++ b/sdk/monitor/monitor-query/test/public/metricsQueryClient.spec.ts @@ -1,26 +1,26 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import { getYieldedValue } from "@azure-tools/test-utils-vitest"; +import type { MetricsQueryClient } from "../../src/index.js"; +import { Durations } from "../../src/index.js"; -import { assert } from "chai"; -import { Context } from "mocha"; -import { getYieldedValue } from "@azure-tools/test-utils"; -import { Durations, MetricsQueryClient } from "../../src"; - +import type { RecorderAndMetricsClient } from "./shared/testShared.js"; import { - RecorderAndMetricsClient, createRecorderAndMetricsClient, getMetricsArmResourceId, loggerForTest, -} from "./shared/testShared"; +} from "./shared/testShared.js"; import { Recorder } from "@azure-tools/test-recorder"; +import { describe, it, assert, beforeEach, afterEach } from "vitest"; + describe("MetricsClient live tests", function () { let resourceId: string; let metricsQueryClient: MetricsQueryClient; let recorder: Recorder; - beforeEach(async function (this: Context) { + beforeEach(async function (ctx) { loggerForTest.verbose(`Recorder: starting...`); - recorder = new Recorder(this.currentTest); + recorder = new Recorder(ctx); const recordedClient: RecorderAndMetricsClient = await createRecorderAndMetricsClient(recorder); resourceId = getMetricsArmResourceId(); metricsQueryClient = recordedClient.client; diff --git a/sdk/monitor/monitor-query/test/public/shared/testShared.ts b/sdk/monitor/monitor-query/test/public/shared/testShared.ts index 216221080cb7..b01bbad14f6d 100644 --- a/sdk/monitor/monitor-query/test/public/shared/testShared.ts +++ b/sdk/monitor/monitor-query/test/public/shared/testShared.ts @@ -1,17 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. + import { createTestCredential } from "@azure-tools/test-credential"; -import { - Recorder, - RecorderStartOptions, - assertEnvironmentVariable, - env, -} from "@azure-tools/test-recorder"; -import * as assert from "assert"; +import type { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable, env } from "@azure-tools/test-recorder"; +import { assert } from "vitest"; import { createClientLogger } from "@azure/logger"; -import { LogsQueryClient, LogsTable, MetricsQueryClient, MetricsClient } from "../../../src"; -import { ExponentialRetryPolicyOptions } from "@azure/core-rest-pipeline"; +import type { LogsTable } from "../../../src/index.js"; +import { LogsQueryClient, MetricsQueryClient, MetricsClient } from "../../../src/index.js"; +import type { ExponentialRetryPolicyOptions } from "@azure/core-rest-pipeline"; export const loggerForTest = createClientLogger("test"); + const replacementForLogsResourceId = env["LOGS_RESOURCE_ID"]?.startsWith("/") ? "/logs-arm-resource-id" : "logs-arm-resource-id"; diff --git a/sdk/monitor/monitor-query/tsconfig.browser.config.json b/sdk/monitor/monitor-query/tsconfig.browser.config.json new file mode 100644 index 000000000000..f772e6eb3b76 --- /dev/null +++ b/sdk/monitor/monitor-query/tsconfig.browser.config.json @@ -0,0 +1,10 @@ +{ + "extends": "./.tshy/build.json", + "include": ["./src/**/*.ts", "./src/**/*.mts", "./test/**/*.spec.ts", "./test/**/*.mts"], + "exclude": ["./test/**/node/**/*.ts"], + "compilerOptions": { + "outDir": "./dist-test/browser", + "rootDir": ".", + "skipLibCheck": true + } +} diff --git a/sdk/monitor/monitor-query/tsconfig.json b/sdk/monitor/monitor-query/tsconfig.json index 9e92f86cbdb9..f7578a235554 100644 --- a/sdk/monitor/monitor-query/tsconfig.json +++ b/sdk/monitor/monitor-query/tsconfig.json @@ -1,11 +1,12 @@ { "extends": "../../../tsconfig", "compilerOptions": { - "outDir": "./dist-esm", - "declarationDir": "./types", "paths": { "@azure/monitor-query": ["./src/index"] - } + }, + "module": "NodeNext", + "moduleResolution": "NodeNext", + "rootDir": "." }, - "include": ["src/**/*.ts", "test/**/*.ts", "samples-dev/**/*.ts"] + "include": ["src/**/*.ts", "src/**/*.mts", "src/**/*.cts", "samples-dev/**/*.ts", "test/**/*.ts"] } diff --git a/sdk/monitor/monitor-query/vitest.browser.int.config.ts b/sdk/monitor/monitor-query/vitest.browser.int.config.ts new file mode 100644 index 000000000000..daeeaf4ed98a --- /dev/null +++ b/sdk/monitor/monitor-query/vitest.browser.int.config.ts @@ -0,0 +1,17 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { defineConfig, mergeConfig } from "vitest/config"; +import viteConfig from "../../../vitest.browser.shared.config.js"; + +export default mergeConfig( + viteConfig, + defineConfig({ + test: { + include: [ + "dist-test/browser/test/internal/**/*.spec.js", + "dist-test/browser/test/public/**/*.spec.js", + ], + }, + }), +); diff --git a/sdk/monitor/monitor-query/vitest.browser.unit.config.ts b/sdk/monitor/monitor-query/vitest.browser.unit.config.ts new file mode 100644 index 000000000000..46bd647c0126 --- /dev/null +++ b/sdk/monitor/monitor-query/vitest.browser.unit.config.ts @@ -0,0 +1,14 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { defineConfig, mergeConfig } from "vitest/config"; +import viteConfig from "../../../vitest.browser.shared.config.js"; + +export default mergeConfig( + viteConfig, + defineConfig({ + test: { + include: ["dist-test/browser/test/internal/unit/*.unittest.spec.js"], + }, + }), +); diff --git a/sdk/monitor/monitor-query/vitest.config.ts b/sdk/monitor/monitor-query/vitest.config.ts new file mode 100644 index 000000000000..39267dd2f56f --- /dev/null +++ b/sdk/monitor/monitor-query/vitest.config.ts @@ -0,0 +1,15 @@ + +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { defineConfig, mergeConfig } from "vitest/config"; +import viteConfig from "../../../vitest.shared.config.ts"; + +export default mergeConfig( + viteConfig, + defineConfig({ + test: { + include: ["test/**/*.spec.ts"], + }, + }), +); diff --git a/sdk/monitor/monitor-query/vitest.int.config.ts b/sdk/monitor/monitor-query/vitest.int.config.ts new file mode 100644 index 000000000000..efd4933d9b1f --- /dev/null +++ b/sdk/monitor/monitor-query/vitest.int.config.ts @@ -0,0 +1,15 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { defineConfig, mergeConfig } from "vitest/config"; +import viteConfig from "../../../vitest.shared.config.js"; + +export default mergeConfig( + viteConfig, + defineConfig({ + test: { + include: ["test/internal/**/*.spec.ts", "test/public/**/*.spec.ts"], + exclude: ["test/snippets.spec.ts"], + }, + }), +); diff --git a/sdk/monitor/monitor-query/vitest.unit.config.ts b/sdk/monitor/monitor-query/vitest.unit.config.ts new file mode 100644 index 000000000000..4e49fcfd1d39 --- /dev/null +++ b/sdk/monitor/monitor-query/vitest.unit.config.ts @@ -0,0 +1,15 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { defineConfig, mergeConfig } from "vitest/config"; +import viteConfig from "../../../vitest.shared.config.js"; + +export default mergeConfig( + viteConfig, + defineConfig({ + test: { + include: ["test/internal/**/*.unittest.spec.ts"], + exclude: ["test/snippets.spec.ts"], + }, + }), +); diff --git a/sdk/network/arm-network-rest/review/arm-network.api.md b/sdk/network/arm-network-rest/review/arm-network.api.md index 0946431fdc0d..5e9ac0801100 100644 --- a/sdk/network/arm-network-rest/review/arm-network.api.md +++ b/sdk/network/arm-network-rest/review/arm-network.api.md @@ -4,19 +4,19 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { LroEngineOptions } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { LroEngineOptions } from '@azure/core-lro'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { PollerLike } from '@azure/core-lro'; +import type { PollOperationState } from '@azure/core-lro'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AadAuthenticationParameters { diff --git a/sdk/network/arm-network-rest/src/clientDefinitions.ts b/sdk/network/arm-network-rest/src/clientDefinitions.ts index ffe7c30e792f..3a5bead5027c 100644 --- a/sdk/network/arm-network-rest/src/clientDefinitions.ts +++ b/sdk/network/arm-network-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AdminRuleCollectionsCreateOrUpdateParameters, AdminRuleCollectionsDeleteParameters, AdminRuleCollectionsGetParameters, @@ -616,7 +616,7 @@ import { WebCategoriesGetParameters, WebCategoriesListBySubscriptionParameters, } from "./parameters"; -import { +import type { AdminRuleCollectionsCreateOrUpdate200Response, AdminRuleCollectionsCreateOrUpdate201Response, AdminRuleCollectionsCreateOrUpdateDefaultResponse, @@ -2183,7 +2183,7 @@ import { WebCategoriesListBySubscription200Response, WebCategoriesListBySubscriptionDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface ApplicationGatewaysDelete { /** Deletes the specified application gateway. */ diff --git a/sdk/network/arm-network-rest/src/isUnexpected.ts b/sdk/network/arm-network-rest/src/isUnexpected.ts index f5fc60466800..474142b3baa1 100644 --- a/sdk/network/arm-network-rest/src/isUnexpected.ts +++ b/sdk/network/arm-network-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AdminRuleCollectionsCreateOrUpdate200Response, AdminRuleCollectionsCreateOrUpdate201Response, AdminRuleCollectionsCreateOrUpdateDefaultResponse, diff --git a/sdk/network/arm-network-rest/src/networkManagementClient.ts b/sdk/network/arm-network-rest/src/networkManagementClient.ts index 76548a989fb6..9c35dcb81e33 100644 --- a/sdk/network/arm-network-rest/src/networkManagementClient.ts +++ b/sdk/network/arm-network-rest/src/networkManagementClient.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientOptions, getClient } from "@azure-rest/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { NetworkManagementClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { NetworkManagementClient } from "./clientDefinitions"; /** * Initialize a new instance of the class NetworkManagementClient class. diff --git a/sdk/network/arm-network-rest/src/paginateHelper.ts b/sdk/network/arm-network-rest/src/paginateHelper.ts index e03661e44e7a..5d541b4e406d 100644 --- a/sdk/network/arm-network-rest/src/paginateHelper.ts +++ b/sdk/network/arm-network-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PagedAsyncIterableIterator, PagedResult, getPagedAsyncIterator } from "@azure/core-paging"; -import { Client, PathUncheckedResponse, createRestError } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/network/arm-network-rest/src/parameters.ts b/sdk/network/arm-network-rest/src/parameters.ts index 468daa144164..8c7dcd7f62ce 100644 --- a/sdk/network/arm-network-rest/src/parameters.ts +++ b/sdk/network/arm-network-rest/src/parameters.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { ActiveConfigurationParameter, AdminRuleCollection, ApplicationGateway, diff --git a/sdk/network/arm-network-rest/src/pollingHelper.ts b/sdk/network/arm-network-rest/src/pollingHelper.ts index a8903590694f..d25daede0b1c 100644 --- a/sdk/network/arm-network-rest/src/pollingHelper.ts +++ b/sdk/network/arm-network-rest/src/pollingHelper.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { LongRunningOperation, - LroEngine, LroEngineOptions, LroResponse, PollOperationState, PollerLike, } from "@azure/core-lro"; +import { LroEngine } from "@azure/core-lro"; /** * Helper function that builds a Poller object to help polling a long running operation. diff --git a/sdk/network/arm-network-rest/src/responses.ts b/sdk/network/arm-network-rest/src/responses.ts index fe1f4fde8a4f..17b640e9eec7 100644 --- a/sdk/network/arm-network-rest/src/responses.ts +++ b/sdk/network/arm-network-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse } from "@azure-rest/core-client"; +import type { ActiveConnectivityConfigurationsListResultOutput, ActiveSecurityAdminRulesListResultOutput, AdminRuleCollectionListResultOutput, diff --git a/sdk/network/arm-network-rest/test/public/network_rest_sample.spec.ts b/sdk/network/arm-network-rest/test/public/network_rest_sample.spec.ts index 3a091b0c50c5..5e9796007205 100644 --- a/sdk/network/arm-network-rest/test/public/network_rest_sample.spec.ts +++ b/sdk/network/arm-network-rest/test/public/network_rest_sample.spec.ts @@ -9,11 +9,12 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { Recorder, RecorderStartOptions, env, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; import { createTestCredential } from "@azure-tools/test-credential"; import { assert } from "chai"; -import { Context } from "mocha"; -import { +import type { Context } from "mocha"; +import type { IpGroupsCreateOrUpdateParameters, IpGroupsDeleteParameters, IpGroupsGetParameters, @@ -28,10 +29,8 @@ import { VirtualNetworksGetParameters, VirtualNetworksListParameters, VirtualNetworksUpdateTagsParameters, - getLongRunningPoller, - isUnexpected, - paginate, } from "../../src"; +import { getLongRunningPoller, isUnexpected, paginate } from "../../src"; import { createTestNetworkManagementClient } from "./utils/recordedClient"; const replaceableVariables: Record = { diff --git a/sdk/network/arm-network-rest/test/public/sampleTest.spec.ts b/sdk/network/arm-network-rest/test/public/sampleTest.spec.ts index 78de635beb5d..707dd944309e 100644 --- a/sdk/network/arm-network-rest/test/public/sampleTest.spec.ts +++ b/sdk/network/arm-network-rest/test/public/sampleTest.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("My test", () => { let recorder: Recorder; diff --git a/sdk/network/arm-network-rest/test/public/utils/recordedClient.ts b/sdk/network/arm-network-rest/test/public/utils/recordedClient.ts index fad387a6c4bd..f921b7d4b609 100644 --- a/sdk/network/arm-network-rest/test/public/utils/recordedClient.ts +++ b/sdk/network/arm-network-rest/test/public/utils/recordedClient.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; -import { NetworkManagementClient } from "../../../src/clientDefinitions"; -import { TokenCredential } from "@azure/core-auth"; -import { ClientOptions } from "@azure-rest/core-client"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder } from "@azure-tools/test-recorder"; +import type { NetworkManagementClient } from "../../../src/clientDefinitions"; +import type { TokenCredential } from "@azure/core-auth"; +import type { ClientOptions } from "@azure-rest/core-client"; import createNetworkManagementClient from "../../../src"; const envSetupForPlayback: Record = { diff --git a/sdk/notificationhubs/notification-hubs/review/notification-hubs-api.api.md b/sdk/notificationhubs/notification-hubs/review/notification-hubs-api.api.md index 18483583bc59..5941c07da64a 100644 --- a/sdk/notificationhubs/notification-hubs/review/notification-hubs-api.api.md +++ b/sdk/notificationhubs/notification-hubs/review/notification-hubs-api.api.md @@ -4,14 +4,14 @@ ```ts -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpHeaders } from '@azure/core-rest-pipeline'; -import { OperationOptions } from '@azure-rest/core-client'; -import { OperationState } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PipelineRequest } from '@azure/core-rest-pipeline'; -import { PipelineResponse } from '@azure/core-rest-pipeline'; -import { PollerLike } from '@azure/core-lro'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpHeaders } from '@azure/core-rest-pipeline'; +import type { OperationOptions } from '@azure-rest/core-client'; +import type { OperationState } from '@azure/core-lro'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PipelineRequest } from '@azure/core-rest-pipeline'; +import type { PipelineResponse } from '@azure/core-rest-pipeline'; +import type { PollerLike } from '@azure/core-lro'; // @public export function beginSubmitNotificationHubJob(context: NotificationHubsClientContext, notificationHubJob: NotificationHubJob, polledOperationOptions?: PolledOperationOptions): Promise; diff --git a/sdk/notificationhubs/notification-hubs/review/notification-hubs-models.api.md b/sdk/notificationhubs/notification-hubs/review/notification-hubs-models.api.md index bef7ec84d07f..51871694b806 100644 --- a/sdk/notificationhubs/notification-hubs/review/notification-hubs-models.api.md +++ b/sdk/notificationhubs/notification-hubs/review/notification-hubs-models.api.md @@ -4,10 +4,10 @@ ```ts -import { ClientOptions } from '@azure-rest/core-client'; -import { OperationOptions } from '@azure-rest/core-client'; -import { OperationState } from '@azure/core-lro'; -import { PollerLike } from '@azure/core-lro'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { OperationOptions } from '@azure-rest/core-client'; +import type { OperationState } from '@azure/core-lro'; +import type { PollerLike } from '@azure/core-lro'; // @public export interface AdmInstallation extends DeviceTokenInstallation { diff --git a/sdk/notificationhubs/notification-hubs/review/notification-hubs.api.md b/sdk/notificationhubs/notification-hubs/review/notification-hubs.api.md index d3ae971f8b5d..efb59fe3bbfe 100644 --- a/sdk/notificationhubs/notification-hubs/review/notification-hubs.api.md +++ b/sdk/notificationhubs/notification-hubs/review/notification-hubs.api.md @@ -4,11 +4,11 @@ ```ts -import { ClientOptions } from '@azure-rest/core-client'; -import { OperationOptions } from '@azure-rest/core-client'; -import { OperationState } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PollerLike } from '@azure/core-lro'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { OperationOptions } from '@azure-rest/core-client'; +import type { OperationState } from '@azure/core-lro'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PollerLike } from '@azure/core-lro'; // @public export interface AdmInstallation extends DeviceTokenInstallation { diff --git a/sdk/notificationhubs/notification-hubs/src/api/beginSubmitNotificationHubJob.ts b/sdk/notificationhubs/notification-hubs/src/api/beginSubmitNotificationHubJob.ts index dcf131f942ae..3b87fb19cae2 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/beginSubmitNotificationHubJob.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/beginSubmitNotificationHubJob.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { CancelOnProgress, OperationState, PollerLike } from "@azure/core-lro"; -import { NotificationHubJob, NotificationHubJobPoller } from "../models/notificationHubJob.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { PolledOperationOptions } from "../models/options.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { CancelOnProgress, OperationState, PollerLike } from "@azure/core-lro"; +import type { NotificationHubJob, NotificationHubJobPoller } from "../models/notificationHubJob.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { PolledOperationOptions } from "../models/options.js"; import { delay } from "@azure/core-util"; import { getNotificationHubJob } from "./getNotificationHubJob.js"; import { submitNotificationHubJob } from "./submitNotificationHubJob.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/cancelScheduledNotification.ts b/sdk/notificationhubs/notification-hubs/src/api/cancelScheduledNotification.ts index ff39dffb3965..a8662e75f169 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/cancelScheduledNotification.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/cancelScheduledNotification.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { createRequest, parseNotificationSendResponse, sendRequest } from "./internal/_client.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { NotificationHubsResponse } from "../models/notificationDetails.js"; -import { OperationOptions } from "@azure-rest/core-client"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { NotificationHubsResponse } from "../models/notificationDetails.js"; +import type { OperationOptions } from "@azure-rest/core-client"; import { tracingClient } from "../utils/tracing.js"; const OPERATION_NAME = "cancelScheduledNotification"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/clientContext.ts b/sdk/notificationhubs/notification-hubs/src/api/clientContext.ts index c7077b8533f5..7c3574c87b33 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/clientContext.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/clientContext.ts @@ -2,22 +2,21 @@ // Licensed under the MIT License. import * as constants from "../utils/constants.js"; -import { +import type { HttpClient, HttpHeaders, PipelineRequest, PipelineResponse, - RestError, - createDefaultHttpClient, - createHttpHeaders, } from "@azure/core-rest-pipeline"; +import { RestError, createDefaultHttpClient, createHttpHeaders } from "@azure/core-rest-pipeline"; import { createTokenCredentialFromConnection, parseNotificationHubsConnectionString, } from "../auth/connectionStringUtils.js"; -import { NotificationHubsClientOptions } from "../models/options.js"; -import { SasTokenCredential } from "../auth/sasTokenCredential.js"; -import { Client, getClient } from "@azure-rest/core-client"; +import type { NotificationHubsClientOptions } from "../models/options.js"; +import type { SasTokenCredential } from "../auth/sasTokenCredential.js"; +import type { Client } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; const API_VERSION = "2020-06"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/createOrUpdateInstallation.ts b/sdk/notificationhubs/notification-hubs/src/api/createOrUpdateInstallation.ts index d3217bbd1fb2..48b9dd72660e 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/createOrUpdateInstallation.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/createOrUpdateInstallation.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { createRequest, parseNotificationResponse, sendRequest } from "./internal/_client.js"; -import { Installation } from "../models/installation.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { NotificationHubsResponse } from "../models/notificationDetails.js"; -import { OperationOptions } from "@azure-rest/core-client"; +import type { Installation } from "../models/installation.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { NotificationHubsResponse } from "../models/notificationDetails.js"; +import type { OperationOptions } from "@azure-rest/core-client"; import { tracingClient } from "../utils/tracing.js"; const OPERATION_NAME = "createOrUpdateInstallation"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/createOrUpdateRegistration.ts b/sdk/notificationhubs/notification-hubs/src/api/createOrUpdateRegistration.ts index f7a94abcb2d3..cc87addcd340 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/createOrUpdateRegistration.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/createOrUpdateRegistration.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { NotificationHubsClientContext } from "./index.js"; -import { OperationOptions } from "@azure-rest/core-client"; -import { RegistrationDescription } from "../models/registration.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { OperationOptions } from "@azure-rest/core-client"; +import type { RegistrationDescription } from "../models/registration.js"; import { createOrUpdateRegistrationDescription } from "./internal/_createOrUpdateRegistrationDescription.js"; import { tracingClient } from "../utils/tracing.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/createRegistration.ts b/sdk/notificationhubs/notification-hubs/src/api/createRegistration.ts index 1c739a62ce9d..b467882f1fcd 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/createRegistration.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/createRegistration.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { NotificationHubsClientContext } from "./index.js"; -import { OperationOptions } from "@azure-rest/core-client"; -import { RegistrationDescription } from "../models/registration.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { OperationOptions } from "@azure-rest/core-client"; +import type { RegistrationDescription } from "../models/registration.js"; import { RestError } from "@azure/core-rest-pipeline"; import { createOrUpdateRegistrationDescription } from "./internal/_createOrUpdateRegistrationDescription.js"; import { tracingClient } from "../utils/tracing.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/createRegistrationId.ts b/sdk/notificationhubs/notification-hubs/src/api/createRegistrationId.ts index 9cdaadb5fe4c..d0c8b206c256 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/createRegistrationId.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/createRegistrationId.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { createRequest, sendRequest } from "./internal/_client.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { OperationOptions } from "@azure-rest/core-client"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { OperationOptions } from "@azure-rest/core-client"; import { RestError } from "@azure/core-rest-pipeline"; import { tracingClient } from "../utils/tracing.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/deleteInstallation.ts b/sdk/notificationhubs/notification-hubs/src/api/deleteInstallation.ts index b3f015247fb0..6681ff4ff5d1 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/deleteInstallation.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/deleteInstallation.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { createRequest, parseNotificationResponse, sendRequest } from "./internal/_client.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { NotificationHubsResponse } from "../models/notificationDetails.js"; -import { OperationOptions } from "@azure-rest/core-client"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { NotificationHubsResponse } from "../models/notificationDetails.js"; +import type { OperationOptions } from "@azure-rest/core-client"; import { tracingClient } from "../utils/tracing.js"; const OPERATION_NAME = "deleteInstallation"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/deleteRegistration.ts b/sdk/notificationhubs/notification-hubs/src/api/deleteRegistration.ts index faccc1ff15a6..6a28c8bb9408 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/deleteRegistration.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/deleteRegistration.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { createRequest, parseNotificationResponse, sendRequest } from "./internal/_client.js"; -import { EntityOperationOptions } from "../models/options.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { NotificationHubsResponse } from "../models/notificationDetails.js"; +import type { EntityOperationOptions } from "../models/options.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { NotificationHubsResponse } from "../models/notificationDetails.js"; import { isDefined } from "../utils/utils.js"; import { tracingClient } from "../utils/tracing.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/getFeedbackContainerUrl.ts b/sdk/notificationhubs/notification-hubs/src/api/getFeedbackContainerUrl.ts index 67bbc3e26648..b4b91397cb07 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/getFeedbackContainerUrl.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/getFeedbackContainerUrl.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { createRequest, sendRequest } from "./internal/_client.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { OperationOptions } from "@azure-rest/core-client"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { OperationOptions } from "@azure-rest/core-client"; import { tracingClient } from "../utils/tracing.js"; const OPERATION_NAME = "getFeedbackContainerUrl"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/getInstallation.ts b/sdk/notificationhubs/notification-hubs/src/api/getInstallation.ts index 040cbde96b2d..8c3524e09fa9 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/getInstallation.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/getInstallation.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { createRequest, sendRequest } from "./internal/_client.js"; -import { Installation } from "../models/installation.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { OperationOptions } from "@azure-rest/core-client"; +import type { Installation } from "../models/installation.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { OperationOptions } from "@azure-rest/core-client"; import { tracingClient } from "../utils/tracing.js"; const OPERATION_NAME = "getInstallation"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/getNotificationHubJob.ts b/sdk/notificationhubs/notification-hubs/src/api/getNotificationHubJob.ts index bf117cead3da..e53189f4b691 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/getNotificationHubJob.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/getNotificationHubJob.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { createRequest, sendRequest } from "./internal/_client.js"; -import { NotificationHubJob } from "../models/notificationHubJob.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { OperationOptions } from "@azure-rest/core-client"; +import type { NotificationHubJob } from "../models/notificationHubJob.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { OperationOptions } from "@azure-rest/core-client"; import { parseNotificationHubJobEntry } from "../serializers/notificationHubJobSerializer.js"; import { tracingClient } from "../utils/tracing.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/getNotificationOutcomeDetails.ts b/sdk/notificationhubs/notification-hubs/src/api/getNotificationOutcomeDetails.ts index 02feed96811e..c331b4f0c405 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/getNotificationOutcomeDetails.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/getNotificationOutcomeDetails.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { createRequest, sendRequest } from "./internal/_client.js"; -import { NotificationDetails } from "../models/notificationDetails.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { OperationOptions } from "@azure-rest/core-client"; +import type { NotificationDetails } from "../models/notificationDetails.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { OperationOptions } from "@azure-rest/core-client"; import { parseNotificationDetails } from "../serializers/notificationDetailsSerializer.js"; import { tracingClient } from "../utils/tracing.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/getRegistration.ts b/sdk/notificationhubs/notification-hubs/src/api/getRegistration.ts index 417cfee91669..e3ca47d3201e 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/getRegistration.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/getRegistration.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { createRequest, sendRequest } from "./internal/_client.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { OperationOptions } from "@azure-rest/core-client"; -import { RegistrationDescription } from "../models/registration.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { OperationOptions } from "@azure-rest/core-client"; +import type { RegistrationDescription } from "../models/registration.js"; import { registrationDescriptionParser } from "../serializers/registrationSerializer.js"; import { tracingClient } from "../utils/tracing.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/internal/_client.ts b/sdk/notificationhubs/notification-hubs/src/api/internal/_client.ts index cbc25831771e..4428f3a135b6 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/internal/_client.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/internal/_client.ts @@ -1,20 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { HttpHeaders, HttpMethods, PipelineRequest, PipelineResponse, - RestError, - createPipelineRequest, } from "@azure/core-rest-pipeline"; -import { +import { RestError, createPipelineRequest } from "@azure/core-rest-pipeline"; +import type { NotificationHubsMessageResponse, NotificationHubsResponse, } from "../../models/notificationDetails.js"; -import { NotificationHubsClientContext } from "../index.js"; -import { OperationOptions } from "@azure-rest/core-client"; +import type { NotificationHubsClientContext } from "../index.js"; +import type { OperationOptions } from "@azure-rest/core-client"; import { isDefined } from "../../utils/utils.js"; import { parseNotificationOutcome } from "../../serializers/notificationOutcomeSerializer.js"; import { parseXMLError } from "../../utils/xmlUtils.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/internal/_createOrUpdateRegistrationDescription.ts b/sdk/notificationhubs/notification-hubs/src/api/internal/_createOrUpdateRegistrationDescription.ts index ed22956d94bc..1487284be909 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/internal/_createOrUpdateRegistrationDescription.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/internal/_createOrUpdateRegistrationDescription.ts @@ -6,10 +6,10 @@ import { registrationDescriptionParser, registrationDescriptionSerializer, } from "../../serializers/registrationSerializer.js"; -import { HttpMethods } from "@azure/core-rest-pipeline"; -import { NotificationHubsClientContext } from "../index.js"; -import { OperationOptions } from "@azure-rest/core-client"; -import { RegistrationDescription } from "../../models/registration.js"; +import type { HttpMethods } from "@azure/core-rest-pipeline"; +import type { NotificationHubsClientContext } from "../index.js"; +import type { OperationOptions } from "@azure-rest/core-client"; +import type { RegistrationDescription } from "../../models/registration.js"; import { isDefined } from "../../utils/utils.js"; /** diff --git a/sdk/notificationhubs/notification-hubs/src/api/internal/_listRegistrations.ts b/sdk/notificationhubs/notification-hubs/src/api/internal/_listRegistrations.ts index 3321fe765cd3..141173df600f 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/internal/_listRegistrations.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/internal/_listRegistrations.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { createRequest, sendRequest } from "./_client.js"; -import { NotificationHubsClientContext } from "../index.js"; -import { RegistrationDescription } from "../../models/registration.js"; -import { RegistrationQueryOptions } from "../../models/options.js"; -import { RegistrationQueryResponse } from "../../models/response.js"; +import type { NotificationHubsClientContext } from "../index.js"; +import type { RegistrationDescription } from "../../models/registration.js"; +import type { RegistrationQueryOptions } from "../../models/options.js"; +import type { RegistrationQueryResponse } from "../../models/response.js"; import { registrationDescriptionParser } from "../../serializers/registrationSerializer.js"; export async function* listRegistrationsAll( diff --git a/sdk/notificationhubs/notification-hubs/src/api/internal/_scheduleNotification.ts b/sdk/notificationhubs/notification-hubs/src/api/internal/_scheduleNotification.ts index 0062e7f16135..2094032a3552 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/internal/_scheduleNotification.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/internal/_scheduleNotification.ts @@ -2,12 +2,12 @@ // Licensed under the MIT License. import { createRequest, parseNotificationSendResponse, sendRequest } from "./_client.js"; -import { NonNullableRecord } from "../../utils/utils.js"; -import { Notification } from "../../models/notification.js"; -import { NotificationHubsClientContext } from "../index.js"; -import { NotificationHubsMessageResponse } from "../../models/notificationDetails.js"; +import type { NonNullableRecord } from "../../utils/utils.js"; +import type { Notification } from "../../models/notification.js"; +import type { NotificationHubsClientContext } from "../index.js"; +import type { NotificationHubsMessageResponse } from "../../models/notificationDetails.js"; import { tracingClient } from "../../utils/tracing.js"; -import { OperationOptions } from "@azure-rest/core-client"; +import type { OperationOptions } from "@azure-rest/core-client"; /** * Schedules a push notification to devices that match the given tags or tag expression at the specified time. diff --git a/sdk/notificationhubs/notification-hubs/src/api/internal/_sendNotification.ts b/sdk/notificationhubs/notification-hubs/src/api/internal/_sendNotification.ts index 7e03c07b26e4..d96790810277 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/internal/_sendNotification.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/internal/_sendNotification.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { BroadcastSendNotificationOptions, DirectSendNotificationOptions, SendNotificationOptions, @@ -12,11 +12,11 @@ import { isDirectSendNotificationOptions, isSendNotificationOptions, } from "../../utils/optionUtils.js"; -import { BrowserPushChannel } from "../../models/installation.js"; -import { NonNullableRecord } from "../../utils/utils.js"; -import { Notification } from "../../models/notification.js"; -import { NotificationHubsClientContext } from "../index.js"; -import { NotificationHubsMessageResponse } from "../../models/notificationDetails.js"; +import type { BrowserPushChannel } from "../../models/installation.js"; +import type { NonNullableRecord } from "../../utils/utils.js"; +import type { Notification } from "../../models/notification.js"; +import type { NotificationHubsClientContext } from "../index.js"; +import type { NotificationHubsMessageResponse } from "../../models/notificationDetails.js"; import { createMultipartDirectNotification } from "../../utils/notificationUtils.js"; import { randomUUID } from "@azure/core-util"; import { tracingClient } from "../../utils/tracing.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/listNotificationHubJobs.ts b/sdk/notificationhubs/notification-hubs/src/api/listNotificationHubJobs.ts index ac7d6c9f2271..e057d386ef41 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/listNotificationHubJobs.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/listNotificationHubJobs.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { createRequest, sendRequest } from "./internal/_client.js"; -import { NotificationHubJob } from "../models/notificationHubJob.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { OperationOptions } from "@azure-rest/core-client"; +import type { NotificationHubJob } from "../models/notificationHubJob.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { OperationOptions } from "@azure-rest/core-client"; import { parseNotificationHubJobFeed } from "../serializers/notificationHubJobSerializer.js"; import { tracingClient } from "../utils/tracing.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/listRegistrations.ts b/sdk/notificationhubs/notification-hubs/src/api/listRegistrations.ts index 5a1327434db3..0be12c4dcbb1 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/listRegistrations.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/listRegistrations.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { NotificationHubsClientContext } from "./index.js"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { RegistrationDescription } from "../models/registration.js"; -import { RegistrationQueryLimitOptions } from "../models/options.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { RegistrationDescription } from "../models/registration.js"; +import type { RegistrationQueryLimitOptions } from "../models/options.js"; import { tracingClient } from "../utils/tracing.js"; import { listRegistrationPagingPage, listRegistrationsAll } from "./internal/_listRegistrations.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/listRegistrationsByChannel.ts b/sdk/notificationhubs/notification-hubs/src/api/listRegistrationsByChannel.ts index 237295a991cb..cd87e683f8c6 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/listRegistrationsByChannel.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/listRegistrationsByChannel.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RegistrationDescription, RegistrationChannel } from "../models/registration.js"; +import type { RegistrationDescription, RegistrationChannel } from "../models/registration.js"; import { listRegistrationPagingPage, listRegistrationsAll } from "./internal/_listRegistrations.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { RegistrationQueryLimitOptions } from "../models/options.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { RegistrationQueryLimitOptions } from "../models/options.js"; import { getFilterByChannel } from "../utils/registrationUtils.js"; import { tracingClient } from "../utils/tracing.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/listRegistrationsByTag.ts b/sdk/notificationhubs/notification-hubs/src/api/listRegistrationsByTag.ts index 3412ace9efad..41490df137ea 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/listRegistrationsByTag.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/listRegistrationsByTag.ts @@ -2,11 +2,11 @@ // Licensed under the MIT License. import { createRequest, sendRequest } from "./internal/_client.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { RegistrationDescription } from "../models/registration.js"; -import { RegistrationQueryLimitOptions } from "../models/options.js"; -import { RegistrationQueryResponse } from "../models/response.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { RegistrationDescription } from "../models/registration.js"; +import type { RegistrationQueryLimitOptions } from "../models/options.js"; +import type { RegistrationQueryResponse } from "../models/response.js"; import { registrationDescriptionParser } from "../serializers/registrationSerializer.js"; import { tracingClient } from "../utils/tracing.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/scheduleBroadcastNotification.ts b/sdk/notificationhubs/notification-hubs/src/api/scheduleBroadcastNotification.ts index 5ec664bae676..4dd407dfde4e 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/scheduleBroadcastNotification.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/scheduleBroadcastNotification.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Notification } from "../models/notification.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { NotificationHubsMessageResponse } from "../models/notificationDetails.js"; -import { OperationOptions } from "@azure-rest/core-client"; +import type { Notification } from "../models/notification.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { NotificationHubsMessageResponse } from "../models/notificationDetails.js"; +import type { OperationOptions } from "@azure-rest/core-client"; import { scheduleNotificationInternal } from "./internal/_scheduleNotification.js"; /** diff --git a/sdk/notificationhubs/notification-hubs/src/api/scheduleNotification.ts b/sdk/notificationhubs/notification-hubs/src/api/scheduleNotification.ts index 889a63780e4d..865de1484f1f 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/scheduleNotification.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/scheduleNotification.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Notification } from "../models/notification.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { NotificationHubsMessageResponse } from "../models/notificationDetails.js"; -import { ScheduleNotificationOptions } from "../models/options.js"; +import type { Notification } from "../models/notification.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { NotificationHubsMessageResponse } from "../models/notificationDetails.js"; +import type { ScheduleNotificationOptions } from "../models/options.js"; import { scheduleNotificationInternal } from "./internal/_scheduleNotification.js"; /** diff --git a/sdk/notificationhubs/notification-hubs/src/api/sendBroadcastNotification.ts b/sdk/notificationhubs/notification-hubs/src/api/sendBroadcastNotification.ts index 94168f7eca94..5835ccb1b601 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/sendBroadcastNotification.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/sendBroadcastNotification.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { BroadcastSendNotificationOptions } from "../models/options.js"; -import { Notification } from "../models/notification.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { NotificationHubsMessageResponse } from "../models/notificationDetails.js"; +import type { BroadcastSendNotificationOptions } from "../models/options.js"; +import type { Notification } from "../models/notification.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { NotificationHubsMessageResponse } from "../models/notificationDetails.js"; import { sendNotificationInternal } from "./internal/_sendNotification.js"; /** diff --git a/sdk/notificationhubs/notification-hubs/src/api/sendNotification.ts b/sdk/notificationhubs/notification-hubs/src/api/sendNotification.ts index 062ead090281..b108fa10f645 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/sendNotification.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/sendNotification.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DirectSendNotificationOptions, SendNotificationOptions } from "../models/options.js"; -import { Notification } from "../models/notification.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { NotificationHubsMessageResponse } from "../models/notificationDetails.js"; +import type { DirectSendNotificationOptions, SendNotificationOptions } from "../models/options.js"; +import type { Notification } from "../models/notification.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { NotificationHubsMessageResponse } from "../models/notificationDetails.js"; import { sendNotificationInternal } from "./internal/_sendNotification.js"; /** diff --git a/sdk/notificationhubs/notification-hubs/src/api/submitNotificationHubJob.ts b/sdk/notificationhubs/notification-hubs/src/api/submitNotificationHubJob.ts index 3d1a8b1d5705..ed690f8ee34f 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/submitNotificationHubJob.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/submitNotificationHubJob.ts @@ -6,9 +6,9 @@ import { parseNotificationHubJobEntry, serializeNotificationHubJobEntry, } from "../serializers/notificationHubJobSerializer.js"; -import { NotificationHubJob } from "../models/notificationHubJob.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { OperationOptions } from "@azure-rest/core-client"; +import type { NotificationHubJob } from "../models/notificationHubJob.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { OperationOptions } from "@azure-rest/core-client"; import { tracingClient } from "../utils/tracing.js"; const OPERATION_NAME = "submitNotificationHubJob"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/updateInstallation.ts b/sdk/notificationhubs/notification-hubs/src/api/updateInstallation.ts index e3b8287e5829..5a5dbdb7608c 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/updateInstallation.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/updateInstallation.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { createRequest, parseNotificationResponse, sendRequest } from "./internal/_client.js"; -import { JsonPatch } from "../models/installation.js"; -import { NotificationHubsClientContext } from "./index.js"; -import { NotificationHubsResponse } from "../models/notificationDetails.js"; -import { OperationOptions } from "@azure-rest/core-client"; +import type { JsonPatch } from "../models/installation.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { NotificationHubsResponse } from "../models/notificationDetails.js"; +import type { OperationOptions } from "@azure-rest/core-client"; import { tracingClient } from "../utils/tracing.js"; const OPERATION_NAME = "updateInstallation"; diff --git a/sdk/notificationhubs/notification-hubs/src/api/updateRegistration.ts b/sdk/notificationhubs/notification-hubs/src/api/updateRegistration.ts index a3105725c96c..670cba56d810 100644 --- a/sdk/notificationhubs/notification-hubs/src/api/updateRegistration.ts +++ b/sdk/notificationhubs/notification-hubs/src/api/updateRegistration.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { NotificationHubsClientContext } from "./index.js"; -import { OperationOptions } from "@azure-rest/core-client"; -import { RegistrationDescription } from "../models/registration.js"; +import type { NotificationHubsClientContext } from "./index.js"; +import type { OperationOptions } from "@azure-rest/core-client"; +import type { RegistrationDescription } from "../models/registration.js"; import { RestError } from "@azure/core-rest-pipeline"; import { createOrUpdateRegistrationDescription } from "./internal/_createOrUpdateRegistrationDescription.js"; import { tracingClient } from "../utils/tracing.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/auth/sasTokenCredential.ts b/sdk/notificationhubs/notification-hubs/src/auth/sasTokenCredential.ts index c3bc9a68123d..0d67de90b119 100644 --- a/sdk/notificationhubs/notification-hubs/src/auth/sasTokenCredential.ts +++ b/sdk/notificationhubs/notification-hubs/src/auth/sasTokenCredential.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; import { signString } from "./hmacSha256.js"; /** diff --git a/sdk/notificationhubs/notification-hubs/src/models/notification.ts b/sdk/notificationhubs/notification-hubs/src/models/notification.ts index d9f2faea44d7..b29ed29f4658 100644 --- a/sdk/notificationhubs/notification-hubs/src/models/notification.ts +++ b/sdk/notificationhubs/notification-hubs/src/models/notification.ts @@ -2,13 +2,13 @@ // Licensed under the MIT License. import * as Constants from "../utils/constants.js"; -import { +import type { AdmNativeMessage, AppleNativeMessage, FirebaseLegacyNativeMessage, FirebaseV1NativeMessage, } from "./notificationBodyBuilder.js"; -import { AppleHeaders, WindowsHeaders } from "./notificationHeaderBuilder.js"; +import type { AppleHeaders, WindowsHeaders } from "./notificationHeaderBuilder.js"; function isString(value: unknown): value is string { return typeof value === "string" || value instanceof String; diff --git a/sdk/notificationhubs/notification-hubs/src/models/notificationHubJob.ts b/sdk/notificationhubs/notification-hubs/src/models/notificationHubJob.ts index fa428dfc4d5b..78ace904feff 100644 --- a/sdk/notificationhubs/notification-hubs/src/models/notificationHubJob.ts +++ b/sdk/notificationhubs/notification-hubs/src/models/notificationHubJob.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationState, PollerLike } from "@azure/core-lro"; +import type { OperationState, PollerLike } from "@azure/core-lro"; /** * Describes the types of notification hub jobs. diff --git a/sdk/notificationhubs/notification-hubs/src/models/options.ts b/sdk/notificationhubs/notification-hubs/src/models/options.ts index cea4f621705a..87ae449ec91f 100644 --- a/sdk/notificationhubs/notification-hubs/src/models/options.ts +++ b/sdk/notificationhubs/notification-hubs/src/models/options.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientOptions, OperationOptions } from "@azure-rest/core-client"; -import { BrowserPushChannel } from "./installation.js"; +import type { ClientOptions, OperationOptions } from "@azure-rest/core-client"; +import type { BrowserPushChannel } from "./installation.js"; /** * Describes the options that can be provided while creating the NotificationHubsClientContext. diff --git a/sdk/notificationhubs/notification-hubs/src/models/response.ts b/sdk/notificationhubs/notification-hubs/src/models/response.ts index fb34c8c6729b..21cb57888d0b 100644 --- a/sdk/notificationhubs/notification-hubs/src/models/response.ts +++ b/sdk/notificationhubs/notification-hubs/src/models/response.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RegistrationDescription } from "./registration.js"; +import type { RegistrationDescription } from "./registration.js"; /** * Describes a registration query response with registrations and a continuation token. diff --git a/sdk/notificationhubs/notification-hubs/src/notificationHubsClient.ts b/sdk/notificationhubs/notification-hubs/src/notificationHubsClient.ts index d77cbc7776bb..0ee79dc8bf6f 100644 --- a/sdk/notificationhubs/notification-hubs/src/notificationHubsClient.ts +++ b/sdk/notificationhubs/notification-hubs/src/notificationHubsClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { BroadcastSendNotificationOptions, DirectSendNotificationOptions, EntityOperationOptions, @@ -11,18 +11,19 @@ import { ScheduleNotificationOptions, SendNotificationOptions, } from "./models/options.js"; -import { Installation, JsonPatch } from "./models/installation.js"; -import { +import type { Installation, JsonPatch } from "./models/installation.js"; +import type { NotificationDetails, NotificationHubsMessageResponse, NotificationHubsResponse, } from "./models/notificationDetails.js"; -import { NotificationHubJob, NotificationHubJobPoller } from "./models/notificationHubJob.js"; -import { NotificationHubsClientContext, createClientContext } from "./api/clientContext.js"; -import { RegistrationDescription, RegistrationChannel } from "./models/registration.js"; -import { Notification } from "./models/notification.js"; -import { OperationOptions } from "@azure-rest/core-client"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { NotificationHubJob, NotificationHubJobPoller } from "./models/notificationHubJob.js"; +import type { NotificationHubsClientContext } from "./api/clientContext.js"; +import { createClientContext } from "./api/clientContext.js"; +import type { RegistrationDescription, RegistrationChannel } from "./models/registration.js"; +import type { Notification } from "./models/notification.js"; +import type { OperationOptions } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; import { beginSubmitNotificationHubJob as beginSubmitNotificationHubJobMethod } from "./api/beginSubmitNotificationHubJob.js"; import { cancelScheduledNotification as cancelScheduledNotificationMethod } from "./api/cancelScheduledNotification.js"; import { createOrUpdateInstallation as createOrUpdateInstallationMethod } from "./api/createOrUpdateInstallation.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/serializers/notificationDetailsSerializer.ts b/sdk/notificationhubs/notification-hubs/src/serializers/notificationDetailsSerializer.ts index 9e739a3bf233..aa4022f544c0 100644 --- a/sdk/notificationhubs/notification-hubs/src/serializers/notificationDetailsSerializer.ts +++ b/sdk/notificationhubs/notification-hubs/src/serializers/notificationDetailsSerializer.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { NotificationDetails, NotificationOutcome, NotificationOutcomeState, diff --git a/sdk/notificationhubs/notification-hubs/src/serializers/notificationHubJobSerializer.ts b/sdk/notificationhubs/notification-hubs/src/serializers/notificationHubJobSerializer.ts index 7bd1df054662..76da8b62b048 100644 --- a/sdk/notificationhubs/notification-hubs/src/serializers/notificationHubJobSerializer.ts +++ b/sdk/notificationhubs/notification-hubs/src/serializers/notificationHubJobSerializer.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { NotificationHubJob, NotificationHubJobStatus, NotificationHubJobType, diff --git a/sdk/notificationhubs/notification-hubs/src/serializers/notificationOutcomeSerializer.ts b/sdk/notificationhubs/notification-hubs/src/serializers/notificationOutcomeSerializer.ts index 3a572c31c988..a69c2ac89b70 100644 --- a/sdk/notificationhubs/notification-hubs/src/serializers/notificationOutcomeSerializer.ts +++ b/sdk/notificationhubs/notification-hubs/src/serializers/notificationOutcomeSerializer.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { NotificationHubsMessageResponse, RegistrationResult, } from "../models/notificationDetails.js"; diff --git a/sdk/notificationhubs/notification-hubs/src/serializers/registrationSerializer.ts b/sdk/notificationhubs/notification-hubs/src/serializers/registrationSerializer.ts index cb6faa256981..a7a77b1f20ed 100644 --- a/sdk/notificationhubs/notification-hubs/src/serializers/registrationSerializer.ts +++ b/sdk/notificationhubs/notification-hubs/src/serializers/registrationSerializer.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AdmRegistrationDescription, AdmTemplateRegistrationDescription, AppleRegistrationDescription, diff --git a/sdk/notificationhubs/notification-hubs/src/utils/notificationUtils.ts b/sdk/notificationhubs/notification-hubs/src/utils/notificationUtils.ts index a7cfca391c2e..4e5955fc3e83 100644 --- a/sdk/notificationhubs/notification-hubs/src/utils/notificationUtils.ts +++ b/sdk/notificationhubs/notification-hubs/src/utils/notificationUtils.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Notification } from "../models/notification.js"; +import type { Notification } from "../models/notification.js"; /** * @internal diff --git a/sdk/notificationhubs/notification-hubs/src/utils/optionUtils.ts b/sdk/notificationhubs/notification-hubs/src/utils/optionUtils.ts index 70d0ae6ee103..eee0480795d5 100644 --- a/sdk/notificationhubs/notification-hubs/src/utils/optionUtils.ts +++ b/sdk/notificationhubs/notification-hubs/src/utils/optionUtils.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { BroadcastSendNotificationOptions, DirectSendNotificationOptions, SendNotificationOptions, diff --git a/sdk/notificationhubs/notification-hubs/src/utils/registrationUtils.ts b/sdk/notificationhubs/notification-hubs/src/utils/registrationUtils.ts index 30f18b0fd000..a69551630967 100644 --- a/sdk/notificationhubs/notification-hubs/src/utils/registrationUtils.ts +++ b/sdk/notificationhubs/notification-hubs/src/utils/registrationUtils.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { RestError } from "@azure/core-rest-pipeline"; -import { RegistrationChannel } from "../models/registration.js"; +import type { RegistrationChannel } from "../models/registration.js"; export function getFilterByChannel(device: RegistrationChannel): string { switch (device.kind) { diff --git a/sdk/notificationhubs/notification-hubs/test/internal/unit/notificationHubJobSerializer.spec.ts b/sdk/notificationhubs/notification-hubs/test/internal/unit/notificationHubJobSerializer.spec.ts index 5413b4cb3547..1911e0035f26 100644 --- a/sdk/notificationhubs/notification-hubs/test/internal/unit/notificationHubJobSerializer.spec.ts +++ b/sdk/notificationhubs/notification-hubs/test/internal/unit/notificationHubJobSerializer.spec.ts @@ -7,7 +7,7 @@ import { parseNotificationHubJobFeed, serializeNotificationHubJobEntry, } from "../../../src/serializers/notificationHubJobSerializer.js"; -import { NotificationHubJob } from "../../../src/models/notificationHubJob.js"; +import type { NotificationHubJob } from "../../../src/models/notificationHubJob.js"; const HUB_JOB_OUTGOING = ` diff --git a/sdk/notificationhubs/notification-hubs/test/internal/unit/registrationSerializer.spec.ts b/sdk/notificationhubs/notification-hubs/test/internal/unit/registrationSerializer.spec.ts index 3a9acbe059d1..3d9d3ccc3f36 100644 --- a/sdk/notificationhubs/notification-hubs/test/internal/unit/registrationSerializer.spec.ts +++ b/sdk/notificationhubs/notification-hubs/test/internal/unit/registrationSerializer.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { describe, it, assert } from "vitest"; -import { +import type { AdmRegistrationDescription, AdmTemplateRegistrationDescription, AppleRegistrationDescription, @@ -21,6 +21,8 @@ import { XiaomiTemplateRegistrationDescription, WindowsRegistrationDescription, WindowsTemplateRegistrationDescription, +} from "../../../src/models/registration.js"; +import { createAdmRegistrationDescription, createAdmTemplateRegistrationDescription, createAppleRegistrationDescription, diff --git a/sdk/notificationhubs/notification-hubs/test/internal/unit/sasTokenCredential.spec.ts b/sdk/notificationhubs/notification-hubs/test/internal/unit/sasTokenCredential.spec.ts index f45b87165566..04e0edb89436 100644 --- a/sdk/notificationhubs/notification-hubs/test/internal/unit/sasTokenCredential.spec.ts +++ b/sdk/notificationhubs/notification-hubs/test/internal/unit/sasTokenCredential.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { SasTokenCredential, NamedKeyCredential } from "../../../src/auth/sasTokenCredential.js"; +import type { NamedKeyCredential } from "../../../src/auth/sasTokenCredential.js"; +import { SasTokenCredential } from "../../../src/auth/sasTokenCredential.js"; import { describe, it, assert, beforeEach } from "vitest"; describe("SasTokenCredential", () => { diff --git a/sdk/notificationhubs/notification-hubs/test/public/createOrUpdateInstallation.spec.ts b/sdk/notificationhubs/notification-hubs/test/public/createOrUpdateInstallation.spec.ts index c8bb6f84084a..1b3b723912cf 100644 --- a/sdk/notificationhubs/notification-hubs/test/public/createOrUpdateInstallation.spec.ts +++ b/sdk/notificationhubs/notification-hubs/test/public/createOrUpdateInstallation.spec.ts @@ -2,11 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert, beforeEach, afterEach } from "vitest"; -import { - NotificationHubsClientContext, - createOrUpdateInstallation, - deleteInstallation, -} from "../../src/api/index.js"; +import type { NotificationHubsClientContext } from "../../src/api/index.js"; +import { createOrUpdateInstallation, deleteInstallation } from "../../src/api/index.js"; import { Recorder } from "@azure-tools/test-recorder"; import { createAppleInstallation } from "../../src/models/index.js"; import { createRecordedClientContext } from "./utils/recordedClient.js"; diff --git a/sdk/notificationhubs/notification-hubs/test/public/createOrUpdateRegistration.spec.ts b/sdk/notificationhubs/notification-hubs/test/public/createOrUpdateRegistration.spec.ts index ed5645154cd4..b3ac38cf2daf 100644 --- a/sdk/notificationhubs/notification-hubs/test/public/createOrUpdateRegistration.spec.ts +++ b/sdk/notificationhubs/notification-hubs/test/public/createOrUpdateRegistration.spec.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert, beforeEach, afterEach } from "vitest"; +import type { NotificationHubsClientContext } from "../../src/api/index.js"; import { - NotificationHubsClientContext, createOrUpdateRegistration, createRegistrationId, deleteRegistration, diff --git a/sdk/notificationhubs/notification-hubs/test/public/getRegistration.spec.ts b/sdk/notificationhubs/notification-hubs/test/public/getRegistration.spec.ts index 0b0bb91a9a49..bb65b1a46fcb 100644 --- a/sdk/notificationhubs/notification-hubs/test/public/getRegistration.spec.ts +++ b/sdk/notificationhubs/notification-hubs/test/public/getRegistration.spec.ts @@ -2,16 +2,10 @@ // Licensed under the MIT License. import { describe, it, assert, beforeEach, afterEach } from "vitest"; -import { - AppleRegistrationDescription, - createAppleRegistrationDescription, -} from "../../src/models/index.js"; -import { - NotificationHubsClientContext, - createRegistration, - deleteRegistration, - getRegistration, -} from "../../src/api/index.js"; +import type { AppleRegistrationDescription } from "../../src/models/index.js"; +import { createAppleRegistrationDescription } from "../../src/models/index.js"; +import type { NotificationHubsClientContext } from "../../src/api/index.js"; +import { createRegistration, deleteRegistration, getRegistration } from "../../src/api/index.js"; import { Recorder } from "@azure-tools/test-recorder"; import { createRecordedClientContext } from "./utils/recordedClient.js"; diff --git a/sdk/notificationhubs/notification-hubs/test/public/listRegistrations.spec.ts b/sdk/notificationhubs/notification-hubs/test/public/listRegistrations.spec.ts index 960598cb87e3..cfd6254fcdfa 100644 --- a/sdk/notificationhubs/notification-hubs/test/public/listRegistrations.spec.ts +++ b/sdk/notificationhubs/notification-hubs/test/public/listRegistrations.spec.ts @@ -2,16 +2,10 @@ // Licensed under the MIT License. import { describe, it, assert, beforeEach, afterEach } from "vitest"; -import { - AppleRegistrationDescription, - createAppleRegistrationDescription, -} from "../../src/models/index.js"; -import { - NotificationHubsClientContext, - createRegistration, - deleteRegistration, - listRegistrations, -} from "../../src/api/index.js"; +import type { AppleRegistrationDescription } from "../../src/models/index.js"; +import { createAppleRegistrationDescription } from "../../src/models/index.js"; +import type { NotificationHubsClientContext } from "../../src/api/index.js"; +import { createRegistration, deleteRegistration, listRegistrations } from "../../src/api/index.js"; import { Recorder } from "@azure-tools/test-recorder"; import { createRecordedClientContext } from "./utils/recordedClient.js"; diff --git a/sdk/notificationhubs/notification-hubs/test/public/listRegistrationsByTag.spec.ts b/sdk/notificationhubs/notification-hubs/test/public/listRegistrationsByTag.spec.ts index 56c3876e9d5a..be7c40361a6a 100644 --- a/sdk/notificationhubs/notification-hubs/test/public/listRegistrationsByTag.spec.ts +++ b/sdk/notificationhubs/notification-hubs/test/public/listRegistrationsByTag.spec.ts @@ -2,12 +2,10 @@ // Licensed under the MIT License. import { describe, it, assert, beforeEach, afterEach } from "vitest"; +import type { AppleRegistrationDescription } from "../../src/models/index.js"; +import { createAppleRegistrationDescription } from "../../src/models/index.js"; +import type { NotificationHubsClientContext } from "../../src/api/index.js"; import { - AppleRegistrationDescription, - createAppleRegistrationDescription, -} from "../../src/models/index.js"; -import { - NotificationHubsClientContext, createRegistration, deleteRegistration, listRegistrationsByTag, diff --git a/sdk/notificationhubs/notification-hubs/test/public/sendNotification.spec.ts b/sdk/notificationhubs/notification-hubs/test/public/sendNotification.spec.ts index 659bad5290b1..2939eaf1fdc9 100644 --- a/sdk/notificationhubs/notification-hubs/test/public/sendNotification.spec.ts +++ b/sdk/notificationhubs/notification-hubs/test/public/sendNotification.spec.ts @@ -2,11 +2,8 @@ // Licensed under the MIT License. import { describe, it, assert, beforeEach, afterEach } from "vitest"; -import { - NotificationHubsClientContext, - sendBroadcastNotification, - sendNotification, -} from "../../src/api/index.js"; +import type { NotificationHubsClientContext } from "../../src/api/index.js"; +import { sendBroadcastNotification, sendNotification } from "../../src/api/index.js"; import { Recorder } from "@azure-tools/test-recorder"; import { createAppleNotification } from "../../src/models/index.js"; import { createRecordedClientContext } from "./utils/recordedClient.js"; diff --git a/sdk/notificationhubs/notification-hubs/test/public/utils/recordedClient.ts b/sdk/notificationhubs/notification-hubs/test/public/utils/recordedClient.ts index 9a3fd417fc15..d6f8b36c7c5c 100644 --- a/sdk/notificationhubs/notification-hubs/test/public/utils/recordedClient.ts +++ b/sdk/notificationhubs/notification-hubs/test/public/utils/recordedClient.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, RecorderStartOptions, env } from "@azure-tools/test-recorder"; -import { NotificationHubsClientContext, createClientContext } from "../../../src/api/index.js"; +import type { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; +import type { NotificationHubsClientContext } from "../../../src/api/index.js"; +import { createClientContext } from "../../../src/api/index.js"; import { isBrowser } from "@azure/core-util"; const replaceableVariables: { [k: string]: string } = { diff --git a/sdk/notificationhubs/notification-hubs/test/snippets.spec.ts b/sdk/notificationhubs/notification-hubs/test/snippets.spec.ts index fdeb569ea4f6..20c89784dd44 100644 --- a/sdk/notificationhubs/notification-hubs/test/snippets.spec.ts +++ b/sdk/notificationhubs/notification-hubs/test/snippets.spec.ts @@ -2,13 +2,13 @@ // Licensed under the MIT License. import { setLogLevel } from "@azure/logger"; +import type { JsonPatch } from "@azure/notification-hubs"; import { createAppleInstallation, createAppleNotification, createAppleNotificationBody, createAppleRegistrationDescription, createTagExpression, - JsonPatch, NotificationHubsClient, } from "@azure/notification-hubs"; import { diff --git a/sdk/playwrighttesting/create-microsoft-playwright-testing/src/bin/init.ts b/sdk/playwrighttesting/create-microsoft-playwright-testing/src/bin/init.ts index ee59464053c7..ae4ae23aa962 100644 --- a/sdk/playwrighttesting/create-microsoft-playwright-testing/src/bin/init.ts +++ b/sdk/playwrighttesting/create-microsoft-playwright-testing/src/bin/init.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PlaywrightServiceInitConfig } from "../types.js"; +import type { PlaywrightServiceInitConfig } from "../types.js"; import { PlaywrightServiceInitialize } from "../initialize.js"; import { getLanguageAndConfigInfoFromConfigurationFile, diff --git a/sdk/playwrighttesting/create-microsoft-playwright-testing/src/constants.ts b/sdk/playwrighttesting/create-microsoft-playwright-testing/src/constants.ts index 09dd5ecc6960..97543c36d9da 100644 --- a/sdk/playwrighttesting/create-microsoft-playwright-testing/src/constants.ts +++ b/sdk/playwrighttesting/create-microsoft-playwright-testing/src/constants.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Language } from "./types.js"; +import type { Language } from "./types.js"; export const Languages = { TypeScript: "TypeScript" as Language, diff --git a/sdk/playwrighttesting/create-microsoft-playwright-testing/src/initialize.ts b/sdk/playwrighttesting/create-microsoft-playwright-testing/src/initialize.ts index 166fa92ba9a7..d830236961cd 100644 --- a/sdk/playwrighttesting/create-microsoft-playwright-testing/src/initialize.ts +++ b/sdk/playwrighttesting/create-microsoft-playwright-testing/src/initialize.ts @@ -1,10 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import prompts, { PromptObject } from "prompts"; +import type { PromptObject } from "prompts"; +import prompts from "prompts"; import fs from "node:fs"; import { Extensions, Languages, Messages } from "./constants.js"; -import { OverridePromptResponse, PackageManager, PlaywrightServiceInitConfig } from "./types.js"; +import type { + OverridePromptResponse, + PackageManager, + PlaywrightServiceInitConfig, +} from "./types.js"; import { executeCommand, getFileReferenceForImport } from "./utils.js"; import { getPackageManager } from "./packageManager.js"; diff --git a/sdk/playwrighttesting/create-microsoft-playwright-testing/src/packageManager.ts b/sdk/playwrighttesting/create-microsoft-playwright-testing/src/packageManager.ts index 3ea41d9824a4..82f133c17d0c 100644 --- a/sdk/playwrighttesting/create-microsoft-playwright-testing/src/packageManager.ts +++ b/sdk/playwrighttesting/create-microsoft-playwright-testing/src/packageManager.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { existsSync } from "node:fs"; -import { PackageManager } from "./types.js"; +import type { PackageManager } from "./types.js"; import { cwd } from "node:process"; import { resolve } from "node:path"; diff --git a/sdk/playwrighttesting/create-microsoft-playwright-testing/src/utils.ts b/sdk/playwrighttesting/create-microsoft-playwright-testing/src/utils.ts index 9e8dc2797836..2946479860b1 100644 --- a/sdk/playwrighttesting/create-microsoft-playwright-testing/src/utils.ts +++ b/sdk/playwrighttesting/create-microsoft-playwright-testing/src/utils.ts @@ -4,7 +4,7 @@ import { exec } from "node:child_process"; import fs from "node:fs"; import path, { extname } from "node:path"; -import { CLIArguments, PlaywrightServiceInitConfig } from "./types.js"; +import type { CLIArguments, PlaywrightServiceInitConfig } from "./types.js"; import { ErrorMessages, Extensions, Languages } from "./constants.js"; export const executeCommand = (command: string): Promise => { diff --git a/sdk/playwrighttesting/microsoft-playwright-testing/src/common/constants.ts b/sdk/playwrighttesting/microsoft-playwright-testing/src/common/constants.ts index d34b2b821525..16e5332fa162 100644 --- a/sdk/playwrighttesting/microsoft-playwright-testing/src/common/constants.ts +++ b/sdk/playwrighttesting/microsoft-playwright-testing/src/common/constants.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ApiErrorMessage } from "./types"; +import type { ApiErrorMessage } from "./types"; export const EntraIdAccessTokenConstants = { LIFETIME_LEFT_THRESHOLD_IN_MINUTES_FOR_ROTATION: 15, diff --git a/sdk/playwrighttesting/microsoft-playwright-testing/src/common/entraIdAccessToken.ts b/sdk/playwrighttesting/microsoft-playwright-testing/src/common/entraIdAccessToken.ts index 8be32f0cf9bc..929ec229e10a 100644 --- a/sdk/playwrighttesting/microsoft-playwright-testing/src/common/entraIdAccessToken.ts +++ b/sdk/playwrighttesting/microsoft-playwright-testing/src/common/entraIdAccessToken.ts @@ -1,14 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { DefaultAzureCredential, TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; +import { DefaultAzureCredential } from "@azure/identity"; import { coreLogger } from "./logger"; import { EntraIdAccessTokenConstants, InternalEnvironmentVariables, ServiceEnvironmentVariable, } from "./constants"; -import { AccessTokenClaims } from "./types"; +import type { AccessTokenClaims } from "./types"; import { parseJwt } from "../utils/utils"; import { ServiceErrorMessageConstants } from "./messages"; diff --git a/sdk/playwrighttesting/microsoft-playwright-testing/src/common/httpService.ts b/sdk/playwrighttesting/microsoft-playwright-testing/src/common/httpService.ts index 28c5e671af05..f546f77dd69c 100644 --- a/sdk/playwrighttesting/microsoft-playwright-testing/src/common/httpService.ts +++ b/sdk/playwrighttesting/microsoft-playwright-testing/src/common/httpService.ts @@ -2,12 +2,11 @@ // Licensed under the MIT License. import { randomUUID } from "crypto"; +import type { PipelineResponse, HttpMethods } from "@azure/core-rest-pipeline"; import { createDefaultHttpClient, createHttpHeaders, createPipelineRequest, - PipelineResponse, - HttpMethods, createPipelineFromOptions, } from "@azure/core-rest-pipeline"; import { reporterLogger } from "./logger"; diff --git a/sdk/playwrighttesting/microsoft-playwright-testing/src/common/playwrightServiceConfig.ts b/sdk/playwrighttesting/microsoft-playwright-testing/src/common/playwrightServiceConfig.ts index 258c85b48940..a9ae49b54458 100644 --- a/sdk/playwrighttesting/microsoft-playwright-testing/src/common/playwrightServiceConfig.ts +++ b/sdk/playwrighttesting/microsoft-playwright-testing/src/common/playwrightServiceConfig.ts @@ -6,7 +6,7 @@ import { InternalEnvironmentVariables, ServiceEnvironmentVariable, } from "./constants"; -import { PlaywrightServiceAdditionalOptions, OsType } from "./types"; +import type { PlaywrightServiceAdditionalOptions, OsType } from "./types"; import { getAndSetRunId } from "../utils/utils"; class PlaywrightServiceConfig { diff --git a/sdk/playwrighttesting/microsoft-playwright-testing/src/common/types.ts b/sdk/playwrighttesting/microsoft-playwright-testing/src/common/types.ts index 55da66cca586..7f12ff387e27 100644 --- a/sdk/playwrighttesting/microsoft-playwright-testing/src/common/types.ts +++ b/sdk/playwrighttesting/microsoft-playwright-testing/src/common/types.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import type { Location, TestStep } from "@playwright/test/reporter"; -import { ServiceAuth, ServiceOS } from "./constants"; +import type { ServiceAuth, ServiceOS } from "./constants"; import type { TokenCredential } from "@azure/identity"; export type JwtPayload = { diff --git a/sdk/playwrighttesting/microsoft-playwright-testing/src/core/global/playwright-service-global-setup.ts b/sdk/playwrighttesting/microsoft-playwright-testing/src/core/global/playwright-service-global-setup.ts index 184b25eb22e6..35120702f3a2 100644 --- a/sdk/playwrighttesting/microsoft-playwright-testing/src/core/global/playwright-service-global-setup.ts +++ b/sdk/playwrighttesting/microsoft-playwright-testing/src/core/global/playwright-service-global-setup.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { dirname } from "path"; -import { FullConfig } from "../../common/types"; +import type { FullConfig } from "../../common/types"; import playwrightServiceEntra from "../playwrightServiceEntra"; import { loadCustomerGlobalFunction } from "../../common/executor"; import customerConfig from "../../common/customerConfig"; diff --git a/sdk/playwrighttesting/microsoft-playwright-testing/src/core/global/playwright-service-global-teardown.ts b/sdk/playwrighttesting/microsoft-playwright-testing/src/core/global/playwright-service-global-teardown.ts index 398871e8a2ec..5f5d3b6ff780 100644 --- a/sdk/playwrighttesting/microsoft-playwright-testing/src/core/global/playwright-service-global-teardown.ts +++ b/sdk/playwrighttesting/microsoft-playwright-testing/src/core/global/playwright-service-global-teardown.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { dirname } from "path"; -import { FullConfig } from "../../common/types"; +import type { FullConfig } from "../../common/types"; import playwrightServiceEntra from "../playwrightServiceEntra"; import { loadCustomerGlobalFunction } from "../../common/executor"; import customerConfig from "../../common/customerConfig"; diff --git a/sdk/playwrighttesting/microsoft-playwright-testing/src/core/playwrightService.ts b/sdk/playwrighttesting/microsoft-playwright-testing/src/core/playwrightService.ts index 75af2ccac7a8..346b250ca4df 100644 --- a/sdk/playwrighttesting/microsoft-playwright-testing/src/core/playwrightService.ts +++ b/sdk/playwrighttesting/microsoft-playwright-testing/src/core/playwrightService.ts @@ -5,7 +5,7 @@ import { InternalEnvironmentVariables, ServiceAuth } from "../common/constants"; import customerConfig from "../common/customerConfig"; import { PlaywrightServiceConfig } from "../common/playwrightServiceConfig"; import playwrightServiceEntra from "./playwrightServiceEntra"; -import { +import type { PlaywrightServiceAdditionalOptions, PlaywrightConfig, PlaywrightConfigInput, diff --git a/sdk/playwrighttesting/microsoft-playwright-testing/src/model/testResult.ts b/sdk/playwrighttesting/microsoft-playwright-testing/src/model/testResult.ts index 18e31f1d7d46..cf5cb4f91ea3 100644 --- a/sdk/playwrighttesting/microsoft-playwright-testing/src/model/testResult.ts +++ b/sdk/playwrighttesting/microsoft-playwright-testing/src/model/testResult.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawTestStep } from "../common/types"; +import type { RawTestStep } from "../common/types"; export class TestResult { testId!: string; diff --git a/sdk/playwrighttesting/microsoft-playwright-testing/src/model/testRun.ts b/sdk/playwrighttesting/microsoft-playwright-testing/src/model/testRun.ts index 30b010586ef0..411df8a6403d 100644 --- a/sdk/playwrighttesting/microsoft-playwright-testing/src/model/testRun.ts +++ b/sdk/playwrighttesting/microsoft-playwright-testing/src/model/testRun.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ShardInfo } from "./shard"; +import type { ShardInfo } from "./shard"; export class TestRun { testRunId!: string; diff --git a/sdk/playwrighttesting/microsoft-playwright-testing/src/reporter/mptReporter.ts b/sdk/playwrighttesting/microsoft-playwright-testing/src/reporter/mptReporter.ts index e73f50483069..dd67f8cfa206 100644 --- a/sdk/playwrighttesting/microsoft-playwright-testing/src/reporter/mptReporter.ts +++ b/sdk/playwrighttesting/microsoft-playwright-testing/src/reporter/mptReporter.ts @@ -17,17 +17,19 @@ import { } from "../common/constants"; import { EnvironmentVariables } from "../common/environmentVariables"; import { MultiMap } from "../common/multimap"; -import { EntraTokenDetails } from "../model/entraTokenDetails"; -import { MPTTokenDetails, TokenType } from "../model/mptTokenDetails"; -import { Shard, UploadMetadata } from "../model/shard"; -import { StorageUri } from "../model/storageUri"; -import { TestResult as MPTTestResult, RawTestResult } from "../model/testResult"; -import { TestRun } from "../model/testRun"; -import { CIInfo, CIInfoProvider } from "../utils/cIInfoProvider"; +import type { EntraTokenDetails } from "../model/entraTokenDetails"; +import type { MPTTokenDetails } from "../model/mptTokenDetails"; +import { TokenType } from "../model/mptTokenDetails"; +import type { Shard, UploadMetadata } from "../model/shard"; +import type { StorageUri } from "../model/storageUri"; +import type { TestResult as MPTTestResult, RawTestResult } from "../model/testResult"; +import type { TestRun } from "../model/testRun"; +import type { CIInfo } from "../utils/cIInfoProvider"; +import { CIInfoProvider } from "../utils/cIInfoProvider"; import ReporterUtils from "../utils/reporterUtils"; import { ServiceClient } from "../utils/serviceClient"; import { StorageClient } from "../utils/storageClient"; -import { MPTReporterConfig } from "../common/types"; +import type { MPTReporterConfig } from "../common/types"; import { ServiceErrorMessageConstants } from "../common/messages"; import { validateMptPAT, populateValuesFromServiceUrl } from "../utils/utils"; diff --git a/sdk/playwrighttesting/microsoft-playwright-testing/src/utils/packageManager.ts b/sdk/playwrighttesting/microsoft-playwright-testing/src/utils/packageManager.ts index 63809bb5ec3c..a99252c680af 100644 --- a/sdk/playwrighttesting/microsoft-playwright-testing/src/utils/packageManager.ts +++ b/sdk/playwrighttesting/microsoft-playwright-testing/src/utils/packageManager.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PackageManager } from "../common/types"; +import type { PackageManager } from "../common/types"; export class NPM implements PackageManager { runCommand = (command: string, args: string): string => { diff --git a/sdk/playwrighttesting/microsoft-playwright-testing/src/utils/reporterUtils.ts b/sdk/playwrighttesting/microsoft-playwright-testing/src/utils/reporterUtils.ts index a12400655a64..a76ed19a82c6 100644 --- a/sdk/playwrighttesting/microsoft-playwright-testing/src/utils/reporterUtils.ts +++ b/sdk/playwrighttesting/microsoft-playwright-testing/src/utils/reporterUtils.ts @@ -13,20 +13,24 @@ import type { import { exec } from "child_process"; import { reporterLogger } from "../common/logger"; import { createHash, randomUUID } from "crypto"; -import { IBackOffOptions } from "../common/types"; +import type { IBackOffOptions } from "../common/types"; import fs from "fs"; import os from "os"; import path from "path"; import { Constants } from "../common/constants"; -import { EnvironmentVariables } from "../common/environmentVariables"; -import { DedupedStep, RawTestStep } from "../common/types"; +import type { EnvironmentVariables } from "../common/environmentVariables"; +import type { DedupedStep, RawTestStep } from "../common/types"; import { TokenType } from "../model/mptTokenDetails"; -import { Shard, TestRunStatus, UploadMetadata } from "../model/shard"; -import { TestResult as MPTTestResult, RawTestResult } from "../model/testResult"; -import { TestRun, TestRunConfig } from "../model/testRun"; -import { CIInfo, CI_PROVIDERS } from "./cIInfoProvider"; +import type { UploadMetadata } from "../model/shard"; +import { Shard, TestRunStatus } from "../model/shard"; +import type { RawTestResult } from "../model/testResult"; +import { TestResult as MPTTestResult } from "../model/testResult"; +import type { TestRunConfig } from "../model/testRun"; +import { TestRun } from "../model/testRun"; +import type { CIInfo } from "./cIInfoProvider"; +import { CI_PROVIDERS } from "./cIInfoProvider"; import { CIInfoProvider } from "./cIInfoProvider"; -import { StorageUri } from "../model/storageUri"; +import type { StorageUri } from "../model/storageUri"; class ReporterUtils { private envVariables: EnvironmentVariables; diff --git a/sdk/playwrighttesting/microsoft-playwright-testing/src/utils/serviceClient.ts b/sdk/playwrighttesting/microsoft-playwright-testing/src/utils/serviceClient.ts index 62b7e576336e..63055c0999e8 100644 --- a/sdk/playwrighttesting/microsoft-playwright-testing/src/utils/serviceClient.ts +++ b/sdk/playwrighttesting/microsoft-playwright-testing/src/utils/serviceClient.ts @@ -3,15 +3,15 @@ import type { FullResult } from "@playwright/test/reporter"; import { Constants } from "../common/constants"; -import { EnvironmentVariables } from "../common/environmentVariables"; +import type { EnvironmentVariables } from "../common/environmentVariables"; import { HttpService } from "../common/httpService"; -import { Shard, UploadMetadata } from "../model/shard"; -import { StorageUri } from "../model/storageUri"; -import { TestResult } from "../model/testResult"; -import { TestRun } from "../model/testRun"; -import { CIInfo } from "./cIInfoProvider"; -import ReporterUtils from "./reporterUtils"; -import { PipelineResponse } from "@azure/core-rest-pipeline"; +import type { Shard, UploadMetadata } from "../model/shard"; +import type { StorageUri } from "../model/storageUri"; +import type { TestResult } from "../model/testResult"; +import type { TestRun } from "../model/testRun"; +import type { CIInfo } from "./cIInfoProvider"; +import type ReporterUtils from "./reporterUtils"; +import type { PipelineResponse } from "@azure/core-rest-pipeline"; import { reporterLogger } from "../common/logger"; export class ServiceClient { diff --git a/sdk/purview/purview-administration-rest/review/purview-administration.api.md b/sdk/purview/purview-administration-rest/review/purview-administration.api.md index 4cc9e2b69cf8..707de45c5e22 100644 --- a/sdk/purview/purview-administration-rest/review/purview-administration.api.md +++ b/sdk/purview/purview-administration-rest/review/purview-administration.api.md @@ -4,14 +4,14 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) interface AccessKeyOptions { diff --git a/sdk/purview/purview-administration-rest/src/account/clientDefinitions.ts b/sdk/purview/purview-administration-rest/src/account/clientDefinitions.ts index eacbced12f7e..c79bd3908bc4 100644 --- a/sdk/purview/purview-administration-rest/src/account/clientDefinitions.ts +++ b/sdk/purview/purview-administration-rest/src/account/clientDefinitions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client } from "@azure-rest/core-client"; -import { +import type { Client } from "@azure-rest/core-client"; +import type { AccountsGetAccessKeysParameters, AccountsGetAccountPropertiesParameters, AccountsRegenerateAccessKeyParameters, @@ -18,7 +18,7 @@ import { ResourceSetRulesGetResourceSetRuleParameters, ResourceSetRulesListResourceSetRulesParameters, } from "./parameters"; -import { +import type { AccountsGetAccessKeys200Response, AccountsGetAccessKeysdefaultResponse, AccountsGetAccountProperties200Response, diff --git a/sdk/purview/purview-administration-rest/src/account/paginateHelper.ts b/sdk/purview/purview-administration-rest/src/account/paginateHelper.ts index e27846d32a90..5d541b4e406d 100644 --- a/sdk/purview/purview-administration-rest/src/account/paginateHelper.ts +++ b/sdk/purview/purview-administration-rest/src/account/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/purview/purview-administration-rest/src/account/parameters.ts b/sdk/purview/purview-administration-rest/src/account/parameters.ts index da5a22e8fcd8..6d9e53bb87cb 100644 --- a/sdk/purview/purview-administration-rest/src/account/parameters.ts +++ b/sdk/purview/purview-administration-rest/src/account/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RequestParameters } from "@azure-rest/core-client"; +import type { AccessKeyOptions, Collection, DataPlaneAccountUpdateParameters, diff --git a/sdk/purview/purview-administration-rest/src/account/purviewAccount.ts b/sdk/purview/purview-administration-rest/src/account/purviewAccount.ts index c8e74d4fabe3..6d2c82f48e43 100644 --- a/sdk/purview/purview-administration-rest/src/account/purviewAccount.ts +++ b/sdk/purview/purview-administration-rest/src/account/purviewAccount.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { PurviewAccountRestClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { PurviewAccountRestClient } from "./clientDefinitions"; export function PurviewAccountClient( endpoint: string, diff --git a/sdk/purview/purview-administration-rest/src/account/responses.ts b/sdk/purview/purview-administration-rest/src/account/responses.ts index 4551a9126416..22f35a018c35 100644 --- a/sdk/purview/purview-administration-rest/src/account/responses.ts +++ b/sdk/purview/purview-administration-rest/src/account/responses.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { HttpResponse } from "@azure-rest/core-client"; +import type { AccessKeys, Account, Collection, diff --git a/sdk/purview/purview-administration-rest/src/metadataPolicies/clientDefinitions.ts b/sdk/purview/purview-administration-rest/src/metadataPolicies/clientDefinitions.ts index d2de6a5d7e6e..7d52b6913d69 100644 --- a/sdk/purview/purview-administration-rest/src/metadataPolicies/clientDefinitions.ts +++ b/sdk/purview/purview-administration-rest/src/metadataPolicies/clientDefinitions.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client } from "@azure-rest/core-client"; -import { +import type { Client } from "@azure-rest/core-client"; +import type { MetadataPolicyGetParameters, MetadataPolicyListAllParameters, MetadataPolicyUpdateParameters, MetadataRolesListParameters, } from "./parameters"; -import { +import type { MetadataPolicyGet200Response, MetadataPolicyGetdefaultResponse, MetadataPolicyListAll200Response, diff --git a/sdk/purview/purview-administration-rest/src/metadataPolicies/paginateHelper.ts b/sdk/purview/purview-administration-rest/src/metadataPolicies/paginateHelper.ts index 0d80bfd1c06e..81ee500c3e49 100644 --- a/sdk/purview/purview-administration-rest/src/metadataPolicies/paginateHelper.ts +++ b/sdk/purview/purview-administration-rest/src/metadataPolicies/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/purview/purview-administration-rest/src/metadataPolicies/parameters.ts b/sdk/purview/purview-administration-rest/src/metadataPolicies/parameters.ts index eaa711e2b885..222b7b5fff2f 100644 --- a/sdk/purview/purview-administration-rest/src/metadataPolicies/parameters.ts +++ b/sdk/purview/purview-administration-rest/src/metadataPolicies/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { MetadataPolicy } from "./models"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { MetadataPolicy } from "./models"; export type MetadataRolesListParameters = RequestParameters; diff --git a/sdk/purview/purview-administration-rest/src/metadataPolicies/purviewMetadataPolicies.ts b/sdk/purview/purview-administration-rest/src/metadataPolicies/purviewMetadataPolicies.ts index 3817cddc1e84..3c6c535789bd 100644 --- a/sdk/purview/purview-administration-rest/src/metadataPolicies/purviewMetadataPolicies.ts +++ b/sdk/purview/purview-administration-rest/src/metadataPolicies/purviewMetadataPolicies.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { PurviewMetadataPoliciesRestClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { PurviewMetadataPoliciesRestClient } from "./clientDefinitions"; export function PurviewMetadataPoliciesClient( Endpoint: string, diff --git a/sdk/purview/purview-administration-rest/src/metadataPolicies/responses.ts b/sdk/purview/purview-administration-rest/src/metadataPolicies/responses.ts index 3e0ac5fc685f..8de81e3ff31c 100644 --- a/sdk/purview/purview-administration-rest/src/metadataPolicies/responses.ts +++ b/sdk/purview/purview-administration-rest/src/metadataPolicies/responses.ts @@ -1,9 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpResponse } from "@azure-rest/core-client"; -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { ErrorResponseModel, MetadataPolicy, MetadataPolicyList, MetadataRoleList } from "./models"; +import type { HttpResponse } from "@azure-rest/core-client"; +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { + ErrorResponseModel, + MetadataPolicy, + MetadataPolicyList, + MetadataRoleList, +} from "./models"; /** Lists roles for Purview Account */ export interface MetadataRolesList200Response extends HttpResponse { diff --git a/sdk/purview/purview-administration-rest/test/public/account.spec.ts b/sdk/purview/purview-administration-rest/test/public/account.spec.ts index 81a5057ade4a..b31e8d280f74 100644 --- a/sdk/purview/purview-administration-rest/test/public/account.spec.ts +++ b/sdk/purview/purview-administration-rest/test/public/account.spec.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PurviewAccount } from "../../src"; +import type { PurviewAccount } from "../../src"; import { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createAccountClient } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Get account info", () => { let recorder: Recorder; diff --git a/sdk/purview/purview-administration-rest/test/public/collections.spec.ts b/sdk/purview/purview-administration-rest/test/public/collections.spec.ts index 473e78db90f0..08f5fd8a5d57 100644 --- a/sdk/purview/purview-administration-rest/test/public/collections.spec.ts +++ b/sdk/purview/purview-administration-rest/test/public/collections.spec.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PurviewAccount } from "../../src"; +import type { PurviewAccount } from "../../src"; import { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createAccountClient } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("List collections", () => { let recorder: Recorder; diff --git a/sdk/purview/purview-administration-rest/test/public/metadataPolicies.spec.ts b/sdk/purview/purview-administration-rest/test/public/metadataPolicies.spec.ts index 13ed79b37a9e..0b57297fe869 100644 --- a/sdk/purview/purview-administration-rest/test/public/metadataPolicies.spec.ts +++ b/sdk/purview/purview-administration-rest/test/public/metadataPolicies.spec.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PurviewMetadataPolicies } from "../../src"; +import type { PurviewMetadataPolicies } from "../../src"; import { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createMetadataClient } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("List Metadata", () => { let recorder: Recorder; diff --git a/sdk/purview/purview-administration-rest/test/public/utils/recordedClient.ts b/sdk/purview/purview-administration-rest/test/public/utils/recordedClient.ts index cfb0b13bcf2e..c28a25f62e27 100644 --- a/sdk/purview/purview-administration-rest/test/public/utils/recordedClient.ts +++ b/sdk/purview/purview-administration-rest/test/public/utils/recordedClient.ts @@ -3,16 +3,13 @@ /// -import { env, Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; -import { - PurviewAccount, - PurviewAccountClient, - PurviewMetadataPolicies, - PurviewMetadataPoliciesClient, -} from "../../../src"; +import type { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; +import type { PurviewAccount, PurviewMetadataPolicies } from "../../../src"; +import { PurviewAccountClient, PurviewMetadataPoliciesClient } from "../../../src"; import { createTestCredential } from "@azure-tools/test-credential"; -import { ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; const replaceableVariables: { [k: string]: string } = { ENDPOINT: "https://endpoint", diff --git a/sdk/purview/purview-catalog-rest/review/purview-catalog.api.md b/sdk/purview/purview-catalog-rest/review/purview-catalog.api.md index 08918a49b684..5e32b8dd37ab 100644 --- a/sdk/purview/purview-catalog-rest/review/purview-catalog.api.md +++ b/sdk/purview/purview-catalog-rest/review/purview-catalog.api.md @@ -4,14 +4,14 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { LroEngineOptions } from '@azure/core-lro'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { RequestParameters } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { LroEngineOptions } from '@azure/core-lro'; +import type { PollerLike } from '@azure/core-lro'; +import type { PollOperationState } from '@azure/core-lro'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface AtlasAttributeDef { diff --git a/sdk/purview/purview-catalog-rest/src/clientDefinitions.ts b/sdk/purview/purview-catalog-rest/src/clientDefinitions.ts index bf5dff51cbbe..b615d9eac9c8 100644 --- a/sdk/purview/purview-catalog-rest/src/clientDefinitions.ts +++ b/sdk/purview/purview-catalog-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { EntityCreateOrUpdateParameters, EntityListByGuidsParameters, EntityCreateOrUpdateEntitiesParameters, @@ -108,7 +108,7 @@ import { CollectionCreateOrUpdateBulkParameters, CollectionMoveEntitiesToCollectionParameters, } from "./parameters"; -import { +import type { EntityCreateOrUpdate200Response, EntityCreateOrUpdatedefaultResponse, EntityListByGuids200Response, @@ -312,7 +312,7 @@ import { CollectionMoveEntitiesToCollection200Response, CollectionMoveEntitiesToCollectiondefaultResponse, } from "./responses"; -import { Client } from "@azure-rest/core-client"; +import type { Client } from "@azure-rest/core-client"; export interface EntityCreateOrUpdate { /** diff --git a/sdk/purview/purview-catalog-rest/src/parameters.ts b/sdk/purview/purview-catalog-rest/src/parameters.ts index e147e2acd39a..b43d8520585e 100644 --- a/sdk/purview/purview-catalog-rest/src/parameters.ts +++ b/sdk/purview/purview-catalog-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RequestParameters } from "@azure-rest/core-client"; +import type { AtlasEntityWithExtInfo, AtlasEntitiesWithExtInfo, ClassificationAssociateRequest, diff --git a/sdk/purview/purview-catalog-rest/src/pollingHelper.ts b/sdk/purview/purview-catalog-rest/src/pollingHelper.ts index 8adbf36ab4d5..914ab5dd8d01 100644 --- a/sdk/purview/purview-catalog-rest/src/pollingHelper.ts +++ b/sdk/purview/purview-catalog-rest/src/pollingHelper.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { LongRunningOperation, - LroEngine, LroEngineOptions, LroResponse, PollerLike, PollOperationState, } from "@azure/core-lro"; +import { LroEngine } from "@azure/core-lro"; /** * Helper function that builds a Poller object to help polling a long running operation. diff --git a/sdk/purview/purview-catalog-rest/src/purviewCatalog.ts b/sdk/purview/purview-catalog-rest/src/purviewCatalog.ts index 41981a44327e..68c96a983a34 100644 --- a/sdk/purview/purview-catalog-rest/src/purviewCatalog.ts +++ b/sdk/purview/purview-catalog-rest/src/purviewCatalog.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { PurviewCatalogClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { PurviewCatalogClient } from "./clientDefinitions"; export default function createClient( Endpoint: string, diff --git a/sdk/purview/purview-catalog-rest/src/responses.ts b/sdk/purview/purview-catalog-rest/src/responses.ts index 82071b1c8032..51f5f00fc9d8 100644 --- a/sdk/purview/purview-catalog-rest/src/responses.ts +++ b/sdk/purview/purview-catalog-rest/src/responses.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { HttpResponse } from "@azure-rest/core-client"; +import type { EntityMutationResponseOutput, ErrorResponseOutput, AtlasEntitiesWithExtInfoOutput, diff --git a/sdk/purview/purview-catalog-rest/test/public/glossary.spec.ts b/sdk/purview/purview-catalog-rest/test/public/glossary.spec.ts index 8a8ab770ab7f..3df0c3a1339b 100644 --- a/sdk/purview/purview-catalog-rest/test/public/glossary.spec.ts +++ b/sdk/purview/purview-catalog-rest/test/public/glossary.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getLongRunningPoller, PurviewCatalogClient } from "../../src"; +import type { PurviewCatalogClient } from "../../src"; +import { getLongRunningPoller } from "../../src"; import { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createClient } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("purview catalog glossary test", () => { let recorder: Recorder; diff --git a/sdk/purview/purview-catalog-rest/test/public/typedefs.spec.ts b/sdk/purview/purview-catalog-rest/test/public/typedefs.spec.ts index 134748df989c..2f69ce5270d9 100644 --- a/sdk/purview/purview-catalog-rest/test/public/typedefs.spec.ts +++ b/sdk/purview/purview-catalog-rest/test/public/typedefs.spec.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PurviewCatalogClient } from "../../src"; +import type { PurviewCatalogClient } from "../../src"; import { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createClient } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("purview catalog tepedefs test", () => { let recorder: Recorder; diff --git a/sdk/purview/purview-catalog-rest/test/public/utils/recordedClient.ts b/sdk/purview/purview-catalog-rest/test/public/utils/recordedClient.ts index 872540922fa3..bf36f1e42d90 100644 --- a/sdk/purview/purview-catalog-rest/test/public/utils/recordedClient.ts +++ b/sdk/purview/purview-catalog-rest/test/public/utils/recordedClient.ts @@ -3,11 +3,13 @@ /// -import PurviewCatalog, { PurviewCatalogClient } from "../../../src"; +import type { PurviewCatalogClient } from "../../../src"; +import PurviewCatalog from "../../../src"; import { createTestCredential } from "@azure-tools/test-credential"; -import { ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; -import { env, Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; const replaceableVariables: { [k: string]: string } = { ENDPOINT: "https://endpoint/", diff --git a/sdk/purview/purview-datamap-rest/package.json b/sdk/purview/purview-datamap-rest/package.json index 91ee7c3731bb..5a10e2f1e7cb 100644 --- a/sdk/purview/purview-datamap-rest/package.json +++ b/sdk/purview/purview-datamap-rest/package.json @@ -85,7 +85,7 @@ "karma-chrome-launcher": "catalog:legacy", "karma-coverage": "catalog:legacy", "karma-env-preprocessor": "catalog:legacy", - "karma-firefox-launcher": "^2.1.2", + "karma-firefox-launcher": "catalog:legacy", "karma-junit-reporter": "catalog:legacy", "karma-mocha": "catalog:legacy", "karma-mocha-reporter": "catalog:legacy", diff --git a/sdk/purview/purview-datamap-rest/review/purview-datamap.api.md b/sdk/purview/purview-datamap-rest/review/purview-datamap.api.md index d665f53c37a3..ef6ac0e217c0 100644 --- a/sdk/purview/purview-datamap-rest/review/purview-datamap.api.md +++ b/sdk/purview/purview-datamap-rest/review/purview-datamap.api.md @@ -4,16 +4,16 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; import { createFile } from '@azure/core-rest-pipeline'; import { createFileFromStream } from '@azure/core-rest-pipeline'; import { CreateFileFromStreamOptions } from '@azure/core-rest-pipeline'; import { CreateFileOptions } from '@azure/core-rest-pipeline'; -import { HttpResponse } from '@azure-rest/core-client'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AtlasAttributeDef { diff --git a/sdk/purview/purview-datamap-rest/src/clientDefinitions.ts b/sdk/purview/purview-datamap-rest/src/clientDefinitions.ts index 3448f97f3429..73b8b0274a78 100644 --- a/sdk/purview/purview-datamap-rest/src/clientDefinitions.ts +++ b/sdk/purview/purview-datamap-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { EntityCreateOrUpdateParameters, EntityListByGuidsParameters, EntityBulkCreateOrUpdateParameters, @@ -99,7 +99,7 @@ import { TypeGetTermTemplateDefByGuidParameters, TypeGetTermTemplateDefByNameParameters, } from "./parameters"; -import { +import type { EntityCreateOrUpdate200Response, EntityCreateOrUpdateDefaultResponse, EntityListByGuids200Response, @@ -293,7 +293,7 @@ import { TypeGetTermTemplateDefByName200Response, TypeGetTermTemplateDefByNameDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface EntityCreateOrUpdate { /** diff --git a/sdk/purview/purview-datamap-rest/src/isUnexpected.ts b/sdk/purview/purview-datamap-rest/src/isUnexpected.ts index 4cb49067b3b8..b7bcb11fc1be 100644 --- a/sdk/purview/purview-datamap-rest/src/isUnexpected.ts +++ b/sdk/purview/purview-datamap-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { EntityCreateOrUpdate200Response, EntityCreateOrUpdateDefaultResponse, EntityListByGuids200Response, diff --git a/sdk/purview/purview-datamap-rest/src/parameters.ts b/sdk/purview/purview-datamap-rest/src/parameters.ts index be8c10bb3b03..3fa3fdef34e1 100644 --- a/sdk/purview/purview-datamap-rest/src/parameters.ts +++ b/sdk/purview/purview-datamap-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RequestParameters } from "@azure-rest/core-client"; +import type { AtlasEntityWithExtInfo, AtlasEntitiesWithExtInfo, ClassificationAssociateOptions, diff --git a/sdk/purview/purview-datamap-rest/src/purviewDataMapClient.ts b/sdk/purview/purview-datamap-rest/src/purviewDataMapClient.ts index 4546ec885fe4..a6124544f057 100644 --- a/sdk/purview/purview-datamap-rest/src/purviewDataMapClient.ts +++ b/sdk/purview/purview-datamap-rest/src/purviewDataMapClient.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "./logger"; -import { TokenCredential } from "@azure/core-auth"; -import { PurviewDataMapClient } from "./clientDefinitions"; +import type { TokenCredential } from "@azure/core-auth"; +import type { PurviewDataMapClient } from "./clientDefinitions"; /** * Initialize a new instance of `PurviewDataMapClient` diff --git a/sdk/purview/purview-datamap-rest/src/responses.ts b/sdk/purview/purview-datamap-rest/src/responses.ts index d5f89fcfc9a9..4b28deebd192 100644 --- a/sdk/purview/purview-datamap-rest/src/responses.ts +++ b/sdk/purview/purview-datamap-rest/src/responses.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { HttpResponse } from "@azure-rest/core-client"; +import type { EntityMutationResultOutput, AtlasErrorResponseOutput, AtlasEntitiesWithExtInfoOutput, diff --git a/sdk/purview/purview-datamap-rest/test/public/entityTest.spec.ts b/sdk/purview/purview-datamap-rest/test/public/entityTest.spec.ts index b6c79ab45eb7..1ab7cb8b493e 100644 --- a/sdk/purview/purview-datamap-rest/test/public/entityTest.spec.ts +++ b/sdk/purview/purview-datamap-rest/test/public/entityTest.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createClient } from "./utils/recordedClient"; import { createFile } from "../../src/index"; import { isUnexpected } from "../../src/isUnexpected"; diff --git a/sdk/purview/purview-datamap-rest/test/public/glossary.spec.ts b/sdk/purview/purview-datamap-rest/test/public/glossary.spec.ts index 1de093802ba7..8b32cc38b342 100644 --- a/sdk/purview/purview-datamap-rest/test/public/glossary.spec.ts +++ b/sdk/purview/purview-datamap-rest/test/public/glossary.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { createRecorder } from "./utils/recordedClient"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createClient } from "./utils/recordedClient"; import { isUnexpected } from "../../src/isUnexpected"; diff --git a/sdk/purview/purview-datamap-rest/test/public/typedefs.spec.ts b/sdk/purview/purview-datamap-rest/test/public/typedefs.spec.ts index 5f276a179533..a0a17fdd2b75 100644 --- a/sdk/purview/purview-datamap-rest/test/public/typedefs.spec.ts +++ b/sdk/purview/purview-datamap-rest/test/public/typedefs.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createClient } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createRecorder } from "./utils/recordedClient"; import { isUnexpected } from "../../src/isUnexpected"; diff --git a/sdk/purview/purview-datamap-rest/test/public/utils/recordedClient.ts b/sdk/purview/purview-datamap-rest/test/public/utils/recordedClient.ts index cd0a058c16c9..61432f9e7a94 100644 --- a/sdk/purview/purview-datamap-rest/test/public/utils/recordedClient.ts +++ b/sdk/purview/purview-datamap-rest/test/public/utils/recordedClient.ts @@ -1,12 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import PurviewDataMap, { PurviewDataMapClient } from "../../../src"; -import { env, Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { PurviewDataMapClient } from "../../../src"; +import PurviewDataMap from "../../../src"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { env, Recorder } from "@azure-tools/test-recorder"; import { createTestCredential } from "@azure-tools/test-credential"; import "./env"; -import { ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; const envSetupForPlayback: Record = { ENDPOINT: "https://fakeAccount.purview.azure.com/", diff --git a/sdk/purview/purview-scanning-rest/review/purview-scanning.api.md b/sdk/purview/purview-scanning-rest/review/purview-scanning.api.md index 9549b73e0973..ba9654e91472 100644 --- a/sdk/purview/purview-scanning-rest/review/purview-scanning.api.md +++ b/sdk/purview/purview-scanning-rest/review/purview-scanning.api.md @@ -4,13 +4,13 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { RequestParameters } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface AdlsGen1CredentialScan extends ScanBase { @@ -2528,7 +2528,6 @@ export interface ProxyResource { // @public (undocumented) function PurviewScanning(Endpoint: string, credentials: TokenCredential, options?: ClientOptions): PurviewScanningRestClient; - export default PurviewScanning; // @public (undocumented) @@ -3816,7 +3815,6 @@ export interface VersionedScanRuleset extends ProxyResource { version?: number; } - // (No @packageDocumentation comment for this package) ``` diff --git a/sdk/purview/purview-scanning-rest/src/paginateHelper.ts b/sdk/purview/purview-scanning-rest/src/paginateHelper.ts index e27846d32a90..5d541b4e406d 100644 --- a/sdk/purview/purview-scanning-rest/src/paginateHelper.ts +++ b/sdk/purview/purview-scanning-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/purview/purview-scanning-rest/src/parameters.ts b/sdk/purview/purview-scanning-rest/src/parameters.ts index 217fd92d9e22..5585bb99992b 100644 --- a/sdk/purview/purview-scanning-rest/src/parameters.ts +++ b/sdk/purview/purview-scanning-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RequestParameters } from "@azure-rest/core-client"; +import type { AzureKeyVault, ClassificationRule, DataSource, diff --git a/sdk/purview/purview-scanning-rest/src/purviewScanning.ts b/sdk/purview/purview-scanning-rest/src/purviewScanning.ts index e678ec440ab9..22e1c9878a41 100644 --- a/sdk/purview/purview-scanning-rest/src/purviewScanning.ts +++ b/sdk/purview/purview-scanning-rest/src/purviewScanning.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { KeyVaultConnectionsGetParameters, KeyVaultConnectionsCreateParameters, KeyVaultConnectionsDeleteParameters, @@ -38,7 +38,7 @@ import { TriggersCreateTriggerParameters, TriggersDeleteTriggerParameters, } from "./parameters"; -import { +import type { KeyVaultConnectionsGet200Response, KeyVaultConnectionsGetdefaultResponse, KeyVaultConnectionsCreate200Response, @@ -122,8 +122,9 @@ import { TriggersDeleteTrigger204Response, TriggersDeleteTriggerdefaultResponse, } from "./responses"; -import { getClient, ClientOptions, Client } from "@azure-rest/core-client"; -import { TokenCredential } from "@azure/core-auth"; +import type { ClientOptions, Client } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; export interface KeyVaultConnectionsGet { /** Gets key vault information */ diff --git a/sdk/purview/purview-scanning-rest/src/responses.ts b/sdk/purview/purview-scanning-rest/src/responses.ts index df73d4a3aef0..0e8f58c3da1e 100644 --- a/sdk/purview/purview-scanning-rest/src/responses.ts +++ b/sdk/purview/purview-scanning-rest/src/responses.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { HttpResponse } from "@azure-rest/core-client"; +import type { AzureKeyVault, ErrorResponseModel, AzureKeyVaultList, diff --git a/sdk/purview/purview-scanning-rest/test/public/dataSources.spec.ts b/sdk/purview/purview-scanning-rest/test/public/dataSources.spec.ts index 6fc746e54dc3..cb6aecdbe5b5 100644 --- a/sdk/purview/purview-scanning-rest/test/public/dataSources.spec.ts +++ b/sdk/purview/purview-scanning-rest/test/public/dataSources.spec.ts @@ -1,12 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PurviewScanningRestClient, paginate, DataSource } from "../../src"; +import type { PurviewScanningRestClient, DataSource } from "../../src"; +import { paginate } from "../../src"; import { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createClient } from "./utils/recordedClient"; -import { Context } from "mocha"; -import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import type { Context } from "mocha"; +import type { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; describe("List data sources", () => { let recorder: Recorder; diff --git a/sdk/purview/purview-scanning-rest/test/public/utils/recordedClient.ts b/sdk/purview/purview-scanning-rest/test/public/utils/recordedClient.ts index bd42004676f1..91579304227f 100644 --- a/sdk/purview/purview-scanning-rest/test/public/utils/recordedClient.ts +++ b/sdk/purview/purview-scanning-rest/test/public/utils/recordedClient.ts @@ -3,10 +3,12 @@ /// -import PurviewScanning, { PurviewScanningRestClient } from "../../../src"; -import { Recorder, RecorderStartOptions, env } from "@azure-tools/test-recorder"; +import type { PurviewScanningRestClient } from "../../../src"; +import PurviewScanning from "../../../src"; +import type { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; -import { ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; import { createTestCredential } from "@azure-tools/test-credential"; const replaceableVariables: { [k: string]: string } = { diff --git a/sdk/purview/purview-sharing-rest/review/purview-sharing.api.md b/sdk/purview/purview-sharing-rest/review/purview-sharing.api.md index 088602442110..4addf4e91d6e 100644 --- a/sdk/purview/purview-sharing-rest/review/purview-sharing.api.md +++ b/sdk/purview/purview-sharing-rest/review/purview-sharing.api.md @@ -4,19 +4,19 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { CreateHttpPollerOptions } from '@azure/core-lro'; -import { HttpResponse } from '@azure-rest/core-client'; -import { OperationState } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RawHttpHeadersInput } 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'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { CreateHttpPollerOptions } from '@azure/core-lro'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { OperationState } from '@azure/core-lro'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { SimplePollerLike } from '@azure/core-lro'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AdlsGen2AccountSink extends SinkParent { diff --git a/sdk/purview/purview-sharing-rest/src/clientDefinitions.ts b/sdk/purview/purview-sharing-rest/src/clientDefinitions.ts index bf637092da98..50b03bb27f30 100644 --- a/sdk/purview/purview-sharing-rest/src/clientDefinitions.ts +++ b/sdk/purview/purview-sharing-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ReceivedSharesGetReceivedShareParameters, ReceivedSharesCreateOrReplaceParameters, ReceivedSharesDeleteReceivedShareParameters, @@ -20,7 +20,7 @@ import { SentSharesNotifyUserSentShareInvitationParameters, ShareResourcesGetAllShareResourcesParameters, } from "./parameters"; -import { +import type { ReceivedSharesGetReceivedShare200Response, ReceivedSharesGetReceivedShareDefaultResponse, ReceivedSharesCreateOrReplace200Response, @@ -58,7 +58,7 @@ import { ShareResourcesGetAllShareResources200Response, ShareResourcesGetAllShareResourcesDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface ReceivedSharesGetReceivedShare { /** Get a received share */ diff --git a/sdk/purview/purview-sharing-rest/src/isUnexpected.ts b/sdk/purview/purview-sharing-rest/src/isUnexpected.ts index a677ec0392f6..0445d4c4b75a 100644 --- a/sdk/purview/purview-sharing-rest/src/isUnexpected.ts +++ b/sdk/purview/purview-sharing-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ReceivedSharesGetReceivedShare200Response, ReceivedSharesGetReceivedShareDefaultResponse, ReceivedSharesCreateOrReplace200Response, diff --git a/sdk/purview/purview-sharing-rest/src/paginateHelper.ts b/sdk/purview/purview-sharing-rest/src/paginateHelper.ts index e27846d32a90..5d541b4e406d 100644 --- a/sdk/purview/purview-sharing-rest/src/paginateHelper.ts +++ b/sdk/purview/purview-sharing-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/purview/purview-sharing-rest/src/parameters.ts b/sdk/purview/purview-sharing-rest/src/parameters.ts index 51b8257b119e..94e9e0c3aa4d 100644 --- a/sdk/purview/purview-sharing-rest/src/parameters.ts +++ b/sdk/purview/purview-sharing-rest/src/parameters.ts @@ -1,9 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; -import { RequestParameters } from "@azure-rest/core-client"; -import { ReceivedShare, TenantEmailRegistration, SentShare, SentShareInvitation } from "./models"; +import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { + ReceivedShare, + TenantEmailRegistration, + SentShare, + SentShareInvitation, +} from "./models"; export type ReceivedSharesGetReceivedShareParameters = RequestParameters; diff --git a/sdk/purview/purview-sharing-rest/src/pollingHelper.ts b/sdk/purview/purview-sharing-rest/src/pollingHelper.ts index 14134fd92779..a54710cc33bd 100644 --- a/sdk/purview/purview-sharing-rest/src/pollingHelper.ts +++ b/sdk/purview/purview-sharing-rest/src/pollingHelper.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { CreateHttpPollerOptions, LongRunningOperation, LroResponse, OperationState, SimplePollerLike, - createHttpPoller, } from "@azure/core-lro"; +import { createHttpPoller } from "@azure/core-lro"; /** * 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. diff --git a/sdk/purview/purview-sharing-rest/src/purviewSharing.ts b/sdk/purview/purview-sharing-rest/src/purviewSharing.ts index fb191bc58fed..37500492ec5e 100644 --- a/sdk/purview/purview-sharing-rest/src/purviewSharing.ts +++ b/sdk/purview/purview-sharing-rest/src/purviewSharing.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { PurviewSharingClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { PurviewSharingClient } from "./clientDefinitions"; /** * Initialize a new instance of `PurviewSharingClient` diff --git a/sdk/purview/purview-sharing-rest/src/responses.ts b/sdk/purview/purview-sharing-rest/src/responses.ts index a66c81a478ba..63eada39bbb9 100644 --- a/sdk/purview/purview-sharing-rest/src/responses.ts +++ b/sdk/purview/purview-sharing-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse } from "@azure-rest/core-client"; +import type { ReceivedShareOutput, PurviewShareErrorOutput, OperationResponseOutput, diff --git a/sdk/purview/purview-sharing-rest/test/public/receivedSharesTest.spec.ts b/sdk/purview/purview-sharing-rest/test/public/receivedSharesTest.spec.ts index 1219f1af0d9e..50f165f4800b 100644 --- a/sdk/purview/purview-sharing-rest/test/public/receivedSharesTest.spec.ts +++ b/sdk/purview/purview-sharing-rest/test/public/receivedSharesTest.spec.ts @@ -1,18 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - getLongRunningPoller, +import type { InPlaceReceivedShareOutput, - isUnexpected, OperationResponseOutput, PurviewSharingClient, ReceivedShareListOutput, } from "../../src"; -import { env, isPlaybackMode, Recorder } from "@azure-tools/test-recorder"; +import { getLongRunningPoller, isUnexpected } from "../../src"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createClient, createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Received Shares Operations", () => { let recorder: Recorder; diff --git a/sdk/purview/purview-sharing-rest/test/public/sentSharesTest.spec.ts b/sdk/purview/purview-sharing-rest/test/public/sentSharesTest.spec.ts index e78db7ed2554..f4617cc69912 100644 --- a/sdk/purview/purview-sharing-rest/test/public/sentSharesTest.spec.ts +++ b/sdk/purview/purview-sharing-rest/test/public/sentSharesTest.spec.ts @@ -1,10 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - getLongRunningPoller, +import type { InPlaceSentShareOutput, - isUnexpected, OperationResponseOutput, PurviewSharingClient, SentShareInvitationListOutput, @@ -12,10 +10,12 @@ import { ServiceInvitationOutput, UserInvitationOutput, } from "../../src"; -import { env, isPlaybackMode, Recorder } from "@azure-tools/test-recorder"; +import { getLongRunningPoller, isUnexpected } from "../../src"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createClient, createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Sent Shares Operations", () => { let recorder: Recorder; diff --git a/sdk/purview/purview-sharing-rest/test/public/shareResourcesTest.spec.ts b/sdk/purview/purview-sharing-rest/test/public/shareResourcesTest.spec.ts index e0b0d686ab77..416f633df48d 100644 --- a/sdk/purview/purview-sharing-rest/test/public/shareResourcesTest.spec.ts +++ b/sdk/purview/purview-sharing-rest/test/public/shareResourcesTest.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { isUnexpected, paginate, PurviewSharingClient, ShareResourceOutput } from "../../src"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { PurviewSharingClient, ShareResourceOutput } from "../../src"; +import { isUnexpected, paginate } from "../../src"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createClient, createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Share Resources Operations", () => { let recorder: Recorder; diff --git a/sdk/purview/purview-sharing-rest/test/public/utils/recordedClient.ts b/sdk/purview/purview-sharing-rest/test/public/utils/recordedClient.ts index 2e75e102f75e..a5db65e5cd9e 100644 --- a/sdk/purview/purview-sharing-rest/test/public/utils/recordedClient.ts +++ b/sdk/purview/purview-sharing-rest/test/public/utils/recordedClient.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { env, Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { env, Recorder } from "@azure-tools/test-recorder"; import { createTestCredential } from "@azure-tools/test-credential"; -import PurviewSharing, { PurviewSharingClient } from "../../../src"; -import { ClientOptions } from "@azure-rest/core-client"; +import type { PurviewSharingClient } from "../../../src"; +import PurviewSharing from "../../../src"; +import type { ClientOptions } from "@azure-rest/core-client"; const envSetupForPlayback: Record = { ENDPOINT: "https://accountname.purview.azure.com/share", diff --git a/sdk/purview/purview-workflow-rest/review/purview-workflow.api.md b/sdk/purview/purview-workflow-rest/review/purview-workflow.api.md index f4cc6f5cd26a..6e8611dd7ae2 100644 --- a/sdk/purview/purview-workflow-rest/review/purview-workflow.api.md +++ b/sdk/purview/purview-workflow-rest/review/purview-workflow.api.md @@ -4,14 +4,14 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface ApprovalDetailOutput { diff --git a/sdk/purview/purview-workflow-rest/src/clientDefinitions.ts b/sdk/purview/purview-workflow-rest/src/clientDefinitions.ts index 7d55600bce4a..0abb192522e4 100644 --- a/sdk/purview/purview-workflow-rest/src/clientDefinitions.ts +++ b/sdk/purview/purview-workflow-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ListWorkflowsParameters, GetWorkflowParameters, CreateOrReplaceWorkflowParameters, @@ -17,7 +17,7 @@ import { ReassignWorkflowTaskParameters, UpdateTaskStatusParameters, } from "./parameters"; -import { +import type { ListWorkflows200Response, ListWorkflowsDefaultResponse, GetWorkflow200Response, @@ -47,7 +47,7 @@ import { UpdateTaskStatus200Response, UpdateTaskStatusDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface ListWorkflows { /** List all workflows. */ diff --git a/sdk/purview/purview-workflow-rest/src/isUnexpected.ts b/sdk/purview/purview-workflow-rest/src/isUnexpected.ts index ff6cbe5c82b3..236fb20e39d0 100644 --- a/sdk/purview/purview-workflow-rest/src/isUnexpected.ts +++ b/sdk/purview/purview-workflow-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ListWorkflows200Response, ListWorkflowsDefaultResponse, GetWorkflow200Response, diff --git a/sdk/purview/purview-workflow-rest/src/paginateHelper.ts b/sdk/purview/purview-workflow-rest/src/paginateHelper.ts index e27846d32a90..5d541b4e406d 100644 --- a/sdk/purview/purview-workflow-rest/src/paginateHelper.ts +++ b/sdk/purview/purview-workflow-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/purview/purview-workflow-rest/src/parameters.ts b/sdk/purview/purview-workflow-rest/src/parameters.ts index bc0d13f4021c..e5c1e5380f49 100644 --- a/sdk/purview/purview-workflow-rest/src/parameters.ts +++ b/sdk/purview/purview-workflow-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RequestParameters } from "@azure-rest/core-client"; +import type { WorkflowCreateOrUpdateCommand, UserRequestPayload, WorkflowRunCancelRequest, diff --git a/sdk/purview/purview-workflow-rest/src/purviewWorkflow.ts b/sdk/purview/purview-workflow-rest/src/purviewWorkflow.ts index 07266d6a52c4..12174620dc64 100644 --- a/sdk/purview/purview-workflow-rest/src/purviewWorkflow.ts +++ b/sdk/purview/purview-workflow-rest/src/purviewWorkflow.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { PurviewWorkflowClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { PurviewWorkflowClient } from "./clientDefinitions"; /** * Initialize a new instance of `PurviewWorkflowClient` diff --git a/sdk/purview/purview-workflow-rest/src/responses.ts b/sdk/purview/purview-workflow-rest/src/responses.ts index 104cef334dbf..277b43696083 100644 --- a/sdk/purview/purview-workflow-rest/src/responses.ts +++ b/sdk/purview/purview-workflow-rest/src/responses.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { HttpResponse } from "@azure-rest/core-client"; +import type { WorkflowMetadataListOutput, ErrorResponseOutput, WorkflowOutput, diff --git a/sdk/purview/purview-workflow-rest/test/public/userrequest.spec.ts b/sdk/purview/purview-workflow-rest/test/public/userrequest.spec.ts index 6143e8f6dd16..9d8609b8e879 100644 --- a/sdk/purview/purview-workflow-rest/test/public/userrequest.spec.ts +++ b/sdk/purview/purview-workflow-rest/test/public/userrequest.spec.ts @@ -5,9 +5,9 @@ import { Recorder } from "@azure-tools/test-recorder"; import { createClient } from "./utils/recordedClient"; -import { Context } from "mocha"; -import { PurviewWorkflowClient } from "../../src/clientDefinitions"; -import { SubmitUserRequestsParameters } from "../../src/parameters"; +import type { Context } from "mocha"; +import type { PurviewWorkflowClient } from "../../src/clientDefinitions"; +import type { SubmitUserRequestsParameters } from "../../src/parameters"; import { isUnexpected } from "../../src/isUnexpected"; import { assert } from "chai"; diff --git a/sdk/purview/purview-workflow-rest/test/public/utils/recordedClient.ts b/sdk/purview/purview-workflow-rest/test/public/utils/recordedClient.ts index edccad923018..0c2972108c9b 100644 --- a/sdk/purview/purview-workflow-rest/test/public/utils/recordedClient.ts +++ b/sdk/purview/purview-workflow-rest/test/public/utils/recordedClient.ts @@ -1,13 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, RecorderStartOptions, env, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import "./env"; -import { ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; import { UsernamePasswordCredential } from "@azure/identity"; import { NoOpCredential } from "@azure-tools/test-credential"; -import PurviewWorkflow, { PurviewWorkflowClient } from "../../../src"; +import type { PurviewWorkflowClient } from "../../../src"; +import PurviewWorkflow from "../../../src"; const envSetupForPlayback: Record = { ENDPOINT: "https://endpoint", diff --git a/sdk/purview/purview-workflow-rest/test/public/workflow.spec.ts b/sdk/purview/purview-workflow-rest/test/public/workflow.spec.ts index 039b87b19ecd..2e130e07eaf9 100644 --- a/sdk/purview/purview-workflow-rest/test/public/workflow.spec.ts +++ b/sdk/purview/purview-workflow-rest/test/public/workflow.spec.ts @@ -5,9 +5,9 @@ import { Recorder } from "@azure-tools/test-recorder"; import { createClient } from "./utils/recordedClient"; -import { Context } from "mocha"; -import { PurviewWorkflowClient } from "../../src/clientDefinitions"; -import { CreateOrReplaceWorkflowParameters } from "../../src/parameters"; +import type { Context } from "mocha"; +import type { PurviewWorkflowClient } from "../../src/clientDefinitions"; +import type { CreateOrReplaceWorkflowParameters } from "../../src/parameters"; import { isUnexpected } from "../../src/isUnexpected"; import { assert } from "chai"; diff --git a/sdk/purview/purview-workflow-rest/test/public/workflowtasks.spec.ts b/sdk/purview/purview-workflow-rest/test/public/workflowtasks.spec.ts index 2c559aa29f63..01ebec91d1ef 100644 --- a/sdk/purview/purview-workflow-rest/test/public/workflowtasks.spec.ts +++ b/sdk/purview/purview-workflow-rest/test/public/workflowtasks.spec.ts @@ -5,9 +5,12 @@ import { Recorder } from "@azure-tools/test-recorder"; import { createClient } from "./utils/recordedClient"; -import { Context } from "mocha"; -import { PurviewWorkflowClient } from "../../src/clientDefinitions"; -import { ApproveApprovalTaskParameters, RejectApprovalTaskParameters } from "../../src/parameters"; +import type { Context } from "mocha"; +import type { PurviewWorkflowClient } from "../../src/clientDefinitions"; +import type { + ApproveApprovalTaskParameters, + RejectApprovalTaskParameters, +} from "../../src/parameters"; import { isUnexpected } from "../../src/isUnexpected"; describe("Operate the workflow task.", () => { diff --git a/sdk/quantum/quantum-jobs/test/public/quantumJobClient.spec.ts b/sdk/quantum/quantum-jobs/test/public/quantumJobClient.spec.ts index e851fae185bb..198e49c3d5ef 100644 --- a/sdk/quantum/quantum-jobs/test/public/quantumJobClient.spec.ts +++ b/sdk/quantum/quantum-jobs/test/public/quantumJobClient.spec.ts @@ -2,14 +2,14 @@ // Licensed under the MIT License. import { ContainerClient, BlockBlobClient } from "@azure/storage-blob"; -import { QuantumJobClient } from "../../src"; +import type { QuantumJobClient } from "../../src"; import { authenticate } from "../utils/testAuthentication"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; import * as fs from "fs"; -import { TokenCredential } from "@azure/identity"; +import type { TokenCredential } from "@azure/identity"; import { isPlaybackMode } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { getRecorderUniqueVariable } from "../utils/recorderUtils"; describe("Quantum job lifecycle", () => { diff --git a/sdk/quantum/quantum-jobs/test/utils/recorderUtils.ts b/sdk/quantum/quantum-jobs/test/utils/recorderUtils.ts index cdcfb2d1c3d9..c5c0c683dcfb 100644 --- a/sdk/quantum/quantum-jobs/test/utils/recorderUtils.ts +++ b/sdk/quantum/quantum-jobs/test/utils/recorderUtils.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, RecorderStartOptions, SanitizerOptions, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder, RecorderStartOptions, SanitizerOptions} from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; type UriSanitizers = Required["sanitizerOptions"]["uriSanitizers"]; type BodyKeySanitizers = Required["sanitizerOptions"]["bodyKeySanitizers"]; diff --git a/sdk/quantum/quantum-jobs/test/utils/testAuthentication.ts b/sdk/quantum/quantum-jobs/test/utils/testAuthentication.ts index fe8a685bbc0e..1edd17cee6c8 100644 --- a/sdk/quantum/quantum-jobs/test/utils/testAuthentication.ts +++ b/sdk/quantum/quantum-jobs/test/utils/testAuthentication.ts @@ -5,7 +5,7 @@ import { QuantumJobClient } from "../../src"; import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { createTestCredential } from "@azure-tools/test-credential"; import { getSanitizers } from "./recorderUtils"; -import { Test } from "mocha"; +import type { Test } from "mocha"; export async function authenticate(testContext: Test | undefined): Promise { const recorder = new Recorder(testContext); diff --git a/sdk/remoterendering/mixed-reality-remote-rendering/review/mixed-reality-remote-rendering.api.md b/sdk/remoterendering/mixed-reality-remote-rendering/review/mixed-reality-remote-rendering.api.md index d8fd68819d26..72fe111218b5 100644 --- a/sdk/remoterendering/mixed-reality-remote-rendering/review/mixed-reality-remote-rendering.api.md +++ b/sdk/remoterendering/mixed-reality-remote-rendering/review/mixed-reality-remote-rendering.api.md @@ -4,16 +4,16 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; -import { AccessToken } from '@azure/core-auth'; +import type { AbortSignalLike } from '@azure/abort-controller'; +import type { AccessToken } from '@azure/core-auth'; import { AzureKeyCredential } from '@azure/core-auth'; -import { CancelOnProgress } from '@azure/core-lro'; -import { CommonClientOptions } from '@azure/core-client'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { TokenCredential } from '@azure/core-auth'; +import type { CancelOnProgress } from '@azure/core-lro'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PollerLike } from '@azure/core-lro'; +import type { PollOperationState } from '@azure/core-lro'; +import type { TokenCredential } from '@azure/core-auth'; // @public export type AssetConversion = NonStartedAssetConversion | RunningAssetConversion | SucceededAssetConversion | FailedAssetConversion | CancelledAssetConversion; diff --git a/sdk/remoterendering/mixed-reality-remote-rendering/src/authentication/mixedRealityAccountKeyCredential.ts b/sdk/remoterendering/mixed-reality-remote-rendering/src/authentication/mixedRealityAccountKeyCredential.ts index e7c857728e57..18caa7e2b95f 100644 --- a/sdk/remoterendering/mixed-reality-remote-rendering/src/authentication/mixedRealityAccountKeyCredential.ts +++ b/sdk/remoterendering/mixed-reality-remote-rendering/src/authentication/mixedRealityAccountKeyCredential.ts @@ -1,7 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, KeyCredential, TokenCredential } from "@azure/core-auth"; +import type { + AccessToken, + GetTokenOptions, + KeyCredential, + TokenCredential, +} from "@azure/core-auth"; const maxTimestampMs = 8640000000000000; diff --git a/sdk/remoterendering/mixed-reality-remote-rendering/src/authentication/mixedRealityTokenCredential.ts b/sdk/remoterendering/mixed-reality-remote-rendering/src/authentication/mixedRealityTokenCredential.ts index 895058bc703c..ac5134792324 100644 --- a/sdk/remoterendering/mixed-reality-remote-rendering/src/authentication/mixedRealityTokenCredential.ts +++ b/sdk/remoterendering/mixed-reality-remote-rendering/src/authentication/mixedRealityTokenCredential.ts @@ -1,12 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import { - MixedRealityStsClient, - MixedRealityStsClientOptions, -} from "@azure/mixed-reality-authentication"; +import type { MixedRealityStsClientOptions } from "@azure/mixed-reality-authentication"; +import { MixedRealityStsClient } from "@azure/mixed-reality-authentication"; /** * Represents a token credential that can be used to access a Mixed Reality service. diff --git a/sdk/remoterendering/mixed-reality-remote-rendering/src/authentication/staticAccessTokenCredential.ts b/sdk/remoterendering/mixed-reality-remote-rendering/src/authentication/staticAccessTokenCredential.ts index b7e991896068..0094c5718178 100644 --- a/sdk/remoterendering/mixed-reality-remote-rendering/src/authentication/staticAccessTokenCredential.ts +++ b/sdk/remoterendering/mixed-reality-remote-rendering/src/authentication/staticAccessTokenCredential.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; /** * Represents a static access token credential. diff --git a/sdk/remoterendering/mixed-reality-remote-rendering/src/internal/assetConversion.ts b/sdk/remoterendering/mixed-reality-remote-rendering/src/internal/assetConversion.ts index 98287e3ee665..9ef071d606da 100644 --- a/sdk/remoterendering/mixed-reality-remote-rendering/src/internal/assetConversion.ts +++ b/sdk/remoterendering/mixed-reality-remote-rendering/src/internal/assetConversion.ts @@ -1,16 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AssetConversionOutput, AssetConversionSettings, Conversion, - KnownAssetConversionStatus, } from "../generated/models/index"; -import { - RemoteRenderingServiceError, - createRemoteRenderingServiceError, -} from "../remoteRenderingServiceError"; +import { KnownAssetConversionStatus } from "../generated/models/index"; +import type { RemoteRenderingServiceError } from "../remoteRenderingServiceError"; +import { createRemoteRenderingServiceError } from "../remoteRenderingServiceError"; /** Properties available for an AssetConversion in any state. */ export interface AssetConversionBase { diff --git a/sdk/remoterendering/mixed-reality-remote-rendering/src/internal/commonQueries.ts b/sdk/remoterendering/mixed-reality-remote-rendering/src/internal/commonQueries.ts index 95d39411cc90..9b64556f9eca 100644 --- a/sdk/remoterendering/mixed-reality-remote-rendering/src/internal/commonQueries.ts +++ b/sdk/remoterendering/mixed-reality-remote-rendering/src/internal/commonQueries.ts @@ -1,10 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AssetConversion, assetConversionFromConversion } from "./assetConversion"; -import { RenderingSession, renderingSessionFromSessionProperties } from "./renderingSession"; -import { OperationOptions } from "@azure/core-client"; -import { RemoteRendering } from "../generated/operationsInterfaces"; +import type { AssetConversion } from "./assetConversion"; +import { assetConversionFromConversion } from "./assetConversion"; +import type { RenderingSession } from "./renderingSession"; +import { renderingSessionFromSessionProperties } from "./renderingSession"; +import type { OperationOptions } from "@azure/core-client"; +import type { RemoteRendering } from "../generated/operationsInterfaces"; import { tracingClient } from "../generated/tracing"; /** diff --git a/sdk/remoterendering/mixed-reality-remote-rendering/src/internal/renderingSession.ts b/sdk/remoterendering/mixed-reality-remote-rendering/src/internal/renderingSession.ts index 7833f727fb30..da388913ee5b 100644 --- a/sdk/remoterendering/mixed-reality-remote-rendering/src/internal/renderingSession.ts +++ b/sdk/remoterendering/mixed-reality-remote-rendering/src/internal/renderingSession.ts @@ -1,15 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - KnownRenderingSessionStatus, - RenderingServerSize, - SessionProperties, -} from "../generated/index"; -import { - RemoteRenderingServiceError, - createRemoteRenderingServiceError, -} from "../remoteRenderingServiceError"; +import type { RenderingServerSize, SessionProperties } from "../generated/index"; +import { KnownRenderingSessionStatus } from "../generated/index"; +import type { RemoteRenderingServiceError } from "../remoteRenderingServiceError"; +import { createRemoteRenderingServiceError } from "../remoteRenderingServiceError"; /** Properties available for a rendering session in any state */ export interface RenderingSessionBase { diff --git a/sdk/remoterendering/mixed-reality-remote-rendering/src/lro/assetConversionPoller.ts b/sdk/remoterendering/mixed-reality-remote-rendering/src/lro/assetConversionPoller.ts index 89d285f52353..2fb934b91d31 100644 --- a/sdk/remoterendering/mixed-reality-remote-rendering/src/lro/assetConversionPoller.ts +++ b/sdk/remoterendering/mixed-reality-remote-rendering/src/lro/assetConversionPoller.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PollOperation, PollOperationState, Poller } from "@azure/core-lro"; +import type { PollOperation, PollOperationState } from "@azure/core-lro"; +import { Poller } from "@azure/core-lro"; import { KnownAssetConversionStatus } from "../generated/models/index"; -import { RemoteRendering } from "../generated/operationsInterfaces"; +import type { RemoteRendering } from "../generated/operationsInterfaces"; import { getConversionInternal } from "../internal/commonQueries"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { delay } from "@azure/core-util"; -import { AssetConversion } from "../internal/assetConversion"; +import type { AssetConversion } from "../internal/assetConversion"; /** * Options to configure the poller for the beginConversion operation. diff --git a/sdk/remoterendering/mixed-reality-remote-rendering/src/lro/renderingSessionPoller.ts b/sdk/remoterendering/mixed-reality-remote-rendering/src/lro/renderingSessionPoller.ts index f8884c305a92..88c55ccfebb1 100644 --- a/sdk/remoterendering/mixed-reality-remote-rendering/src/lro/renderingSessionPoller.ts +++ b/sdk/remoterendering/mixed-reality-remote-rendering/src/lro/renderingSessionPoller.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PollOperationState, Poller, PollOperation, CancelOnProgress } from "@azure/core-lro"; +import type { PollOperationState, PollOperation, CancelOnProgress } from "@azure/core-lro"; +import { Poller } from "@azure/core-lro"; import { KnownRenderingSessionStatus, KnownRenderingServerSize } from "../generated/models/index"; import { getSessionInternal, endSessionInternal } from "../internal/commonQueries"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { RemoteRendering } from "../generated/operationsInterfaces"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { RemoteRendering } from "../generated/operationsInterfaces"; import { delay } from "@azure/core-util"; -import { RenderingSession } from "../internal/renderingSession"; +import type { RenderingSession } from "../internal/renderingSession"; /** * Abstract representation of a poller, intended to expose just the minimal API that the user needs to work with. diff --git a/sdk/remoterendering/mixed-reality-remote-rendering/src/options.ts b/sdk/remoterendering/mixed-reality-remote-rendering/src/options.ts index 9b13ffec3f3d..0856cbfea395 100644 --- a/sdk/remoterendering/mixed-reality-remote-rendering/src/options.ts +++ b/sdk/remoterendering/mixed-reality-remote-rendering/src/options.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions } from "@azure/core-client"; +import type { CommonClientOptions } from "@azure/core-client"; /** * Options to create the RemoteRenderingClient. diff --git a/sdk/remoterendering/mixed-reality-remote-rendering/src/remoteRenderingClient.ts b/sdk/remoterendering/mixed-reality-remote-rendering/src/remoteRenderingClient.ts index 121738e2b526..7d43dacbf5c2 100644 --- a/sdk/remoterendering/mixed-reality-remote-rendering/src/remoteRenderingClient.ts +++ b/sdk/remoterendering/mixed-reality-remote-rendering/src/remoteRenderingClient.ts @@ -1,22 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { InternalPipelineOptions } from "@azure/core-rest-pipeline"; -import { OperationOptions } from "@azure/core-client"; +import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import type { OperationOptions } from "@azure/core-client"; -import { - AccessToken, - AzureKeyCredential, - TokenCredential, - isTokenCredential, -} from "@azure/core-auth"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; +import { AzureKeyCredential, isTokenCredential } from "@azure/core-auth"; import { RemoteRenderingRestClient } from "./generated"; -import { - AssetConversionSettings, +import type { RemoteRenderingCreateConversionResponse, RemoteRenderingCreateSessionResponse, RemoteRenderingRestClientOptionalParams, +} from "./generated/models/index"; +import { + AssetConversionSettings, RenderingSessionSettings, UpdateSessionSettings, } from "./generated/models/index"; @@ -32,8 +30,8 @@ import { SDK_VERSION } from "./constants"; import { logger } from "./logger"; import { tracingClient } from "./generated/tracing"; -import { PollerLike } from "@azure/core-lro"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { PollerLike } from "@azure/core-lro"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; import { RemoteRenderingImpl } from "./generated/operations"; import { diff --git a/sdk/remoterendering/mixed-reality-remote-rendering/src/remoteRenderingServiceError.ts b/sdk/remoterendering/mixed-reality-remote-rendering/src/remoteRenderingServiceError.ts index 1bcd69e76596..d2be3efaf6c9 100644 --- a/sdk/remoterendering/mixed-reality-remote-rendering/src/remoteRenderingServiceError.ts +++ b/sdk/remoterendering/mixed-reality-remote-rendering/src/remoteRenderingServiceError.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RemoteRenderingServiceErrorInternal } from "./generated"; +import type { RemoteRenderingServiceErrorInternal } from "./generated"; /** Error object containing details about a conversion or session failure. */ export class RemoteRenderingServiceError extends Error { diff --git a/sdk/remoterendering/mixed-reality-remote-rendering/test/public/remoteRenderingClient.spec.ts b/sdk/remoterendering/mixed-reality-remote-rendering/test/public/remoteRenderingClient.spec.ts index b0c1afa30a9a..ca170d2d3379 100644 --- a/sdk/remoterendering/mixed-reality-remote-rendering/test/public/remoteRenderingClient.spec.ts +++ b/sdk/remoterendering/mixed-reality-remote-rendering/test/public/remoteRenderingClient.spec.ts @@ -2,28 +2,23 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { Recorder } from "@azure-tools/test-recorder"; import { RestError } from "@azure/core-rest-pipeline"; -import { +import type { AssetConversion, AssetConversionInputSettings, AssetConversionOutputSettings, AssetConversionPollerLike, AssetConversionSettings, - KnownAssetConversionStatus, - RemoteRenderingClient, RenderingSession, RenderingSessionPollerLike, RenderingSessionSettings, } from "../../src"; -import { - AccessToken, - AzureKeyCredential, - GetTokenOptions, - TokenCredential, -} from "@azure/core-auth"; +import { KnownAssetConversionStatus, RemoteRenderingClient } from "../../src"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import { AzureKeyCredential } from "@azure/core-auth"; import { createClient, createRecorder, recorderStartOptions } from "../utils/recordedClient"; import { assertEnvironmentVariable, isPlaybackMode } from "@azure-tools/test-recorder"; diff --git a/sdk/remoterendering/mixed-reality-remote-rendering/test/utils/recordedClient.ts b/sdk/remoterendering/mixed-reality-remote-rendering/test/utils/recordedClient.ts index b78e5ceedf06..a7998a16c9ed 100644 --- a/sdk/remoterendering/mixed-reality-remote-rendering/test/utils/recordedClient.ts +++ b/sdk/remoterendering/mixed-reality-remote-rendering/test/utils/recordedClient.ts @@ -1,15 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; +import type { Context } from "mocha"; -import { AccessToken, AzureKeyCredential } from "@azure/core-auth"; -import { - Recorder, - RecorderStartOptions, - assertEnvironmentVariable, - isPlaybackMode, -} from "@azure-tools/test-recorder"; +import type { AccessToken } from "@azure/core-auth"; +import { AzureKeyCredential } from "@azure/core-auth"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, assertEnvironmentVariable, isPlaybackMode } from "@azure-tools/test-recorder"; import { RemoteRenderingClient } from "../../src"; diff --git a/sdk/schemaregistry/schema-registry-avro/review/schema-registry-avro.api.md b/sdk/schemaregistry/schema-registry-avro/review/schema-registry-avro.api.md index d8c10f2f000d..824644dfc67e 100644 --- a/sdk/schemaregistry/schema-registry-avro/review/schema-registry-avro.api.md +++ b/sdk/schemaregistry/schema-registry-avro/review/schema-registry-avro.api.md @@ -4,7 +4,7 @@ ```ts -import { SchemaRegistry } from '@azure/schema-registry'; +import type { SchemaRegistry } from '@azure/schema-registry'; // @public export class AvroSerializer { diff --git a/sdk/schemaregistry/schema-registry-avro/src/avroSerializer.ts b/sdk/schemaregistry/schema-registry-avro/src/avroSerializer.ts index e88020d4ba12..cb79f633b492 100644 --- a/sdk/schemaregistry/schema-registry-avro/src/avroSerializer.ts +++ b/sdk/schemaregistry/schema-registry-avro/src/avroSerializer.ts @@ -2,13 +2,13 @@ // Licensed under the MIT License. import * as avro from "avsc"; -import { +import type { AvroSerializerOptions, DeserializeOptions, MessageAdapter, MessageContent, } from "./models.js"; -import { SchemaDescription, SchemaRegistry } from "@azure/schema-registry"; +import type { SchemaDescription, SchemaRegistry } from "@azure/schema-registry"; import { LRUCache } from "lru-cache"; import LRUCacheOptions = LRUCache.Options; import { isMessageContent } from "./utility.js"; diff --git a/sdk/schemaregistry/schema-registry-avro/src/utility.ts b/sdk/schemaregistry/schema-registry-avro/src/utility.ts index a4aab9a18be4..06c8568f5d6c 100644 --- a/sdk/schemaregistry/schema-registry-avro/src/utility.ts +++ b/sdk/schemaregistry/schema-registry-avro/src/utility.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MessageContent } from "./models.js"; +import type { MessageContent } from "./models.js"; export function isMessageContent(message: unknown): message is MessageContent { const castMessage = message as MessageContent; diff --git a/sdk/schemaregistry/schema-registry-avro/test/internal/messageAdapter.spec.ts b/sdk/schemaregistry/schema-registry-avro/test/internal/messageAdapter.spec.ts index 3450a4d7866b..ad33287922a6 100644 --- a/sdk/schemaregistry/schema-registry-avro/test/internal/messageAdapter.spec.ts +++ b/sdk/schemaregistry/schema-registry-avro/test/internal/messageAdapter.spec.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { MessageAdapter as EHMessageAdapter, EventData, EventDataAdapterParameters, - createEventDataAdapter, } from "@azure/event-hubs"; -import { AssertEqualKeys } from "../utils/utils.js"; -import { MessageAdapter } from "../../src/models.js"; +import { createEventDataAdapter } from "@azure/event-hubs"; +import type { AssertEqualKeys } from "../utils/utils.js"; +import type { MessageAdapter } from "../../src/models.js"; import { matrix } from "@azure-tools/test-utils-vitest"; import { describe, it, assert } from "vitest"; diff --git a/sdk/schemaregistry/schema-registry-avro/test/public/avroSerializer.spec.ts b/sdk/schemaregistry/schema-registry-avro/test/public/avroSerializer.spec.ts index 4fde9a17cc8a..995a01d8444f 100644 --- a/sdk/schemaregistry/schema-registry-avro/test/public/avroSerializer.spec.ts +++ b/sdk/schemaregistry/schema-registry-avro/test/public/avroSerializer.spec.ts @@ -1,13 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - CreateTestSerializerOptions, - createTestSerializer, - registerTestSchema, -} from "./utils/mockedSerializer.js"; +import type { CreateTestSerializerOptions } from "./utils/mockedSerializer.js"; +import { createTestSerializer, registerTestSchema } from "./utils/mockedSerializer.js"; import { testAvroType, testGroup, testSchema, testValue, testSchemaName } from "./utils/dummies.js"; -import { AvroSerializer, MessageContent } from "../../src/index.js"; +import type { MessageContent } from "../../src/index.js"; +import { AvroSerializer } from "../../src/index.js"; import { createPipelineWithCredential, createTestRegistry, @@ -15,8 +13,9 @@ import { } from "./utils/mockedRegistryClient.js"; import { v4 as uuid } from "uuid"; import { Recorder, isLiveMode } from "@azure-tools/test-recorder"; -import { SchemaRegistry } from "@azure/schema-registry"; -import { HttpClient, Pipeline, createDefaultHttpClient } from "@azure/core-rest-pipeline"; +import type { SchemaRegistry } from "@azure/schema-registry"; +import type { HttpClient, Pipeline } from "@azure/core-rest-pipeline"; +import { createDefaultHttpClient } from "@azure/core-rest-pipeline"; import { describe, it, assert, beforeEach, afterEach, expect } from "vitest"; describe("AvroSerializer", async function () { diff --git a/sdk/schemaregistry/schema-registry-avro/test/public/clients/eventHubs.ts b/sdk/schemaregistry/schema-registry-avro/test/public/clients/eventHubs.ts index 653f095cd7ea..9f32f195a9c8 100644 --- a/sdk/schemaregistry/schema-registry-avro/test/public/clients/eventHubs.ts +++ b/sdk/schemaregistry/schema-registry-avro/test/public/clients/eventHubs.ts @@ -1,19 +1,22 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { EventData, - EventHubBufferedProducerClient, - EventHubConsumerClient, MessagingError, OnSendEventsErrorContext, Subscription, + EventHubConsumerClientOptions, +} from "@azure/event-hubs"; +import { + EventHubBufferedProducerClient, + EventHubConsumerClient, earliestEventPosition, latestEventPosition, - EventHubConsumerClientOptions, } from "@azure/event-hubs"; -import { MessagingTestClient } from "./models.js"; -import { delay, Recorder } from "@azure-tools/test-recorder"; +import type { MessagingTestClient } from "./models.js"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { delay } from "@azure-tools/test-recorder"; import { createTestCredential } from "@azure-tools/test-credential"; export function createEventHubsClient(settings: { diff --git a/sdk/schemaregistry/schema-registry-avro/test/public/clients/mocked.ts b/sdk/schemaregistry/schema-registry-avro/test/public/clients/mocked.ts index 995fc161798b..f259ac30eaa1 100644 --- a/sdk/schemaregistry/schema-registry-avro/test/public/clients/mocked.ts +++ b/sdk/schemaregistry/schema-registry-avro/test/public/clients/mocked.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MessagingTestClient } from "./models.js"; +import type { MessagingTestClient } from "./models.js"; import { isLiveMode } from "@azure-tools/test-recorder"; /** diff --git a/sdk/schemaregistry/schema-registry-avro/test/public/errors.spec.ts b/sdk/schemaregistry/schema-registry-avro/test/public/errors.spec.ts index 848d1a282e1e..cfffc0224c17 100644 --- a/sdk/schemaregistry/schema-registry-avro/test/public/errors.spec.ts +++ b/sdk/schemaregistry/schema-registry-avro/test/public/errors.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AvroSerializer } from "../../src/index.js"; -import { SchemaRegistry } from "@azure/schema-registry"; +import type { AvroSerializer } from "../../src/index.js"; +import type { SchemaRegistry } from "@azure/schema-registry"; import { assertError } from "./utils/assertError.js"; import { createPipelineWithCredential, @@ -12,7 +12,8 @@ import { createTestSerializer } from "./utils/mockedSerializer.js"; import { testGroup, testSchemaName } from "./utils/dummies.js"; import { v4 as uuid } from "uuid"; import { isLiveMode, Recorder } from "@azure-tools/test-recorder"; -import { HttpClient, Pipeline, createDefaultHttpClient } from "@azure/core-rest-pipeline"; +import type { HttpClient, Pipeline } from "@azure/core-rest-pipeline"; +import { createDefaultHttpClient } from "@azure/core-rest-pipeline"; import { describe, it, assert, beforeEach, afterEach, afterAll, expect } from "vitest"; describe("Error scenarios", function () { diff --git a/sdk/schemaregistry/schema-registry-avro/test/public/utils/mockedRegistryClient.ts b/sdk/schemaregistry/schema-registry-avro/test/public/utils/mockedRegistryClient.ts index 11244492c402..05fa800a7933 100644 --- a/sdk/schemaregistry/schema-registry-avro/test/public/utils/mockedRegistryClient.ts +++ b/sdk/schemaregistry/schema-registry-avro/test/public/utils/mockedRegistryClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { GetSchemaOptions, GetSchemaPropertiesOptions, RegisterSchemaOptions, @@ -9,20 +9,19 @@ import { SchemaDescription, SchemaProperties, SchemaRegistry, - SchemaRegistryClient, } from "@azure/schema-registry"; +import { SchemaRegistryClient } from "@azure/schema-registry"; import { createTestCredential } from "@azure-tools/test-credential"; import { testGroup, testSchemaIds } from "./dummies.js"; import { v4 as uuid } from "uuid"; -import { Recorder, assertEnvironmentVariable, env, isLiveMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable, env, isLiveMode } from "@azure-tools/test-recorder"; +import type { Pipeline, HttpClient, PipelineRequest } from "@azure/core-rest-pipeline"; import { createPipelineRequest, createHttpHeaders, bearerTokenAuthenticationPolicy, createEmptyPipeline, - Pipeline, - HttpClient, - PipelineRequest, } from "@azure/core-rest-pipeline"; type UpdatedSchemaDescription = Required>; diff --git a/sdk/schemaregistry/schema-registry-avro/test/public/utils/mockedSerializer.ts b/sdk/schemaregistry/schema-registry-avro/test/public/utils/mockedSerializer.ts index 91c2cc070359..7849519a576a 100644 --- a/sdk/schemaregistry/schema-registry-avro/test/public/utils/mockedSerializer.ts +++ b/sdk/schemaregistry/schema-registry-avro/test/public/utils/mockedSerializer.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AvroSerializer, AvroSerializerOptions } from "../../../src/index.js"; +import type { AvroSerializerOptions } from "../../../src/index.js"; +import { AvroSerializer } from "../../../src/index.js"; import { testGroup, testSchemaName, testSchema } from "./dummies.js"; -import { SchemaRegistry } from "@azure/schema-registry"; +import type { SchemaRegistry } from "@azure/schema-registry"; import { createTestRegistry } from "./mockedRegistryClient.js"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; export interface CreateTestSerializerOptions { serializerOptions?: AvroSerializerOptions; diff --git a/sdk/schemaregistry/schema-registry-avro/test/public/withMessagingClients.spec.ts b/sdk/schemaregistry/schema-registry-avro/test/public/withMessagingClients.spec.ts index 295d26d7c274..1b260033d7a5 100644 --- a/sdk/schemaregistry/schema-registry-avro/test/public/withMessagingClients.spec.ts +++ b/sdk/schemaregistry/schema-registry-avro/test/public/withMessagingClients.spec.ts @@ -14,9 +14,10 @@ * to read from corresponding event hubs */ -import { AvroSerializer, MessageAdapter } from "../../src/index.js"; -import { EventData, createEventDataAdapter } from "@azure/event-hubs"; -import { MessagingTestClient } from "./clients/models.js"; +import type { AvroSerializer, MessageAdapter } from "../../src/index.js"; +import type { EventData } from "@azure/event-hubs"; +import { createEventDataAdapter } from "@azure/event-hubs"; +import type { MessagingTestClient } from "./clients/models.js"; import { assertError } from "./utils/assertError.js"; import { createEventHubsClient } from "./clients/eventHubs.js"; import { createMockedMessagingClient } from "./clients/mocked.js"; @@ -25,7 +26,8 @@ import { matrix } from "@azure-tools/test-utils-vitest"; import { testGroup } from "./utils/dummies.js"; import { Recorder, env } from "@azure-tools/test-recorder"; import { createPipelineWithCredential, removeSchemas } from "./utils/mockedRegistryClient.js"; -import { HttpClient, Pipeline, createDefaultHttpClient } from "@azure/core-rest-pipeline"; +import type { HttpClient, Pipeline } from "@azure/core-rest-pipeline"; +import { createDefaultHttpClient } from "@azure/core-rest-pipeline"; import { describe, it, assert, beforeEach, afterEach } from "vitest"; /** diff --git a/sdk/schemaregistry/schema-registry-json/review/schema-registry-json.api.md b/sdk/schemaregistry/schema-registry-json/review/schema-registry-json.api.md index 68112d612a6d..d5e8716bfc16 100644 --- a/sdk/schemaregistry/schema-registry-json/review/schema-registry-json.api.md +++ b/sdk/schemaregistry/schema-registry-json/review/schema-registry-json.api.md @@ -4,7 +4,7 @@ ```ts -import { SchemaRegistry } from '@azure/schema-registry'; +import type { SchemaRegistry } from '@azure/schema-registry'; // @public export interface DeserializeOptions { diff --git a/sdk/schemaregistry/schema-registry-json/src/jsonSchemaSerializer.ts b/sdk/schemaregistry/schema-registry-json/src/jsonSchemaSerializer.ts index 9d92363988e4..9da3bca24e47 100644 --- a/sdk/schemaregistry/schema-registry-json/src/jsonSchemaSerializer.ts +++ b/sdk/schemaregistry/schema-registry-json/src/jsonSchemaSerializer.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { DeserializeOptions, JsonSchemaSerializerOptions, MessageAdapter, MessageContent, } from "./models"; -import { KnownSchemaFormats, SchemaDescription, SchemaRegistry } from "@azure/schema-registry"; +import type { SchemaDescription, SchemaRegistry } from "@azure/schema-registry"; +import { KnownSchemaFormats } from "@azure/schema-registry"; import { isMessageContent } from "./utility"; import { errorWithCause, wrapError } from "./errors"; import { LRUCache } from "lru-cache"; diff --git a/sdk/schemaregistry/schema-registry-json/src/utility.ts b/sdk/schemaregistry/schema-registry-json/src/utility.ts index d20bd5af8cf2..1403cfe16a38 100644 --- a/sdk/schemaregistry/schema-registry-json/src/utility.ts +++ b/sdk/schemaregistry/schema-registry-json/src/utility.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MessageContent } from "./models"; +import type { MessageContent } from "./models"; export function isMessageContent(message: unknown): message is MessageContent { const castMessage = message as MessageContent; diff --git a/sdk/schemaregistry/schema-registry-json/test/public/clients/eventHubs.ts b/sdk/schemaregistry/schema-registry-json/test/public/clients/eventHubs.ts index 974f1a0d4a68..a9c4f9459bf7 100644 --- a/sdk/schemaregistry/schema-registry-json/test/public/clients/eventHubs.ts +++ b/sdk/schemaregistry/schema-registry-json/test/public/clients/eventHubs.ts @@ -1,19 +1,22 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { EventData, - EventHubBufferedProducerClient, - EventHubConsumerClient, MessagingError, OnSendEventsErrorContext, Subscription, + EventHubConsumerClientOptions, +} from "@azure/event-hubs"; +import { + EventHubBufferedProducerClient, + EventHubConsumerClient, earliestEventPosition, latestEventPosition, - EventHubConsumerClientOptions, } from "@azure/event-hubs"; -import { MessagingTestClient } from "./models"; -import { delay, Recorder } from "@azure-tools/test-recorder"; +import type { MessagingTestClient } from "./models"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { delay } from "@azure-tools/test-recorder"; import { createTestCredential } from "@azure-tools/test-credential"; export function createEventHubsClient(settings: { diff --git a/sdk/schemaregistry/schema-registry-json/test/public/clients/mocked.ts b/sdk/schemaregistry/schema-registry-json/test/public/clients/mocked.ts index 1e5cbbc4608a..086a9d1527ab 100644 --- a/sdk/schemaregistry/schema-registry-json/test/public/clients/mocked.ts +++ b/sdk/schemaregistry/schema-registry-json/test/public/clients/mocked.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { decoder } from "../utils/dummies"; -import { MessagingTestClient } from "./models"; +import type { MessagingTestClient } from "./models"; import { isLiveMode } from "@azure-tools/test-recorder"; /** diff --git a/sdk/schemaregistry/schema-registry-json/test/public/errors.spec.ts b/sdk/schemaregistry/schema-registry-json/test/public/errors.spec.ts index f4f201c6c665..cb410de39bdc 100644 --- a/sdk/schemaregistry/schema-registry-json/test/public/errors.spec.ts +++ b/sdk/schemaregistry/schema-registry-json/test/public/errors.spec.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { assert } from "@azure-tools/test-utils"; -import { JsonSchemaSerializer } from "../../src"; -import { Context } from "mocha"; -import { SchemaRegistry } from "@azure/schema-registry"; +import type { JsonSchemaSerializer } from "../../src"; +import type { Context } from "mocha"; +import type { SchemaRegistry } from "@azure/schema-registry"; import { assertError } from "./utils/assertError"; import { createTestRegistry } from "./utils/mockedRegistryClient"; import { createTestSerializer, registerTestSchema } from "./utils/mockedSerializer"; diff --git a/sdk/schemaregistry/schema-registry-json/test/public/jsonSerializer.spec.ts b/sdk/schemaregistry/schema-registry-json/test/public/jsonSerializer.spec.ts index 2312bdcab1a1..30a5eef21d59 100644 --- a/sdk/schemaregistry/schema-registry-json/test/public/jsonSerializer.spec.ts +++ b/sdk/schemaregistry/schema-registry-json/test/public/jsonSerializer.spec.ts @@ -1,18 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - CreateTestSerializerOptions, - createTestSerializer, - registerTestSchema, -} from "./utils/mockedSerializer"; +import type { CreateTestSerializerOptions } from "./utils/mockedSerializer"; +import { createTestSerializer, registerTestSchema } from "./utils/mockedSerializer"; import { assert } from "@azure-tools/test-utils"; import { createContentType, encoder, testGroup, testSchema, testValue } from "./utils/dummies"; -import { Context } from "mocha"; -import { MessageContent } from "../../src"; +import type { Context } from "mocha"; +import type { MessageContent } from "../../src"; import { createTestRegistry } from "./utils/mockedRegistryClient"; import { Recorder, isLiveMode } from "@azure-tools/test-recorder"; -import { SchemaRegistry } from "@azure/schema-registry"; +import type { SchemaRegistry } from "@azure/schema-registry"; describe("JsonSchemaSerializer", async function () { let serializerOptions: CreateTestSerializerOptions; diff --git a/sdk/schemaregistry/schema-registry-json/test/public/utils/mockedRegistryClient.ts b/sdk/schemaregistry/schema-registry-json/test/public/utils/mockedRegistryClient.ts index 995b4d575d59..fb38765e7365 100644 --- a/sdk/schemaregistry/schema-registry-json/test/public/utils/mockedRegistryClient.ts +++ b/sdk/schemaregistry/schema-registry-json/test/public/utils/mockedRegistryClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { GetSchemaOptions, GetSchemaPropertiesOptions, RegisterSchemaOptions, @@ -9,11 +9,12 @@ import { SchemaDescription, SchemaProperties, SchemaRegistry, - SchemaRegistryClient, } from "@azure/schema-registry"; +import { SchemaRegistryClient } from "@azure/schema-registry"; import { createTestCredential } from "@azure-tools/test-credential"; import { testSchemaIds } from "./dummies"; -import { Recorder, env, isLiveMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isLiveMode } from "@azure-tools/test-recorder"; import { randomUUID } from "@azure/core-util"; type UpdatedSchemaDescription = Required>; diff --git a/sdk/schemaregistry/schema-registry-json/test/public/utils/mockedSerializer.ts b/sdk/schemaregistry/schema-registry-json/test/public/utils/mockedSerializer.ts index 8451452a31de..9ec994dc5c8d 100644 --- a/sdk/schemaregistry/schema-registry-json/test/public/utils/mockedSerializer.ts +++ b/sdk/schemaregistry/schema-registry-json/test/public/utils/mockedSerializer.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { JsonSchemaSerializer, JsonSchemaSerializerOptions } from "../../../src"; +import type { JsonSchemaSerializerOptions } from "../../../src"; +import { JsonSchemaSerializer } from "../../../src"; import { testGroup, testSchema, testSchemaObject } from "./dummies"; -import { SchemaRegistry } from "@azure/schema-registry"; +import type { SchemaRegistry } from "@azure/schema-registry"; import { createTestRegistry } from "./mockedRegistryClient"; -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; export interface CreateTestSerializerOptions { serializerOptions?: JsonSchemaSerializerOptions; diff --git a/sdk/schemaregistry/schema-registry-json/test/public/validation.spec.ts b/sdk/schemaregistry/schema-registry-json/test/public/validation.spec.ts index 7b2ef29044bd..acc5ea12c627 100644 --- a/sdk/schemaregistry/schema-registry-json/test/public/validation.spec.ts +++ b/sdk/schemaregistry/schema-registry-json/test/public/validation.spec.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { assert } from "@azure-tools/test-utils"; -import { DeserializeOptions, JsonSchemaSerializer } from "../../src"; -import { SchemaRegistry } from "@azure/schema-registry"; +import type { DeserializeOptions, JsonSchemaSerializer } from "../../src"; +import type { SchemaRegistry } from "@azure/schema-registry"; import { createTestRegistry } from "./utils/mockedRegistryClient"; import { createTestSerializer } from "./utils/mockedSerializer"; import { createContentType, encoder, testGroup } from "./utils/dummies"; diff --git a/sdk/schemaregistry/schema-registry-json/test/public/withMessagingClients.spec.ts b/sdk/schemaregistry/schema-registry-json/test/public/withMessagingClients.spec.ts index 5fa4c3c5186f..89acec33b147 100644 --- a/sdk/schemaregistry/schema-registry-json/test/public/withMessagingClients.spec.ts +++ b/sdk/schemaregistry/schema-registry-json/test/public/withMessagingClients.spec.ts @@ -14,16 +14,17 @@ * to read from corresponding event hubs */ -import { JsonSchemaSerializer } from "../../src"; -import { EventData, createEventDataAdapter } from "@azure/event-hubs"; -import { MessagingTestClient } from "./clients/models"; +import type { JsonSchemaSerializer } from "../../src"; +import type { EventData } from "@azure/event-hubs"; +import { createEventDataAdapter } from "@azure/event-hubs"; +import type { MessagingTestClient } from "./clients/models"; import { assert, matrix } from "@azure-tools/test-utils"; import { createEventHubsClient } from "./clients/eventHubs"; import { createMockedMessagingClient } from "./clients/mocked"; import { createTestSerializer } from "./utils/mockedSerializer"; import { testGroup } from "./utils/dummies"; import { Recorder, env } from "@azure-tools/test-recorder"; -import { SchemaRegistry } from "@azure/schema-registry"; +import type { SchemaRegistry } from "@azure/schema-registry"; import { createTestRegistry } from "./utils/mockedRegistryClient"; matrix([[true, false]] as const, async (skipParsingJson: boolean) => { diff --git a/sdk/schemaregistry/schema-registry/review/schema-registry.api.md b/sdk/schemaregistry/schema-registry/review/schema-registry.api.md index 7785a1f47150..ee037a94ba82 100644 --- a/sdk/schemaregistry/schema-registry/review/schema-registry.api.md +++ b/sdk/schemaregistry/schema-registry/review/schema-registry.api.md @@ -4,9 +4,9 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; -import { OperationOptions } from '@azure/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { OperationOptions } from '@azure/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface GetSchemaOptions extends OperationOptions { diff --git a/sdk/schemaregistry/schema-registry/src/clientDefinitions.ts b/sdk/schemaregistry/schema-registry/src/clientDefinitions.ts index 03f2b98c9611..d8f1a426e2b5 100644 --- a/sdk/schemaregistry/schema-registry/src/clientDefinitions.ts +++ b/sdk/schemaregistry/schema-registry/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ListSchemaGroupsParameters, ListSchemaVersionsParameters, GetSchemaByIdParameters, @@ -9,7 +9,7 @@ import { GetSchemaPropertiesByContentParameters, RegisterSchemaParameters, } from "./parameters.js"; -import { +import type { ListSchemaGroups200Response, ListSchemaGroupsDefaultResponse, ListSchemaVersions200Response, @@ -23,7 +23,7 @@ import { RegisterSchema204Response, RegisterSchemaDefaultResponse, } from "./responses.js"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface ListSchemaGroups { /** Gets the list of schema groups user is authorized to access. */ diff --git a/sdk/schemaregistry/schema-registry/src/conversions.ts b/sdk/schemaregistry/schema-registry/src/conversions.ts index 913a68523275..88a6a7e9a77c 100644 --- a/sdk/schemaregistry/schema-registry/src/conversions.ts +++ b/sdk/schemaregistry/schema-registry/src/conversions.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { GetSchemaById200Response, GetSchemaByVersion200Response, GetSchemaPropertiesByContent204Response, RegisterSchema204Response, } from "./responses"; -import { SchemaProperties, Schema, SchemaContentTypeValues } from "./models"; +import type { SchemaProperties, Schema, SchemaContentTypeValues } from "./models"; const textPlain = "text/plain"; const charsetutf8 = "charset=utf-8"; diff --git a/sdk/schemaregistry/schema-registry/src/isUnexpected.ts b/sdk/schemaregistry/schema-registry/src/isUnexpected.ts index 72a3b7f127d3..64390e9ec2ec 100644 --- a/sdk/schemaregistry/schema-registry/src/isUnexpected.ts +++ b/sdk/schemaregistry/schema-registry/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ListSchemaGroups200Response, ListSchemaGroupsDefaultResponse, ListSchemaVersions200Response, diff --git a/sdk/schemaregistry/schema-registry/src/models.ts b/sdk/schemaregistry/schema-registry/src/models.ts index f59c8874c367..2e64ae30b566 100644 --- a/sdk/schemaregistry/schema-registry/src/models.ts +++ b/sdk/schemaregistry/schema-registry/src/models.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; /** * Properties of a schema. diff --git a/sdk/schemaregistry/schema-registry/src/operations.ts b/sdk/schemaregistry/schema-registry/src/operations.ts index 9ab8c027ab51..63f53f66d66c 100644 --- a/sdk/schemaregistry/schema-registry/src/operations.ts +++ b/sdk/schemaregistry/schema-registry/src/operations.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { isUnexpected } from "./isUnexpected"; -import { +import type { GetSchemaOptions, GetSchemaPropertiesOptions, RegisterSchemaOptions, @@ -11,7 +11,7 @@ import { SchemaProperties, } from "./models"; import { buildContentType, convertSchemaIdResponse, convertSchemaResponse } from "./conversions"; -import { SchemaRegistryClient } from "./clientDefinitions"; +import type { SchemaRegistryClient } from "./clientDefinitions"; import { createRestError } from "@azure-rest/core-client"; export async function registerSchema( diff --git a/sdk/schemaregistry/schema-registry/src/parameters.ts b/sdk/schemaregistry/schema-registry/src/parameters.ts index 17df1ba524bf..afe2ea96b167 100644 --- a/sdk/schemaregistry/schema-registry/src/parameters.ts +++ b/sdk/schemaregistry/schema-registry/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { SchemaContentTypeValues } from "./models.js"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { SchemaContentTypeValues } from "./models.js"; export type ListSchemaGroupsParameters = RequestParameters; export type ListSchemaVersionsParameters = RequestParameters; diff --git a/sdk/schemaregistry/schema-registry/src/responses.ts b/sdk/schemaregistry/schema-registry/src/responses.ts index 1c45fb6f4c63..2a92562ec20b 100644 --- a/sdk/schemaregistry/schema-registry/src/responses.ts +++ b/sdk/schemaregistry/schema-registry/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; +import type { SchemaGroupsOutput, SchemaVersionsOutput, SchemaContentTypeValuesOutput, diff --git a/sdk/schemaregistry/schema-registry/src/schemaRegistryClient.ts b/sdk/schemaregistry/schema-registry/src/schemaRegistryClient.ts index cfdae37fa294..9df395dca897 100644 --- a/sdk/schemaregistry/schema-registry/src/schemaRegistryClient.ts +++ b/sdk/schemaregistry/schema-registry/src/schemaRegistryClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { GetSchemaOptions, GetSchemaPropertiesOptions, RegisterSchemaOptions, @@ -11,17 +11,19 @@ import { SchemaRegistry, SchemaRegistryClientOptions, } from "./models"; -import { SchemaRegistryClient as SchemaRegistryContext } from "./clientDefinitions"; +import type { SchemaRegistryClient as SchemaRegistryContext } from "./clientDefinitions"; import { registerSchema, getSchemaProperties, getSchemaById, getSchemaByVersion, } from "./operations"; -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "./logger"; -import { TokenCredential } from "@azure/core-auth"; -import { TracingClient, createTracingClient } from "@azure/core-tracing"; +import type { TokenCredential } from "@azure/core-auth"; +import type { TracingClient } from "@azure/core-tracing"; +import { createTracingClient } from "@azure/core-tracing"; import { DEFAULT_SCOPE, SDK_VERSION } from "./constants"; /** diff --git a/sdk/schemaregistry/schema-registry/test/public/schemaRegistry.spec.ts b/sdk/schemaregistry/schema-registry/test/public/schemaRegistry.spec.ts index 8ee0dac75804..5c7004bb8877 100644 --- a/sdk/schemaregistry/schema-registry/test/public/schemaRegistry.spec.ts +++ b/sdk/schemaregistry/schema-registry/test/public/schemaRegistry.spec.ts @@ -2,18 +2,14 @@ // Licensed under the MIT License. import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; -import { - KnownSchemaFormats, - Schema, - SchemaDescription, - SchemaProperties, - SchemaRegistryClient, -} from "../../src"; +import type { Schema, SchemaDescription, SchemaProperties } from "../../src"; +import { KnownSchemaFormats, SchemaRegistryClient } from "../../src"; import { assert, matrix } from "@azure-tools/test-utils"; -import { createRecordedClient, Format, recorderOptions } from "./utils/recordedClient"; +import type { Format } from "./utils/recordedClient"; +import { createRecordedClient, recorderOptions } from "./utils/recordedClient"; import { ClientSecretCredential } from "@azure/identity"; -import { Context } from "mocha"; -import { HttpHeaders } from "@azure/core-rest-pipeline"; +import type { Context } from "mocha"; +import type { HttpHeaders } from "@azure/core-rest-pipeline"; const options = { onResponse: (rawResponse: { status: number; bodyAsText?: string | null }) => { diff --git a/sdk/schemaregistry/schema-registry/test/public/utils/recordedClient.ts b/sdk/schemaregistry/schema-registry/test/public/utils/recordedClient.ts index 42648ee5d49b..095bbddc9b65 100644 --- a/sdk/schemaregistry/schema-registry/test/public/utils/recordedClient.ts +++ b/sdk/schemaregistry/schema-registry/test/public/utils/recordedClient.ts @@ -1,11 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - Recorder, - RecorderStartOptions, - assertEnvironmentVariable, -} from "@azure-tools/test-recorder"; +import type { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { KnownSchemaFormats, SchemaRegistryClient } from "../../../src"; import { createTestCredential } from "@azure-tools/test-credential"; diff --git a/sdk/search/search-documents/review/search-documents.api.md b/sdk/search/search-documents/review/search-documents.api.md index 0a5ffe87c525..61f4e2c60c02 100644 --- a/sdk/search/search-documents/review/search-documents.api.md +++ b/sdk/search/search-documents/review/search-documents.api.md @@ -5,13 +5,13 @@ ```ts import { AzureKeyCredential } from '@azure/core-auth'; -import { ExtendedCommonClientOptions } from '@azure/core-http-compat'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { Pipeline } from '@azure/core-rest-pipeline'; -import { RestError } from '@azure/core-rest-pipeline'; -import { TokenCredential } from '@azure/core-auth'; +import type { ExtendedCommonClientOptions } from '@azure/core-http-compat'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { Pipeline } from '@azure/core-rest-pipeline'; +import type { RestError } from '@azure/core-rest-pipeline'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AIServicesVisionParameters { diff --git a/sdk/search/search-documents/samples-dev/bufferedSenderAutoFlushSize.ts b/sdk/search/search-documents/samples-dev/bufferedSenderAutoFlushSize.ts index 2347ef22f045..51dbdf1c1e90 100644 --- a/sdk/search/search-documents/samples-dev/bufferedSenderAutoFlushSize.ts +++ b/sdk/search/search-documents/samples-dev/bufferedSenderAutoFlushSize.ts @@ -12,7 +12,7 @@ import { SearchIndexClient, SearchIndexingBufferedSender, } from "@azure/search-documents"; -import { Hotel } from "./interfaces"; +import type { Hotel } from "./interfaces"; import { createIndex, delay, documentKeyRetriever, WAIT_TIME } from "./setup"; import * as dotenv from "dotenv"; diff --git a/sdk/search/search-documents/samples-dev/bufferedSenderAutoFlushTimer.ts b/sdk/search/search-documents/samples-dev/bufferedSenderAutoFlushTimer.ts index 983e0a4c8462..1883e04b12c6 100644 --- a/sdk/search/search-documents/samples-dev/bufferedSenderAutoFlushTimer.ts +++ b/sdk/search/search-documents/samples-dev/bufferedSenderAutoFlushTimer.ts @@ -13,7 +13,7 @@ import { SearchIndexClient, SearchIndexingBufferedSender, } from "@azure/search-documents"; -import { Hotel } from "./interfaces"; +import type { Hotel } from "./interfaces"; import { createIndex, delay, documentKeyRetriever, WAIT_TIME } from "./setup"; import * as dotenv from "dotenv"; diff --git a/sdk/search/search-documents/samples-dev/bufferedSenderManualFlush.ts b/sdk/search/search-documents/samples-dev/bufferedSenderManualFlush.ts index e95562a998c4..2fb26711fb63 100644 --- a/sdk/search/search-documents/samples-dev/bufferedSenderManualFlush.ts +++ b/sdk/search/search-documents/samples-dev/bufferedSenderManualFlush.ts @@ -12,7 +12,7 @@ import { SearchIndexClient, SearchIndexingBufferedSender, } from "@azure/search-documents"; -import { Hotel } from "./interfaces"; +import type { Hotel } from "./interfaces"; import { createIndex, delay, documentKeyRetriever, WAIT_TIME } from "./setup"; import * as dotenv from "dotenv"; diff --git a/sdk/search/search-documents/samples-dev/dataSourceConnectionOperations.ts b/sdk/search/search-documents/samples-dev/dataSourceConnectionOperations.ts index e3e6f9e983de..abcccef130f8 100644 --- a/sdk/search/search-documents/samples-dev/dataSourceConnectionOperations.ts +++ b/sdk/search/search-documents/samples-dev/dataSourceConnectionOperations.ts @@ -6,7 +6,8 @@ */ import { DefaultAzureCredential } from "@azure/identity"; -import { SearchIndexerClient, SearchIndexerDataSourceConnection } from "@azure/search-documents"; +import type { SearchIndexerDataSourceConnection } from "@azure/search-documents"; +import { SearchIndexerClient } from "@azure/search-documents"; import * as dotenv from "dotenv"; dotenv.config(); diff --git a/sdk/search/search-documents/samples-dev/indexOperations.ts b/sdk/search/search-documents/samples-dev/indexOperations.ts index cae2cb2182bd..90bab68c6249 100644 --- a/sdk/search/search-documents/samples-dev/indexOperations.ts +++ b/sdk/search/search-documents/samples-dev/indexOperations.ts @@ -6,7 +6,8 @@ */ import { DefaultAzureCredential } from "@azure/identity"; -import { SearchIndex, SearchIndexClient, SearchIndexStatistics } from "@azure/search-documents"; +import type { SearchIndex, SearchIndexStatistics } from "@azure/search-documents"; +import { SearchIndexClient } from "@azure/search-documents"; import * as dotenv from "dotenv"; dotenv.config(); diff --git a/sdk/search/search-documents/samples-dev/indexerOperations.ts b/sdk/search/search-documents/samples-dev/indexerOperations.ts index 28c4403869a9..4794a4401b0d 100644 --- a/sdk/search/search-documents/samples-dev/indexerOperations.ts +++ b/sdk/search/search-documents/samples-dev/indexerOperations.ts @@ -6,7 +6,8 @@ */ import { DefaultAzureCredential } from "@azure/identity"; -import { SearchIndexer, SearchIndexerClient, SearchIndexerStatus } from "@azure/search-documents"; +import type { SearchIndexer, SearchIndexerStatus } from "@azure/search-documents"; +import { SearchIndexerClient } from "@azure/search-documents"; import * as dotenv from "dotenv"; dotenv.config(); diff --git a/sdk/search/search-documents/samples-dev/interfaces.ts b/sdk/search/search-documents/samples-dev/interfaces.ts index 02df4b6fbd69..64044acdbc75 100644 --- a/sdk/search/search-documents/samples-dev/interfaces.ts +++ b/sdk/search/search-documents/samples-dev/interfaces.ts @@ -8,7 +8,7 @@ * @azsdk-util */ -import { GeographyPoint } from "@azure/search-documents"; +import type { GeographyPoint } from "@azure/search-documents"; export interface Hotel { hotelId?: string; diff --git a/sdk/search/search-documents/samples-dev/searchClientOperations.ts b/sdk/search/search-documents/samples-dev/searchClientOperations.ts index bfa5688a6714..4a4ca1204aed 100644 --- a/sdk/search/search-documents/samples-dev/searchClientOperations.ts +++ b/sdk/search/search-documents/samples-dev/searchClientOperations.ts @@ -6,13 +6,9 @@ */ import { DefaultAzureCredential } from "@azure/identity"; -import { - GeographyPoint, - SearchClient, - SearchIndexClient, - SelectFields, -} from "@azure/search-documents"; -import { Hotel } from "./interfaces"; +import type { SelectFields } from "@azure/search-documents"; +import { GeographyPoint, SearchClient, SearchIndexClient } from "@azure/search-documents"; +import type { Hotel } from "./interfaces"; import { createIndex, delay, WAIT_TIME } from "./setup"; import * as dotenv from "dotenv"; diff --git a/sdk/search/search-documents/samples-dev/setup.ts b/sdk/search/search-documents/samples-dev/setup.ts index d9776ed874c8..a2be15c85ced 100644 --- a/sdk/search/search-documents/samples-dev/setup.ts +++ b/sdk/search/search-documents/samples-dev/setup.ts @@ -6,9 +6,10 @@ * @azsdk-util */ -import { KnownAnalyzerNames, SearchIndex, SearchIndexClient } from "@azure/search-documents"; +import type { SearchIndex, SearchIndexClient } from "@azure/search-documents"; +import { KnownAnalyzerNames } from "@azure/search-documents"; import { env } from "process"; -import { Hotel } from "./interfaces"; +import type { Hotel } from "./interfaces"; export const WAIT_TIME = 4000; diff --git a/sdk/search/search-documents/samples-dev/skillSetOperations.ts b/sdk/search/search-documents/samples-dev/skillSetOperations.ts index bc8f2894c42c..5c7ba792ef96 100644 --- a/sdk/search/search-documents/samples-dev/skillSetOperations.ts +++ b/sdk/search/search-documents/samples-dev/skillSetOperations.ts @@ -6,7 +6,8 @@ */ import { DefaultAzureCredential } from "@azure/identity"; -import { SearchIndexerClient, SearchIndexerSkillset } from "@azure/search-documents"; +import type { SearchIndexerSkillset } from "@azure/search-documents"; +import { SearchIndexerClient } from "@azure/search-documents"; import * as dotenv from "dotenv"; dotenv.config(); diff --git a/sdk/search/search-documents/samples-dev/stickySession.ts b/sdk/search/search-documents/samples-dev/stickySession.ts index 6b4ac3d8d8dd..0d77e2d82a04 100644 --- a/sdk/search/search-documents/samples-dev/stickySession.ts +++ b/sdk/search/search-documents/samples-dev/stickySession.ts @@ -7,8 +7,9 @@ */ import { DefaultAzureCredential } from "@azure/identity"; -import { odata, SearchClient, SearchIndexClient } from "@azure/search-documents"; -import { Hotel } from "./interfaces"; +import type { SearchClient } from "@azure/search-documents"; +import { odata, SearchIndexClient } from "@azure/search-documents"; +import type { Hotel } from "./interfaces"; import { createIndex, delay, WAIT_TIME } from "./setup"; import * as dotenv from "dotenv"; diff --git a/sdk/search/search-documents/samples-dev/synonymMapOperations.ts b/sdk/search/search-documents/samples-dev/synonymMapOperations.ts index deb7c9a61efc..3a350971585d 100644 --- a/sdk/search/search-documents/samples-dev/synonymMapOperations.ts +++ b/sdk/search/search-documents/samples-dev/synonymMapOperations.ts @@ -6,7 +6,8 @@ */ import { DefaultAzureCredential } from "@azure/identity"; -import { SearchIndexClient, SynonymMap } from "@azure/search-documents"; +import type { SynonymMap } from "@azure/search-documents"; +import { SearchIndexClient } from "@azure/search-documents"; import * as dotenv from "dotenv"; dotenv.config(); diff --git a/sdk/search/search-documents/samples-dev/vectorSearch.ts b/sdk/search/search-documents/samples-dev/vectorSearch.ts index 36d79136d1dd..5aaaf431cfca 100644 --- a/sdk/search/search-documents/samples-dev/vectorSearch.ts +++ b/sdk/search/search-documents/samples-dev/vectorSearch.ts @@ -7,7 +7,7 @@ import { DefaultAzureCredential } from "@azure/identity"; import { GeographyPoint, SearchClient, SearchIndexClient } from "@azure/search-documents"; -import { Hotel } from "./interfaces"; +import type { Hotel } from "./interfaces"; import { createIndex, delay, WAIT_TIME } from "./setup"; import * as dotenv from "dotenv"; diff --git a/sdk/search/search-documents/src/indexDocumentsBatch.ts b/sdk/search/search-documents/src/indexDocumentsBatch.ts index b3209aae7545..19b6a211f48e 100644 --- a/sdk/search/search-documents/src/indexDocumentsBatch.ts +++ b/sdk/search/search-documents/src/indexDocumentsBatch.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { IndexDocumentsAction } from "./indexModels"; +import type { IndexDocumentsAction } from "./indexModels"; /** * Class used to perform batch operations diff --git a/sdk/search/search-documents/src/indexModels.ts b/sdk/search/search-documents/src/indexModels.ts index 445b3cacfb82..b217b39e3bc2 100644 --- a/sdk/search/search-documents/src/indexModels.ts +++ b/sdk/search/search-documents/src/indexModels.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { +import type { OperationOptions } from "@azure/core-client"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { AutocompleteMode, FacetResult, HybridSearch, @@ -25,7 +25,7 @@ import { Speller, VectorsDebugInfo, } from "./generated/data/models"; -import GeographyPoint from "./geographyPoint"; +import type GeographyPoint from "./geographyPoint"; /** * Options for performing the count operation on the index. diff --git a/sdk/search/search-documents/src/odataMetadataPolicy.ts b/sdk/search/search-documents/src/odataMetadataPolicy.ts index b2a6fa73e17e..b01ddb7ca951 100644 --- a/sdk/search/search-documents/src/odataMetadataPolicy.ts +++ b/sdk/search/search-documents/src/odataMetadataPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/search/search-documents/src/searchApiKeyCredentialPolicy.ts b/sdk/search/search-documents/src/searchApiKeyCredentialPolicy.ts index 4f6daee5b21e..ce3b4a2b832d 100644 --- a/sdk/search/search-documents/src/searchApiKeyCredentialPolicy.ts +++ b/sdk/search/search-documents/src/searchApiKeyCredentialPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyCredential } from "@azure/core-auth"; -import { +import type { KeyCredential } from "@azure/core-auth"; +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/search/search-documents/src/searchClient.ts b/sdk/search/search-documents/src/searchClient.ts index 945acdac9e8c..5c4c257ecf11 100644 --- a/sdk/search/search-documents/src/searchClient.ts +++ b/sdk/search/search-documents/src/searchClient.ts @@ -3,12 +3,14 @@ /// -import { isTokenCredential, KeyCredential, TokenCredential } from "@azure/core-auth"; -import { InternalClientPipelineOptions } from "@azure/core-client"; -import { ExtendedCommonClientOptions } from "@azure/core-http-compat"; -import { bearerTokenAuthenticationPolicy, Pipeline } from "@azure/core-rest-pipeline"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { InternalClientPipelineOptions } from "@azure/core-client"; +import type { ExtendedCommonClientOptions } from "@azure/core-http-compat"; +import type { Pipeline } from "@azure/core-rest-pipeline"; +import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; import { decode, encode } from "./base64"; -import { +import type { AutocompleteRequest, AutocompleteResult, IndexDocumentsResult, @@ -20,7 +22,7 @@ import { } from "./generated/data/models"; import { SearchClient as GeneratedClient } from "./generated/data/searchClient"; import { IndexDocumentsBatch } from "./indexDocumentsBatch"; -import { +import type { AutocompleteOptions, CountDocumentsOptions, DeleteDocumentsOptions, @@ -51,7 +53,7 @@ import { logger } from "./logger"; import { createOdataMetadataPolicy } from "./odataMetadataPolicy"; import { createSearchApiKeyCredentialPolicy } from "./searchApiKeyCredentialPolicy"; import { KnownSearchAudience } from "./searchAudience"; -import { IndexDocumentsClient } from "./searchIndexingBufferedSender"; +import type { IndexDocumentsClient } from "./searchIndexingBufferedSender"; import { deserialize, serialize } from "./serialization"; import * as utils from "./serviceUtils"; import { createSpan } from "./tracing"; diff --git a/sdk/search/search-documents/src/searchIndexClient.ts b/sdk/search/search-documents/src/searchIndexClient.ts index 38b10f6d7a46..a9d44602b23b 100644 --- a/sdk/search/search-documents/src/searchIndexClient.ts +++ b/sdk/search/search-documents/src/searchIndexClient.ts @@ -3,18 +3,21 @@ /// -import { isTokenCredential, KeyCredential, TokenCredential } from "@azure/core-auth"; -import { InternalClientPipelineOptions } from "@azure/core-client"; -import { ExtendedCommonClientOptions } from "@azure/core-http-compat"; -import { bearerTokenAuthenticationPolicy, Pipeline } from "@azure/core-rest-pipeline"; -import { AnalyzeResult } from "./generated/service/models"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { InternalClientPipelineOptions } from "@azure/core-client"; +import type { ExtendedCommonClientOptions } from "@azure/core-http-compat"; +import type { Pipeline } from "@azure/core-rest-pipeline"; +import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; +import type { AnalyzeResult } from "./generated/service/models"; import { SearchServiceClient as GeneratedClient } from "./generated/service/searchServiceClient"; import { logger } from "./logger"; import { createOdataMetadataPolicy } from "./odataMetadataPolicy"; import { createSearchApiKeyCredentialPolicy } from "./searchApiKeyCredentialPolicy"; import { KnownSearchAudience } from "./searchAudience"; -import { SearchClient, SearchClientOptions as GetSearchClientOptions } from "./searchClient"; -import { +import type { SearchClientOptions as GetSearchClientOptions } from "./searchClient"; +import { SearchClient } from "./searchClient"; +import type { AliasIterator, AnalyzeTextOptions, CreateAliasOptions, diff --git a/sdk/search/search-documents/src/searchIndexerClient.ts b/sdk/search/search-documents/src/searchIndexerClient.ts index 56b837704e80..1fc4788d1621 100644 --- a/sdk/search/search-documents/src/searchIndexerClient.ts +++ b/sdk/search/search-documents/src/searchIndexerClient.ts @@ -1,17 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { isTokenCredential, KeyCredential, TokenCredential } from "@azure/core-auth"; -import { InternalClientPipelineOptions } from "@azure/core-client"; -import { ExtendedCommonClientOptions } from "@azure/core-http-compat"; -import { bearerTokenAuthenticationPolicy, Pipeline } from "@azure/core-rest-pipeline"; -import { SearchIndexerStatus } from "./generated/service/models"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { InternalClientPipelineOptions } from "@azure/core-client"; +import type { ExtendedCommonClientOptions } from "@azure/core-http-compat"; +import type { Pipeline } from "@azure/core-rest-pipeline"; +import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; +import type { SearchIndexerStatus } from "./generated/service/models"; import { SearchServiceClient as GeneratedClient } from "./generated/service/searchServiceClient"; import { logger } from "./logger"; import { createOdataMetadataPolicy } from "./odataMetadataPolicy"; import { createSearchApiKeyCredentialPolicy } from "./searchApiKeyCredentialPolicy"; import { KnownSearchAudience } from "./searchAudience"; -import { +import type { CreateDataSourceConnectionOptions, CreateIndexerOptions, CreateorUpdateDataSourceConnectionOptions, diff --git a/sdk/search/search-documents/src/searchIndexingBufferedSender.ts b/sdk/search/search-documents/src/searchIndexingBufferedSender.ts index 2741be23b474..1b98c3ce3441 100644 --- a/sdk/search/search-documents/src/searchIndexingBufferedSender.ts +++ b/sdk/search/search-documents/src/searchIndexingBufferedSender.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { RestError } from "@azure/core-rest-pipeline"; +import type { OperationOptions } from "@azure/core-client"; +import type { RestError } from "@azure/core-rest-pipeline"; import { delay } from "@azure/core-util"; import EventEmitter from "events"; -import { IndexDocumentsResult } from "./generated/data/models"; +import type { IndexDocumentsResult } from "./generated/data/models"; import { IndexDocumentsBatch } from "./indexDocumentsBatch"; -import { +import type { IndexDocumentsAction, IndexDocumentsOptions, SearchIndexingBufferedSenderDeleteDocumentsOptions, diff --git a/sdk/search/search-documents/src/serviceModels.ts b/sdk/search/search-documents/src/serviceModels.ts index 7159e7df2153..6168117ec91b 100644 --- a/sdk/search/search-documents/src/serviceModels.ts +++ b/sdk/search/search-documents/src/serviceModels.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { +import type { OperationOptions } from "@azure/core-client"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { AIStudioModelCatalogName, AsciiFoldingTokenFilter, AzureMachineLearningSkill, diff --git a/sdk/search/search-documents/src/serviceUtils.ts b/sdk/search/search-documents/src/serviceUtils.ts index 4a7f68660392..670f408ef00c 100644 --- a/sdk/search/search-documents/src/serviceUtils.ts +++ b/sdk/search/search-documents/src/serviceUtils.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { SearchResult as GeneratedSearchResult, SuggestDocumentsResult as GeneratedSuggestDocumentsResult, } from "./generated/data/models"; -import { +import type { AIServicesVisionVectorizer as GeneratedAIServicesVisionVectorizer, AMLParameters as GeneratedAMLParameters, AMLVectorizer as GeneratedAMLVectorizer, @@ -49,9 +49,14 @@ import { VectorSearchVectorizerUnion as GeneratedVectorSearchVectorizer, WebApiVectorizer as GeneratedWebApiVectorizer, } from "./generated/service/models"; -import { SearchResult, SelectFields, SuggestDocumentsResult, SuggestResult } from "./indexModels"; +import type { + SearchResult, + SelectFields, + SuggestDocumentsResult, + SuggestResult, +} from "./indexModels"; import { logger } from "./logger"; -import { +import type { AIServicesVisionVectorizer, AzureMachineLearningVectorizer, AzureMachineLearningVectorizerParameters, @@ -68,7 +73,6 @@ import { IndexerExecutionEnvironment, IndexingParameters, IndexingParametersConfiguration, - isComplexField, KeyAuthAzureMachineLearningVectorizerParameters, LexicalAnalyzer, LexicalNormalizer, @@ -101,6 +105,7 @@ import { VectorSearchVectorizer, WebApiVectorizer, } from "./serviceModels"; +import { isComplexField } from "./serviceModels"; export const defaultServiceVersion = "2024-09-01-Preview"; diff --git a/sdk/search/search-documents/src/synonymMapHelper.browser.ts b/sdk/search/search-documents/src/synonymMapHelper.browser.ts index d77cd7e48e3c..1450cdc45479 100644 --- a/sdk/search/search-documents/src/synonymMapHelper.browser.ts +++ b/sdk/search/search-documents/src/synonymMapHelper.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { SynonymMap } from "./serviceModels"; +import type { SynonymMap } from "./serviceModels"; /** * Helper method to create a SynonymMap object. This is a NodeJS only method. diff --git a/sdk/search/search-documents/src/synonymMapHelper.ts b/sdk/search/search-documents/src/synonymMapHelper.ts index e64481500997..35e23f9e4e99 100644 --- a/sdk/search/search-documents/src/synonymMapHelper.ts +++ b/sdk/search/search-documents/src/synonymMapHelper.ts @@ -3,7 +3,7 @@ import * as fs from "fs"; import { promisify } from "util"; -import { SynonymMap } from "./serviceModels"; +import type { SynonymMap } from "./serviceModels"; const readFileAsync = promisify(fs.readFile); /** diff --git a/sdk/search/search-documents/test/internal/node/synonymMap.node.spec.ts b/sdk/search/search-documents/test/internal/node/synonymMap.node.spec.ts index 41c8aae117a5..fa525db52a3a 100644 --- a/sdk/search/search-documents/test/internal/node/synonymMap.node.spec.ts +++ b/sdk/search/search-documents/test/internal/node/synonymMap.node.spec.ts @@ -3,7 +3,7 @@ import { assert } from "chai"; import { createSynonymMapFromFile } from "../../../src"; -import { SynonymMap } from "../../../src/serviceModels"; +import type { SynonymMap } from "../../../src/serviceModels"; describe("synonymmap", function () { it("create synonymmap from file(node)", async function () { diff --git a/sdk/search/search-documents/test/internal/serviceUtils.spec.ts b/sdk/search/search-documents/test/internal/serviceUtils.spec.ts index d5385c6b1eb2..373733856a3a 100644 --- a/sdk/search/search-documents/test/internal/serviceUtils.spec.ts +++ b/sdk/search/search-documents/test/internal/serviceUtils.spec.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { SearchField as GeneratedSearchField } from "../../src/generated/service/models/index"; +import type { SearchField as GeneratedSearchField } from "../../src/generated/service/models/index"; import { KnownAnalyzerNames } from "../../src/index"; -import { ComplexField, SearchField } from "../../src/serviceModels"; +import type { ComplexField, SearchField } from "../../src/serviceModels"; import { convertFieldsToGenerated, convertFieldsToPublic } from "../../src/serviceUtils"; describe("serviceUtils", function () { diff --git a/sdk/search/search-documents/test/narrowedTypes.ts b/sdk/search/search-documents/test/narrowedTypes.ts index 51843764e25e..8767c7c3cd13 100644 --- a/sdk/search/search-documents/test/narrowedTypes.ts +++ b/sdk/search/search-documents/test/narrowedTypes.ts @@ -7,8 +7,9 @@ /* eslint-disable @typescript-eslint/explicit-function-return-type */ /* eslint-disable @typescript-eslint/no-unused-vars */ -import { SearchClient, SelectFields } from "../src/index"; -import { +import type { SelectFields } from "../src/index"; +import { SearchClient } from "../src/index"; +import type { NarrowedModel as GenericNarrowedModel, SearchFieldArray, SearchPick, diff --git a/sdk/search/search-documents/test/public/node/searchClient.spec.ts b/sdk/search/search-documents/test/public/node/searchClient.spec.ts index 1228e2e412d7..7155649f11ec 100644 --- a/sdk/search/search-documents/test/public/node/searchClient.spec.ts +++ b/sdk/search/search-documents/test/public/node/searchClient.spec.ts @@ -3,24 +3,26 @@ import { env, isLiveMode, Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context, Suite } from "mocha"; +import type { Context, Suite } from "mocha"; import { delay } from "@azure/core-util"; -import { OpenAIClient } from "@azure/openai"; -import { +import type { OpenAIClient } from "@azure/openai"; +import type { AutocompleteResult, + SearchIndex, + SearchIndexClient, + SelectFields, +} from "../../../src"; +import { AzureKeyCredential, IndexDocumentsBatch, KnownQueryLanguage, KnownSpeller, SearchClient, - SearchIndex, - SearchIndexClient, - SelectFields, } from "../../../src"; -import { SearchFieldArray, SelectArray } from "../../../src/indexModels"; +import type { SearchFieldArray, SelectArray } from "../../../src/indexModels"; import { defaultServiceVersion } from "../../../src/serviceUtils"; -import { Hotel } from "../utils/interfaces"; +import type { Hotel } from "../utils/interfaces"; import { createClients } from "../utils/recordedClient"; import { createIndex, createRandomIndexName, populateIndex, WAIT_TIME } from "../utils/setup"; diff --git a/sdk/search/search-documents/test/public/node/searchIndexClient.spec.ts b/sdk/search/search-documents/test/public/node/searchIndexClient.spec.ts index 6b33f92f7127..72fc60f94a95 100644 --- a/sdk/search/search-documents/test/public/node/searchIndexClient.spec.ts +++ b/sdk/search/search-documents/test/public/node/searchIndexClient.spec.ts @@ -4,18 +4,17 @@ import { env, isLiveMode, Recorder } from "@azure-tools/test-recorder"; import { delay } from "@azure/core-util"; import { assert } from "chai"; -import { Context, Suite } from "mocha"; -import { - AzureKeyCredential, +import type { Context, Suite } from "mocha"; +import type { AzureOpenAIVectorizer, SearchIndex, - SearchIndexClient, SynonymMap, VectorSearchAlgorithmConfiguration, VectorSearchProfile, } from "../../../src"; +import { AzureKeyCredential, SearchIndexClient } from "../../../src"; import { defaultServiceVersion } from "../../../src/serviceUtils"; -import { Hotel } from "../utils/interfaces"; +import type { Hotel } from "../utils/interfaces"; import { createClients } from "../utils/recordedClient"; import { createRandomIndexName, diff --git a/sdk/search/search-documents/test/public/typeDefinitions.ts b/sdk/search/search-documents/test/public/typeDefinitions.ts index 052313e3835f..71d3b2d893ad 100644 --- a/sdk/search/search-documents/test/public/typeDefinitions.ts +++ b/sdk/search/search-documents/test/public/typeDefinitions.ts @@ -3,14 +3,14 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ -import { +import type { KnownSemanticErrorMode, KnownSemanticErrorReason, KnownSemanticSearchResultsType, KnownVectorFilterMode, KnownVectorQueryKind, } from "../../src/generated/data"; -import { +import type { KnownBlobIndexerDataToExtract, KnownBlobIndexerImageAction, KnownBlobIndexerParsingMode, diff --git a/sdk/search/search-documents/test/public/utils/interfaces.ts b/sdk/search/search-documents/test/public/utils/interfaces.ts index 719d87f0025b..eae9cd61278c 100644 --- a/sdk/search/search-documents/test/public/utils/interfaces.ts +++ b/sdk/search/search-documents/test/public/utils/interfaces.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { GeographyPoint } from "../../../src"; +import type { GeographyPoint } from "../../../src"; export interface Hotel { hotelId: string; diff --git a/sdk/search/search-documents/test/public/utils/recordedClient.ts b/sdk/search/search-documents/test/public/utils/recordedClient.ts index e93677d4721d..87f8d5bcd09f 100644 --- a/sdk/search/search-documents/test/public/utils/recordedClient.ts +++ b/sdk/search/search-documents/test/public/utils/recordedClient.ts @@ -2,13 +2,8 @@ // Licensed under the MIT License. import { createTestCredential } from "@azure-tools/test-credential"; -import { - assertEnvironmentVariable, - env, - Recorder, - RecorderStartOptions, - SanitizerOptions, -} from "@azure-tools/test-recorder"; +import type { Recorder, RecorderStartOptions, SanitizerOptions } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable, env } from "@azure-tools/test-recorder"; import { isDefined } from "@azure/core-util"; import { OpenAIClient } from "@azure/openai"; import { SearchClient, SearchIndexClient, SearchIndexerClient } from "../../../src"; diff --git a/sdk/search/search-documents/test/public/utils/setup.ts b/sdk/search/search-documents/test/public/utils/setup.ts index bd004d19926e..2d2175193f0b 100644 --- a/sdk/search/search-documents/test/public/utils/setup.ts +++ b/sdk/search/search-documents/test/public/utils/setup.ts @@ -3,11 +3,9 @@ import { assertEnvironmentVariable, isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; import { computeSha256Hash, delay, isDefined } from "@azure/core-util"; -import { OpenAIClient } from "@azure/openai"; +import type { OpenAIClient } from "@azure/openai"; import { assert } from "chai"; -import { - GeographyPoint, - KnownAnalyzerNames, +import type { SearchClient, SearchField, SearchIndex, @@ -18,7 +16,8 @@ import { VectorSearchProfile, VectorSearchVectorizer, } from "../../../src"; -import { Hotel } from "./interfaces"; +import { GeographyPoint, KnownAnalyzerNames } from "../../../src"; +import type { Hotel } from "./interfaces"; export const WAIT_TIME = isPlaybackMode() ? 0 : 4000; diff --git a/sdk/servicebus/service-bus/review/service-bus.api.md b/sdk/servicebus/service-bus/review/service-bus.api.md index 9f5863a2337a..236f1aa0026f 100644 --- a/sdk/servicebus/service-bus/review/service-bus.api.md +++ b/sdk/servicebus/service-bus/review/service-bus.api.md @@ -4,29 +4,29 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; +import type { AbortSignalLike } from '@azure/abort-controller'; import { AmqpAnnotatedMessage } from '@azure/core-amqp'; import { Buffer as Buffer_2 } from 'buffer'; -import { CommonClientOptions } from '@azure/core-client'; +import type { CommonClientOptions } from '@azure/core-client'; import { delay } from '@azure/core-amqp'; import { Delivery } from 'rhea-promise'; -import { HttpMethods } from '@azure/core-rest-pipeline'; +import type { HttpMethods } from '@azure/core-rest-pipeline'; import Long from 'long'; import { MessagingError } from '@azure/core-amqp'; -import { NamedKeyCredential } from '@azure/core-auth'; +import type { NamedKeyCredential } from '@azure/core-auth'; import { OperationOptions } from '@azure/core-client'; -import { OperationTracingOptions } from '@azure/core-tracing'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PageSettings } from '@azure/core-paging'; -import { ProxySettings } from '@azure/core-rest-pipeline'; +import type { OperationTracingOptions } from '@azure/core-tracing'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PageSettings } from '@azure/core-paging'; +import type { ProxySettings } from '@azure/core-rest-pipeline'; import { RetryMode } from '@azure/core-amqp'; import { RetryOptions } from '@azure/core-amqp'; -import { SASCredential } from '@azure/core-auth'; +import type { SASCredential } from '@azure/core-auth'; import { ServiceClient } from '@azure/core-client'; import { TokenCredential } from '@azure/core-auth'; import { TokenType } from '@azure/core-amqp'; -import { TracingContext } from '@azure/core-tracing'; -import { UserAgentPolicyOptions } from '@azure/core-rest-pipeline'; +import type { TracingContext } from '@azure/core-tracing'; +import type { UserAgentPolicyOptions } from '@azure/core-rest-pipeline'; import { WebSocketImpl } from 'rhea-promise'; import { WebSocketOptions } from '@azure/core-amqp'; diff --git a/sdk/servicebus/service-bus/src/connectionContext.ts b/sdk/servicebus/service-bus/src/connectionContext.ts index 8a3e1f013eff..280207b83c7f 100644 --- a/sdk/servicebus/service-bus/src/connectionContext.ts +++ b/sdk/servicebus/service-bus/src/connectionContext.ts @@ -3,29 +3,29 @@ import { connectionLogger as logger } from "./log.js"; import { packageJsonInfo } from "./util/constants.js"; -import { +import type { ConnectionConfig, - ConnectionContextBase, CreateConnectionContextBaseParameters, SasTokenProvider, } from "@azure/core-amqp"; -import { TokenCredential } from "@azure/core-auth"; -import { ServiceBusClientOptions } from "./constructorHelpers.js"; -import { +import { ConnectionContextBase } from "@azure/core-amqp"; +import type { TokenCredential } from "@azure/core-auth"; +import type { ServiceBusClientOptions } from "./constructorHelpers.js"; +import type { AmqpError, Connection, ConnectionError, - ConnectionEvents, EventContext, OnAmqpEvent, } from "rhea-promise"; -import { MessageSender } from "./core/messageSender.js"; -import { MessageSession } from "./session/messageSession.js"; -import { MessageReceiver } from "./core/messageReceiver.js"; +import { ConnectionEvents } from "rhea-promise"; +import type { MessageSender } from "./core/messageSender.js"; +import type { MessageSession } from "./session/messageSession.js"; +import type { MessageReceiver } from "./core/messageReceiver.js"; import { ManagementClient } from "./core/managementClient.js"; import { formatUserAgentPrefix } from "./util/utils.js"; import { getRuntimeInfo } from "./util/runtimeInfo.js"; -import { NonSessionReceiverType, ReceiverType } from "./core/linkEntity.js"; +import type { NonSessionReceiverType, ReceiverType } from "./core/linkEntity.js"; import { ServiceBusError } from "./serviceBusError.js"; /** diff --git a/sdk/servicebus/service-bus/src/constructorHelpers.ts b/sdk/servicebus/service-bus/src/constructorHelpers.ts index bb9a08082838..b29a7dc25ab8 100644 --- a/sdk/servicebus/service-bus/src/constructorHelpers.ts +++ b/sdk/servicebus/service-bus/src/constructorHelpers.ts @@ -1,26 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - ConnectionConfig, - createSasTokenProvider, - RetryOptions, - SasTokenProvider, - WebSocketOptions, -} from "@azure/core-amqp"; -import { - isNamedKeyCredential, - isSASCredential, - NamedKeyCredential, - SASCredential, - TokenCredential, -} from "@azure/core-auth"; +import type { RetryOptions, SasTokenProvider, WebSocketOptions } from "@azure/core-amqp"; +import { ConnectionConfig, createSasTokenProvider } from "@azure/core-amqp"; +import type { NamedKeyCredential, SASCredential, TokenCredential } from "@azure/core-auth"; +import { isNamedKeyCredential, isSASCredential } from "@azure/core-auth"; import { ConnectionContext } from "./connectionContext.js"; -import { UserAgentPolicyOptions } from "@azure/core-rest-pipeline"; -import { - parseServiceBusConnectionString, - ServiceBusConnectionStringProperties, -} from "./util/connectionStringUtils.js"; +import type { UserAgentPolicyOptions } from "@azure/core-rest-pipeline"; +import type { ServiceBusConnectionStringProperties } from "./util/connectionStringUtils.js"; +import { parseServiceBusConnectionString } from "./util/connectionStringUtils.js"; /** * Describes the options that can be provided while creating the ServiceBusClient. diff --git a/sdk/servicebus/service-bus/src/core/autoLockRenewer.ts b/sdk/servicebus/service-bus/src/core/autoLockRenewer.ts index f223ad6c65c9..a88dd156c40e 100644 --- a/sdk/servicebus/service-bus/src/core/autoLockRenewer.ts +++ b/sdk/servicebus/service-bus/src/core/autoLockRenewer.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ConnectionContext } from "../connectionContext.js"; +import type { ConnectionContext } from "../connectionContext.js"; import { receiverLogger as logger } from "../log.js"; -import { ServiceBusMessageImpl } from "../serviceBusMessage.js"; +import type { ServiceBusMessageImpl } from "../serviceBusMessage.js"; import { calculateRenewAfterDuration } from "../util/utils.js"; -import { LinkEntity } from "./linkEntity.js"; -import { OnErrorNoContext } from "./messageReceiver.js"; +import type { LinkEntity } from "./linkEntity.js"; +import type { OnErrorNoContext } from "./messageReceiver.js"; /** * @internal diff --git a/sdk/servicebus/service-bus/src/core/batchingReceiver.ts b/sdk/servicebus/service-bus/src/core/batchingReceiver.ts index eb434ca5add4..b5a2259c2c79 100644 --- a/sdk/servicebus/service-bus/src/core/batchingReceiver.ts +++ b/sdk/servicebus/service-bus/src/core/batchingReceiver.ts @@ -2,25 +2,25 @@ // Licensed under the MIT License. import { receiverLogger as logger } from "../log.js"; -import { +import type { AmqpError, EventContext, OnAmqpEvent, - ReceiverEvents, - SessionEvents, Receiver as RheaPromiseReceiver, Session, } from "rhea-promise"; +import { ReceiverEvents, SessionEvents } from "rhea-promise"; import { ServiceBusMessageImpl } from "../serviceBusMessage.js"; -import { MessageReceiver, OnAmqpEventAsPromise, ReceiveOptions } from "./messageReceiver.js"; -import { ConnectionContext } from "../connectionContext.js"; +import type { OnAmqpEventAsPromise, ReceiveOptions } from "./messageReceiver.js"; +import { MessageReceiver } from "./messageReceiver.js"; +import type { ConnectionContext } from "../connectionContext.js"; import { throwErrorIfConnectionClosed } from "../util/errors.js"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { checkAndRegisterWithAbortSignal } from "../util/utils.js"; import { receiveDrainTimeoutInMs } from "../util/constants.js"; -import { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; +import type { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; import { toProcessingSpanOptions } from "../diagnostics/instrumentServiceBusMessage.js"; -import { ReceiveMode } from "../models.js"; +import type { ReceiveMode } from "../models.js"; import { ServiceBusError, translateServiceBusError } from "../serviceBusError.js"; import { tracingClient } from "../diagnostics/tracing.js"; diff --git a/sdk/servicebus/service-bus/src/core/linkEntity.ts b/sdk/servicebus/service-bus/src/core/linkEntity.ts index 702f6ca5390c..b2b0c0be398f 100644 --- a/sdk/servicebus/service-bus/src/core/linkEntity.ts +++ b/sdk/servicebus/service-bus/src/core/linkEntity.ts @@ -1,27 +1,28 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { RequestResponseLink } from "@azure/core-amqp"; import { Constants, TokenType, defaultCancellableLock, - RequestResponseLink, StandardAbortMessage, isSasTokenProvider, } from "@azure/core-amqp"; -import { AccessToken } from "@azure/core-auth"; -import { ConnectionContext } from "../connectionContext.js"; -import { +import type { AccessToken } from "@azure/core-auth"; +import type { ConnectionContext } from "../connectionContext.js"; +import type { AwaitableSender, AwaitableSenderOptions, - generate_uuid, Receiver, ReceiverOptions, SenderOptions, } from "rhea-promise"; +import { generate_uuid } from "rhea-promise"; import { getUniqueName } from "../util/utils.js"; -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; -import { ServiceBusLogger } from "../log.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; +import type { ServiceBusLogger } from "../log.js"; import { ServiceBusError } from "../serviceBusError.js"; /** diff --git a/sdk/servicebus/service-bus/src/core/managementClient.ts b/sdk/servicebus/service-bus/src/core/managementClient.ts index 60362ac67402..274d86c32043 100644 --- a/sdk/servicebus/service-bus/src/core/managementClient.ts +++ b/sdk/servicebus/service-bus/src/core/managementClient.ts @@ -2,41 +2,46 @@ // Licensed under the MIT License. import Long from "long"; -import { +import type { EventContext, ReceiverOptions, - message as RheaMessageUtil, SenderOptions, + Typed, + Message as RheaMessage, +} from "rhea-promise"; +import { + message as RheaMessageUtil, generate_uuid, string_to_uuid, types, - Typed, ReceiverEvents, - Message as RheaMessage, } from "rhea-promise"; +import type { + MessagingError, + SendRequestOptions, + RetryOptions, + AmqpAnnotatedMessage, +} from "@azure/core-amqp"; import { ConditionErrorNameMapper, Constants, defaultCancellableLock, - MessagingError, RequestResponseLink, - SendRequestOptions, - RetryOptions, - AmqpAnnotatedMessage, } from "@azure/core-amqp"; -import { ConnectionContext } from "../connectionContext.js"; +import type { ConnectionContext } from "../connectionContext.js"; +import type { ServiceBusReceivedMessage, ServiceBusMessage } from "../serviceBusMessage.js"; import { DispositionType, - ServiceBusReceivedMessage, - ServiceBusMessage, ServiceBusMessageImpl, toRheaMessage, fromRheaMessage, updateScheduledTime, updateMessageId, } from "../serviceBusMessage.js"; -import { LinkEntity, RequestResponseLinkOptions } from "./linkEntity.js"; -import { managementClientLogger, receiverLogger, senderLogger, ServiceBusLogger } from "../log.js"; +import type { RequestResponseLinkOptions } from "./linkEntity.js"; +import { LinkEntity } from "./linkEntity.js"; +import type { ServiceBusLogger } from "../log.js"; +import { managementClientLogger, receiverLogger, senderLogger } from "../log.js"; import { toBuffer, waitForSendable } from "../util/utils.js"; import { InvalidMaxMessageCountError, @@ -49,18 +54,18 @@ import { import { max32BitNumber } from "../util/constants.js"; // eslint-disable-next-line @typescript-eslint/no-redeclare import { Buffer } from "buffer"; -import { OperationOptionsBase } from "./../modelsToBeSharedWithEventHubs.js"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { ReceiveMode } from "../models.js"; +import type { OperationOptionsBase } from "./../modelsToBeSharedWithEventHubs.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { ReceiveMode } from "../models.js"; import { translateServiceBusError } from "../serviceBusError.js"; import { defaultDataTransformer, tryToJsonDecode } from "../dataTransformer.js"; import { delay, isDefined, isObjectWithProperties } from "@azure/core-util"; -import { +import type { RuleProperties, SqlRuleAction, SqlRuleFilter, } from "../serializers/ruleResourceSerializer.js"; -import { ListRequestOptions } from "../serviceBusAtomManagementClient.js"; +import type { ListRequestOptions } from "../serviceBusAtomManagementClient.js"; /** * @internal diff --git a/sdk/servicebus/service-bus/src/core/messageReceiver.ts b/sdk/servicebus/service-bus/src/core/messageReceiver.ts index 410b723f54ce..f8dbcf2dc2b5 100644 --- a/sdk/servicebus/service-bus/src/core/messageReceiver.ts +++ b/sdk/servicebus/service-bus/src/core/messageReceiver.ts @@ -1,28 +1,22 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - Constants, - ErrorNameConditionMapper, - MessagingError, - RetryOptions, -} from "@azure/core-amqp"; -import { AmqpError, EventContext, OnAmqpEvent, Receiver, ReceiverOptions } from "rhea-promise"; +import type { MessagingError, RetryOptions } from "@azure/core-amqp"; +import { Constants, ErrorNameConditionMapper } from "@azure/core-amqp"; +import type { AmqpError, EventContext, OnAmqpEvent, Receiver, ReceiverOptions } from "rhea-promise"; import { receiverLogger as logger } from "../log.js"; -import { LinkEntity, ReceiverType } from "./linkEntity.js"; -import { ConnectionContext } from "../connectionContext.js"; -import { DispositionType, ServiceBusMessageImpl } from "../serviceBusMessage.js"; +import type { ReceiverType } from "./linkEntity.js"; +import { LinkEntity } from "./linkEntity.js"; +import type { ConnectionContext } from "../connectionContext.js"; +import type { ServiceBusMessageImpl } from "../serviceBusMessage.js"; +import { DispositionType } from "../serviceBusMessage.js"; import { getUniqueName } from "../util/utils.js"; -import { ProcessErrorArgs, ReceiveMode, SubscribeOptions } from "../models.js"; -import { DispositionStatusOptions } from "./managementClient.js"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { - onMessageSettled, - DeferredPromiseAndTimer, - ReceiverHandlers, - createReceiverOptions, -} from "./shared.js"; -import { LockRenewer } from "./autoLockRenewer.js"; +import type { ProcessErrorArgs, ReceiveMode, SubscribeOptions } from "../models.js"; +import type { DispositionStatusOptions } from "./managementClient.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { DeferredPromiseAndTimer, ReceiverHandlers } from "./shared.js"; +import { onMessageSettled, createReceiverOptions } from "./shared.js"; +import type { LockRenewer } from "./autoLockRenewer.js"; import { translateServiceBusError } from "../serviceBusError.js"; /** diff --git a/sdk/servicebus/service-bus/src/core/messageSender.ts b/sdk/servicebus/service-bus/src/core/messageSender.ts index 7e26088cb3bd..72d8f62e39d8 100644 --- a/sdk/servicebus/service-bus/src/core/messageSender.ts +++ b/sdk/servicebus/service-bus/src/core/messageSender.ts @@ -2,33 +2,32 @@ // Licensed under the MIT License. import { senderLogger as logger } from "../log.js"; -import { +import type { AmqpError, AwaitableSender, AwaitableSenderOptions, EventContext, OnAmqpEvent, - message as RheaMessageUtil, } from "rhea-promise"; -import { - Constants, - ErrorNameConditionMapper, +import { message as RheaMessageUtil } from "rhea-promise"; +import type { MessagingError, RetryConfig, - RetryOperationType, RetryOptions, - retry, AmqpAnnotatedMessage, } from "@azure/core-amqp"; -import { ServiceBusMessage, toRheaMessage } from "../serviceBusMessage.js"; -import { ConnectionContext } from "../connectionContext.js"; +import { Constants, ErrorNameConditionMapper, RetryOperationType, retry } from "@azure/core-amqp"; +import type { ServiceBusMessage } from "../serviceBusMessage.js"; +import { toRheaMessage } from "../serviceBusMessage.js"; +import type { ConnectionContext } from "../connectionContext.js"; import { LinkEntity } from "./linkEntity.js"; import { getUniqueName, waitForSendable, waitForTimeoutOrAbortOrResolve } from "../util/utils.js"; import { throwErrorIfConnectionClosed } from "../util/errors.js"; -import { ServiceBusMessageBatch, ServiceBusMessageBatchImpl } from "../serviceBusMessageBatch.js"; -import { CreateMessageBatchOptions } from "../models.js"; -import { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { ServiceBusMessageBatch } from "../serviceBusMessageBatch.js"; +import { ServiceBusMessageBatchImpl } from "../serviceBusMessageBatch.js"; +import type { CreateMessageBatchOptions } from "../models.js"; +import type { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { ServiceBusError, translateServiceBusError } from "../serviceBusError.js"; import { isDefined } from "@azure/core-util"; import { defaultDataTransformer } from "../dataTransformer.js"; diff --git a/sdk/servicebus/service-bus/src/core/receiverHelper.ts b/sdk/servicebus/service-bus/src/core/receiverHelper.ts index 070b1df20d82..0a1b5f41e076 100644 --- a/sdk/servicebus/service-bus/src/core/receiverHelper.ts +++ b/sdk/servicebus/service-bus/src/core/receiverHelper.ts @@ -2,7 +2,8 @@ // Licensed under the MIT License. import { AbortError } from "@azure/abort-controller"; -import { Receiver, ReceiverEvents } from "rhea-promise"; +import type { Receiver } from "rhea-promise"; +import { ReceiverEvents } from "rhea-promise"; import { receiverLogger as logger } from "../log.js"; import { ServiceBusError } from "../serviceBusError.js"; import { receiveDrainTimeoutInMs } from "../util/constants.js"; diff --git a/sdk/servicebus/service-bus/src/core/shared.ts b/sdk/servicebus/service-bus/src/core/shared.ts index 14d91c365042..c3175e9c1d9a 100644 --- a/sdk/servicebus/service-bus/src/core/shared.ts +++ b/sdk/servicebus/service-bus/src/core/shared.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Delivery, ReceiverOptions, Source } from "rhea-promise"; +import type { Delivery, ReceiverOptions, Source } from "rhea-promise"; import { translateServiceBusError } from "../serviceBusError.js"; import { receiverLogger } from "../log.js"; -import { ReceiveMode } from "../models.js"; +import type { ReceiveMode } from "../models.js"; import { Constants } from "@azure/core-amqp"; /** diff --git a/sdk/servicebus/service-bus/src/core/streamingReceiver.ts b/sdk/servicebus/service-bus/src/core/streamingReceiver.ts index c370b7af0e3f..ea700eb25341 100644 --- a/sdk/servicebus/service-bus/src/core/streamingReceiver.ts +++ b/sdk/servicebus/service-bus/src/core/streamingReceiver.ts @@ -1,26 +1,23 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MessageReceiver, OnAmqpEventAsPromise, ReceiveOptions } from "./messageReceiver.js"; -import { ConnectionContext } from "../connectionContext.js"; +import type { OnAmqpEventAsPromise, ReceiveOptions } from "./messageReceiver.js"; +import { MessageReceiver } from "./messageReceiver.js"; +import type { ConnectionContext } from "../connectionContext.js"; import { ReceiverHelper } from "./receiverHelper.js"; import { throwErrorIfConnectionClosed } from "../util/errors.js"; -import { - RetryOperationType, - MessagingError, - RetryOptions, - ConditionErrorNameMapper, -} from "@azure/core-amqp"; -import { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; +import type { MessagingError, RetryOptions } from "@azure/core-amqp"; +import { RetryOperationType, ConditionErrorNameMapper } from "@azure/core-amqp"; +import type { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; import { receiverLogger as logger } from "../log.js"; -import { AmqpError, EventContext, OnAmqpEvent } from "rhea-promise"; +import type { AmqpError, EventContext, OnAmqpEvent } from "rhea-promise"; import { ServiceBusMessageImpl } from "../serviceBusMessage.js"; import { translateServiceBusError } from "../serviceBusError.js"; import { abandonMessage, completeMessage, retryForever } from "../receivers/receiverCommon.js"; -import { ReceiverHandlers } from "./shared.js"; -import { +import type { ReceiverHandlers } from "./shared.js"; +import type { InternalMessageHandlers, InternalProcessErrorArgs, MessageHandlers, diff --git a/sdk/servicebus/service-bus/src/diagnostics/instrumentServiceBusMessage.ts b/sdk/servicebus/service-bus/src/diagnostics/instrumentServiceBusMessage.ts index 74978c9b1011..1c450d8410e1 100644 --- a/sdk/servicebus/service-bus/src/diagnostics/instrumentServiceBusMessage.ts +++ b/sdk/servicebus/service-bus/src/diagnostics/instrumentServiceBusMessage.ts @@ -1,12 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TracingContext, TracingSpanLink, TracingSpanOptions } from "@azure/core-tracing"; -import { ConnectionContext } from "../connectionContext.js"; -import { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; -import { ServiceBusReceiver } from "../receivers/receiver.js"; -import { ServiceBusMessage, ServiceBusReceivedMessage } from "../serviceBusMessage.js"; -import { MessagingOperationNames, toSpanOptions, tracingClient } from "./tracing.js"; +import type { TracingContext, TracingSpanLink, TracingSpanOptions } from "@azure/core-tracing"; +import type { ConnectionContext } from "../connectionContext.js"; +import type { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; +import type { ServiceBusReceiver } from "../receivers/receiver.js"; +import type { ServiceBusMessage, ServiceBusReceivedMessage } from "../serviceBusMessage.js"; +import type { MessagingOperationNames } from "./tracing.js"; +import { toSpanOptions, tracingClient } from "./tracing.js"; /** * @internal diff --git a/sdk/servicebus/service-bus/src/diagnostics/tracing.ts b/sdk/servicebus/service-bus/src/diagnostics/tracing.ts index 60ddd12a6f4c..0fbe25d49119 100644 --- a/sdk/servicebus/service-bus/src/diagnostics/tracing.ts +++ b/sdk/servicebus/service-bus/src/diagnostics/tracing.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { createTracingClient, TracingSpanOptions, TracingSpanKind } from "@azure/core-tracing"; -import { ConnectionConfig } from "@azure/core-amqp"; +import type { TracingSpanOptions, TracingSpanKind } from "@azure/core-tracing"; +import { createTracingClient } from "@azure/core-tracing"; +import type { ConnectionConfig } from "@azure/core-amqp"; import { packageJsonInfo } from "../util/constants.js"; /** diff --git a/sdk/servicebus/service-bus/src/log.ts b/sdk/servicebus/service-bus/src/log.ts index 35b75baeb390..22d5d3a5301d 100644 --- a/sdk/servicebus/service-bus/src/log.ts +++ b/sdk/servicebus/service-bus/src/log.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureLogger, createClientLogger } from "@azure/logger"; -import { AmqpError } from "rhea-promise"; +import type { AzureLogger } from "@azure/logger"; +import { createClientLogger } from "@azure/logger"; +import type { AmqpError } from "rhea-promise"; import { isObjectWithProperties } from "@azure/core-util"; /** diff --git a/sdk/servicebus/service-bus/src/models.ts b/sdk/servicebus/service-bus/src/models.ts index 9b083eb31221..77cee42d26e4 100644 --- a/sdk/servicebus/service-bus/src/models.ts +++ b/sdk/servicebus/service-bus/src/models.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptionsBase } from "./modelsToBeSharedWithEventHubs.js"; -import Long from "long"; -import { ServiceBusReceivedMessage } from "./serviceBusMessage.js"; -import { ServiceBusError } from "./serviceBusError.js"; +import type { OperationOptionsBase } from "./modelsToBeSharedWithEventHubs.js"; +import type Long from "long"; +import type { ServiceBusReceivedMessage } from "./serviceBusMessage.js"; +import type { ServiceBusError } from "./serviceBusError.js"; /** * Arguments to the `processError` callback. diff --git a/sdk/servicebus/service-bus/src/modelsToBeSharedWithEventHubs.ts b/sdk/servicebus/service-bus/src/modelsToBeSharedWithEventHubs.ts index 5843b0ed61bb..60a32e71917a 100644 --- a/sdk/servicebus/service-bus/src/modelsToBeSharedWithEventHubs.ts +++ b/sdk/servicebus/service-bus/src/modelsToBeSharedWithEventHubs.ts @@ -3,8 +3,8 @@ // TODO: this code is a straight-copy from EventHubs. Need to merge. -import { OperationTracingOptions } from "@azure/core-tracing"; -import { OperationOptions } from "@azure/core-client"; +import type { OperationTracingOptions } from "@azure/core-tracing"; +import type { OperationOptions } from "@azure/core-client"; /** * NOTE: This type is intended to mirror the relevant fields and structure from `@azure/core-client` OperationOptions diff --git a/sdk/servicebus/service-bus/src/receivers/receiver.ts b/sdk/servicebus/service-bus/src/receivers/receiver.ts index 46b86248a7d2..9006be764b44 100644 --- a/sdk/servicebus/service-bus/src/receivers/receiver.ts +++ b/sdk/servicebus/service-bus/src/receivers/receiver.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PeekMessagesOptions, GetMessageIteratorOptions, MessageHandlers, @@ -10,9 +10,9 @@ import { DeleteMessagesOptions, PurgeMessagesOptions, } from "../models.js"; -import { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; -import { ServiceBusReceivedMessage } from "../serviceBusMessage.js"; -import { ConnectionContext } from "../connectionContext.js"; +import type { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; +import type { ServiceBusReceivedMessage } from "../serviceBusMessage.js"; +import type { ConnectionContext } from "../connectionContext.js"; import { getAlreadyReceivingErrorMsg, getReceiverClosedErrorMsg, @@ -23,7 +23,7 @@ import { throwErrorIfInvalidOperationOnMessage, throwTypeErrorIfParameterTypeMismatch, } from "../util/errors.js"; -import { ReceiveOptions } from "../core/messageReceiver.js"; +import type { ReceiveOptions } from "../core/messageReceiver.js"; import { StreamingReceiver } from "../core/streamingReceiver.js"; import { BatchingReceiver } from "../core/batchingReceiver.js"; import { @@ -34,16 +34,17 @@ import { deferMessage, getMessageIterator, } from "./receiverCommon.js"; -import Long from "long"; -import { ServiceBusMessageImpl, DeadLetterOptions } from "../serviceBusMessage.js"; -import { Constants, RetryConfig, RetryOperationType, RetryOptions, retry } from "@azure/core-amqp"; +import type Long from "long"; +import type { ServiceBusMessageImpl, DeadLetterOptions } from "../serviceBusMessage.js"; +import type { RetryConfig, RetryOptions } from "@azure/core-amqp"; +import { Constants, RetryOperationType, retry } from "@azure/core-amqp"; import { LockRenewer } from "../core/autoLockRenewer.js"; import { receiverLogger as logger } from "../log.js"; import { translateServiceBusError } from "../serviceBusError.js"; import { ensureValidIdentifier } from "../util/utils.js"; import { toSpanOptions, tracingClient } from "../diagnostics/tracing.js"; import { extractSpanContextFromServiceBusMessage } from "../diagnostics/instrumentServiceBusMessage.js"; -import { TracingSpanLink } from "@azure/core-tracing"; +import type { TracingSpanLink } from "@azure/core-tracing"; /** * The default time to wait for messages _after_ the first message diff --git a/sdk/servicebus/service-bus/src/receivers/receiverCommon.ts b/sdk/servicebus/service-bus/src/receivers/receiverCommon.ts index ffa4a7f7b0f7..87e3c22af9f5 100644 --- a/sdk/servicebus/service-bus/src/receivers/receiverCommon.ts +++ b/sdk/servicebus/service-bus/src/receivers/receiverCommon.ts @@ -1,31 +1,31 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MessageHandlers, ProcessErrorArgs } from "../models.js"; -import { ServiceBusReceiver } from "./receiver.js"; -import { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; -import { createServiceBusLogger, logger, receiverLogger, ServiceBusLogger } from "../log.js"; +import type { MessageHandlers, ProcessErrorArgs } from "../models.js"; +import type { ServiceBusReceiver } from "./receiver.js"; +import type { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; +import type { createServiceBusLogger, ServiceBusLogger } from "../log.js"; +import { logger, receiverLogger } from "../log.js"; import { translateServiceBusError } from "../serviceBusError.js"; -import { +import type { DeadLetterOptions, - DispositionType, ServiceBusMessageImpl, ServiceBusReceivedMessage, } from "../serviceBusMessage.js"; -import { DispositionStatusOptions } from "../core/managementClient.js"; -import { ConnectionContext } from "../connectionContext.js"; +import { DispositionType } from "../serviceBusMessage.js"; +import type { DispositionStatusOptions } from "../core/managementClient.js"; +import type { ConnectionContext } from "../connectionContext.js"; +import type { RetryConfig, RetryOptions } from "@azure/core-amqp"; import { Constants, ErrorNameConditionMapper, retry, - RetryConfig, RetryMode, RetryOperationType, - RetryOptions, } from "@azure/core-amqp"; import { MessageAlreadySettled } from "../util/errors.js"; import { delay, isDefined } from "@azure/core-util"; -import { TracingSpanLink } from "@azure/core-tracing"; +import type { TracingSpanLink } from "@azure/core-tracing"; import { toSpanOptions, tracingClient } from "../diagnostics/tracing.js"; import { extractSpanContextFromServiceBusMessage } from "../diagnostics/instrumentServiceBusMessage.js"; diff --git a/sdk/servicebus/service-bus/src/receivers/sessionReceiver.ts b/sdk/servicebus/service-bus/src/receivers/sessionReceiver.ts index 9b70391c4a29..f3e3f4d543e1 100644 --- a/sdk/servicebus/service-bus/src/receivers/sessionReceiver.ts +++ b/sdk/servicebus/service-bus/src/receivers/sessionReceiver.ts @@ -1,16 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ConnectionContext } from "../connectionContext.js"; -import { MessageHandlers, ReceiveMessagesOptions, ServiceBusReceivedMessage } from "../index.js"; -import { +import type { ConnectionContext } from "../connectionContext.js"; +import type { + MessageHandlers, + ReceiveMessagesOptions, + ServiceBusReceivedMessage, +} from "../index.js"; +import type { PeekMessagesOptions, GetMessageIteratorOptions, SubscribeOptions, DeleteMessagesOptions, PurgeMessagesOptions, } from "../models.js"; -import { MessageSession } from "../session/messageSession.js"; +import type { MessageSession } from "../session/messageSession.js"; import { getAlreadyReceivingErrorMsg, getReceiverClosedErrorMsg, @@ -21,7 +25,7 @@ import { throwErrorIfInvalidOperationOnMessage, throwTypeErrorIfParameterTypeMismatch, } from "../util/errors.js"; -import { OnError, OnMessage } from "../core/messageReceiver.js"; +import type { OnError, OnMessage } from "../core/messageReceiver.js"; import { abandonMessage, assertValidMessageHandlers, @@ -31,23 +35,14 @@ import { getMessageIterator, wrapProcessErrorHandler, } from "./receiverCommon.js"; -import { - defaultMaxTimeAfterFirstMessageForBatchingMs, - MaxDeleteMessageCount, - ServiceBusReceiver, -} from "./receiver.js"; -import Long from "long"; -import { ServiceBusMessageImpl, DeadLetterOptions } from "../serviceBusMessage.js"; -import { - Constants, - RetryConfig, - RetryOperationType, - RetryOptions, - retry, - ErrorNameConditionMapper, -} from "@azure/core-amqp"; -import { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; -import { AmqpError } from "rhea-promise"; +import type { ServiceBusReceiver } from "./receiver.js"; +import { defaultMaxTimeAfterFirstMessageForBatchingMs, MaxDeleteMessageCount } from "./receiver.js"; +import type Long from "long"; +import type { ServiceBusMessageImpl, DeadLetterOptions } from "../serviceBusMessage.js"; +import type { RetryConfig, RetryOptions } from "@azure/core-amqp"; +import { Constants, RetryOperationType, retry, ErrorNameConditionMapper } from "@azure/core-amqp"; +import type { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; +import type { AmqpError } from "rhea-promise"; import { toProcessingSpanOptions } from "../diagnostics/instrumentServiceBusMessage.js"; import { tracingClient } from "../diagnostics/tracing.js"; import { receiverLogger as logger } from "../log.js"; diff --git a/sdk/servicebus/service-bus/src/sender.ts b/sdk/servicebus/service-bus/src/sender.ts index f5e5d384c8b4..8981bb241b50 100644 --- a/sdk/servicebus/service-bus/src/sender.ts +++ b/sdk/servicebus/service-bus/src/sender.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import Long from "long"; +import type Long from "long"; import { MessageSender } from "./core/messageSender.js"; -import { ServiceBusMessage } from "./serviceBusMessage.js"; -import { ConnectionContext } from "./connectionContext.js"; +import type { ServiceBusMessage } from "./serviceBusMessage.js"; +import type { ConnectionContext } from "./connectionContext.js"; import { errorInvalidMessageTypeSingleOrArray, getSenderClosedErrorMsg, @@ -14,17 +14,12 @@ import { throwTypeErrorIfParameterMissing, throwTypeErrorIfParameterNotLong, } from "./util/errors.js"; -import { ServiceBusMessageBatch } from "./serviceBusMessageBatch.js"; -import { CreateMessageBatchOptions } from "./models.js"; -import { - RetryConfig, - RetryOperationType, - RetryOptions, - retry, - AmqpAnnotatedMessage, -} from "@azure/core-amqp"; -import { OperationOptionsBase } from "./modelsToBeSharedWithEventHubs.js"; -import { TracingSpanLink } from "@azure/core-tracing"; +import type { ServiceBusMessageBatch } from "./serviceBusMessageBatch.js"; +import type { CreateMessageBatchOptions } from "./models.js"; +import type { RetryConfig, RetryOptions, AmqpAnnotatedMessage } from "@azure/core-amqp"; +import { RetryOperationType, retry } from "@azure/core-amqp"; +import type { OperationOptionsBase } from "./modelsToBeSharedWithEventHubs.js"; +import type { TracingSpanLink } from "@azure/core-tracing"; import { senderLogger as logger } from "./log.js"; import { toSpanOptions, tracingClient } from "./diagnostics/tracing.js"; import { ensureValidIdentifier } from "./util/utils.js"; diff --git a/sdk/servicebus/service-bus/src/serializers/namespaceResourceSerializer.ts b/sdk/servicebus/service-bus/src/serializers/namespaceResourceSerializer.ts index 2d5309f103df..157c9c0e5266 100644 --- a/sdk/servicebus/service-bus/src/serializers/namespaceResourceSerializer.ts +++ b/sdk/servicebus/service-bus/src/serializers/namespaceResourceSerializer.ts @@ -1,12 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { FullOperationResponse } from "@azure/core-client"; -import { - AtomXmlSerializer, - deserializeAtomXmlResponse, - serializeToAtomXmlRequest, -} from "../util/atomXmlHelper.js"; +import type { FullOperationResponse } from "@azure/core-client"; +import type { AtomXmlSerializer } from "../util/atomXmlHelper.js"; +import { deserializeAtomXmlResponse, serializeToAtomXmlRequest } from "../util/atomXmlHelper.js"; import { getInteger, getString, getDate } from "../util/utils.js"; /** diff --git a/sdk/servicebus/service-bus/src/serializers/queueResourceSerializer.ts b/sdk/servicebus/service-bus/src/serializers/queueResourceSerializer.ts index 6e76e08936d3..cabea354627d 100644 --- a/sdk/servicebus/service-bus/src/serializers/queueResourceSerializer.ts +++ b/sdk/servicebus/service-bus/src/serializers/queueResourceSerializer.ts @@ -1,15 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { FullOperationResponse, OperationOptions } from "@azure/core-client"; -import { - AtomXmlSerializer, - deserializeAtomXmlResponse, - serializeToAtomXmlRequest, -} from "../util/atomXmlHelper.js"; +import type { FullOperationResponse, OperationOptions } from "@azure/core-client"; +import type { AtomXmlSerializer } from "../util/atomXmlHelper.js"; +import { deserializeAtomXmlResponse, serializeToAtomXmlRequest } from "../util/atomXmlHelper.js"; import * as Constants from "../util/constants.js"; +import type { AuthorizationRule, EntityStatus, EntityAvailabilityStatus } from "../util/utils.js"; import { - AuthorizationRule, getAuthorizationRulesOrUndefined, getBoolean, getMessageCountDetails, @@ -19,8 +16,6 @@ import { getString, getStringOrUndefined, getDate, - EntityStatus, - EntityAvailabilityStatus, } from "../util/utils.js"; /** diff --git a/sdk/servicebus/service-bus/src/serializers/ruleResourceSerializer.ts b/sdk/servicebus/service-bus/src/serializers/ruleResourceSerializer.ts index 01ddb02a695f..f67b74d82c28 100644 --- a/sdk/servicebus/service-bus/src/serializers/ruleResourceSerializer.ts +++ b/sdk/servicebus/service-bus/src/serializers/ruleResourceSerializer.ts @@ -1,13 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { FullOperationResponse } from "@azure/core-client"; -import { CorrelationRuleFilter } from "../core/managementClient.js"; -import { - AtomXmlSerializer, - deserializeAtomXmlResponse, - serializeToAtomXmlRequest, -} from "../util/atomXmlHelper.js"; +import type { FullOperationResponse } from "@azure/core-client"; +import type { CorrelationRuleFilter } from "../core/managementClient.js"; +import type { AtomXmlSerializer } from "../util/atomXmlHelper.js"; +import { deserializeAtomXmlResponse, serializeToAtomXmlRequest } from "../util/atomXmlHelper.js"; import * as Constants from "../util/constants.js"; import { isDefined, isObjectWithProperties } from "@azure/core-util"; import { getString, getStringOrUndefined } from "../util/utils.js"; diff --git a/sdk/servicebus/service-bus/src/serializers/subscriptionResourceSerializer.ts b/sdk/servicebus/service-bus/src/serializers/subscriptionResourceSerializer.ts index 61051cddf795..3bb2ec4c3365 100644 --- a/sdk/servicebus/service-bus/src/serializers/subscriptionResourceSerializer.ts +++ b/sdk/servicebus/service-bus/src/serializers/subscriptionResourceSerializer.ts @@ -1,17 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { FullOperationResponse, OperationOptions } from "@azure/core-client"; -import { CorrelationRuleFilter } from "../index.js"; -import { - AtomXmlSerializer, - deserializeAtomXmlResponse, - serializeToAtomXmlRequest, -} from "../util/atomXmlHelper.js"; +import type { FullOperationResponse, OperationOptions } from "@azure/core-client"; +import type { CorrelationRuleFilter } from "../index.js"; +import type { AtomXmlSerializer } from "../util/atomXmlHelper.js"; +import { deserializeAtomXmlResponse, serializeToAtomXmlRequest } from "../util/atomXmlHelper.js"; import * as Constants from "../util/constants.js"; +import type { EntityStatus, EntityAvailabilityStatus } from "../util/utils.js"; import { - EntityStatus, - EntityAvailabilityStatus, getBoolean, getMessageCountDetails, getInteger, @@ -19,12 +15,12 @@ import { getStringOrUndefined, getDate, } from "../util/utils.js"; -import { - buildInternalRuleResource, +import type { InternalRuleOptions, SqlRuleAction, SqlRuleFilter, } from "./ruleResourceSerializer.js"; +import { buildInternalRuleResource } from "./ruleResourceSerializer.js"; /** * @internal diff --git a/sdk/servicebus/service-bus/src/serializers/topicResourceSerializer.ts b/sdk/servicebus/service-bus/src/serializers/topicResourceSerializer.ts index 0f712d4d02a3..020791e19adc 100644 --- a/sdk/servicebus/service-bus/src/serializers/topicResourceSerializer.ts +++ b/sdk/servicebus/service-bus/src/serializers/topicResourceSerializer.ts @@ -1,17 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { FullOperationResponse, OperationOptions } from "@azure/core-client"; -import { - AtomXmlSerializer, - deserializeAtomXmlResponse, - serializeToAtomXmlRequest, -} from "../util/atomXmlHelper.js"; +import type { FullOperationResponse, OperationOptions } from "@azure/core-client"; +import type { AtomXmlSerializer } from "../util/atomXmlHelper.js"; +import { deserializeAtomXmlResponse, serializeToAtomXmlRequest } from "../util/atomXmlHelper.js"; import * as Constants from "../util/constants.js"; +import type { AuthorizationRule, EntityStatus, EntityAvailabilityStatus } from "../util/utils.js"; import { - AuthorizationRule, - EntityStatus, - EntityAvailabilityStatus, getAuthorizationRulesOrUndefined, getBoolean, getInteger, diff --git a/sdk/servicebus/service-bus/src/serviceBusAtomManagementClient.ts b/sdk/servicebus/service-bus/src/serviceBusAtomManagementClient.ts index c8eec0204678..f8a784ab216c 100644 --- a/sdk/servicebus/service-bus/src/serviceBusAtomManagementClient.ts +++ b/sdk/servicebus/service-bus/src/serviceBusAtomManagementClient.ts @@ -2,89 +2,96 @@ // Licensed under the MIT License. import { Constants as AMQPConstants, parseConnectionString } from "@azure/core-amqp"; -import { - TokenCredential, - isTokenCredential, - NamedKeyCredential, - isNamedKeyCredential, -} from "@azure/core-auth"; -import { - ServiceClient, +import type { TokenCredential, NamedKeyCredential } from "@azure/core-auth"; +import { isTokenCredential, isNamedKeyCredential } from "@azure/core-auth"; +import type { OperationOptions, CommonClientOptions, FullOperationResponse, } from "@azure/core-client"; -import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import { ServiceClient } from "@azure/core-client"; +import type { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import type { + PipelineResponse, + PipelineRequest, + PipelinePolicy, + SendRequest, +} from "@azure/core-rest-pipeline"; import { bearerTokenAuthenticationPolicy, RestError, - PipelineResponse, createPipelineFromOptions, - PipelineRequest, createPipelineRequest, - PipelinePolicy, - SendRequest, } from "@azure/core-rest-pipeline"; -import { CorrelationRuleFilter } from "./core/managementClient.js"; +import type { CorrelationRuleFilter } from "./core/managementClient.js"; import { administrationLogger as logger } from "./log.js"; +import type { NamespaceProperties } from "./serializers/namespaceResourceSerializer.js"; import { buildNamespace, - NamespaceProperties, NamespaceResourceSerializer, } from "./serializers/namespaceResourceSerializer.js"; -import { - buildQueue, - buildQueueOptions, - buildQueueRuntimeProperties, +import type { CreateQueueOptions, InternalQueueOptions, QueueProperties, - QueueResourceSerializer, QueueRuntimeProperties, } from "./serializers/queueResourceSerializer.js"; import { - buildRule, + buildQueue, + buildQueueOptions, + buildQueueRuntimeProperties, + QueueResourceSerializer, +} from "./serializers/queueResourceSerializer.js"; +import type { CreateRuleOptions, - isSqlRuleAction, RuleProperties, - RuleResourceSerializer, SqlRuleAction, SqlRuleFilter, } from "./serializers/ruleResourceSerializer.js"; import { - buildSubscription, - buildSubscriptionOptions, - buildSubscriptionRuntimeProperties, + buildRule, + isSqlRuleAction, + RuleResourceSerializer, +} from "./serializers/ruleResourceSerializer.js"; +import type { CreateSubscriptionOptions, InternalSubscriptionOptions, SubscriptionProperties, - SubscriptionResourceSerializer, SubscriptionRuntimeProperties, } from "./serializers/subscriptionResourceSerializer.js"; import { - buildTopic, - buildTopicOptions, - buildTopicRuntimeProperties, + buildSubscription, + buildSubscriptionOptions, + buildSubscriptionRuntimeProperties, + SubscriptionResourceSerializer, +} from "./serializers/subscriptionResourceSerializer.js"; +import type { CreateTopicOptions, InternalTopicOptions, TopicProperties, - TopicResourceSerializer, TopicRuntimeProperties, } from "./serializers/topicResourceSerializer.js"; -import { AtomXmlSerializer, executeAtomXmlOperation } from "./util/atomXmlHelper.js"; +import { + buildTopic, + buildTopicOptions, + buildTopicRuntimeProperties, + TopicResourceSerializer, +} from "./serializers/topicResourceSerializer.js"; +import type { AtomXmlSerializer } from "./util/atomXmlHelper.js"; +import { executeAtomXmlOperation } from "./util/atomXmlHelper.js"; import * as Constants from "./util/constants.js"; import { parseURL } from "./util/parseUrl.js"; import { SasServiceClientCredentials } from "./util/sasServiceClientCredentials.js"; import { tracingClient } from "./diagnostics/tracing.js"; import { isDefined } from "@azure/core-util"; +import type { ServiceBusAtomAPIVersion } from "./util/utils.js"; import { formatUserAgentPrefix, getHttpResponseOnly, isAbsoluteUrl, isJSONLikeObject, - ServiceBusAtomAPIVersion, } from "./util/utils.js"; -import { HttpResponse } from "./util/compat/index.js"; +import type { HttpResponse } from "./util/compat/index.js"; /** * Request options for list() operations diff --git a/sdk/servicebus/service-bus/src/serviceBusClient.ts b/sdk/servicebus/service-bus/src/serviceBusClient.ts index ae6a57f10997..bdd170dd5f39 100644 --- a/sdk/servicebus/service-bus/src/serviceBusClient.ts +++ b/sdk/servicebus/service-bus/src/serviceBusClient.ts @@ -1,27 +1,28 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ConnectionConfig } from "@azure/core-amqp"; -import { TokenCredential, NamedKeyCredential, SASCredential } from "@azure/core-auth"; +import type { ConnectionConfig } from "@azure/core-amqp"; +import type { TokenCredential, NamedKeyCredential, SASCredential } from "@azure/core-auth"; +import type { ServiceBusClientOptions } from "./constructorHelpers.js"; import { - ServiceBusClientOptions, createConnectionContextForConnectionString, createConnectionContextForCredential, } from "./constructorHelpers.js"; import { ConnectionContext } from "./connectionContext.js"; -import { +import type { ServiceBusReceiverOptions, ServiceBusSessionReceiverOptions, ReceiveMode, ServiceBusSenderOptions, } from "./models.js"; -import { ServiceBusReceiver, ServiceBusReceiverImpl } from "./receivers/receiver.js"; -import { - ServiceBusSessionReceiver, - ServiceBusSessionReceiverImpl, -} from "./receivers/sessionReceiver.js"; -import { ServiceBusRuleManager, ServiceBusRuleManagerImpl } from "./serviceBusRuleManager.js"; -import { ServiceBusSender, ServiceBusSenderImpl } from "./sender.js"; +import type { ServiceBusReceiver } from "./receivers/receiver.js"; +import { ServiceBusReceiverImpl } from "./receivers/receiver.js"; +import type { ServiceBusSessionReceiver } from "./receivers/sessionReceiver.js"; +import { ServiceBusSessionReceiverImpl } from "./receivers/sessionReceiver.js"; +import type { ServiceBusRuleManager } from "./serviceBusRuleManager.js"; +import { ServiceBusRuleManagerImpl } from "./serviceBusRuleManager.js"; +import type { ServiceBusSender } from "./sender.js"; +import { ServiceBusSenderImpl } from "./sender.js"; import { entityPathMisMatchError } from "./util/errors.js"; import { MessageSession } from "./session/messageSession.js"; import { isDefined } from "@azure/core-util"; diff --git a/sdk/servicebus/service-bus/src/serviceBusError.ts b/sdk/servicebus/service-bus/src/serviceBusError.ts index f0bb5dc64a5a..c6167231de91 100644 --- a/sdk/servicebus/service-bus/src/serviceBusError.ts +++ b/sdk/servicebus/service-bus/src/serviceBusError.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { isMessagingError, MessagingError, translate } from "@azure/core-amqp"; -import { AmqpError } from "rhea-promise"; +import type { AmqpError } from "rhea-promise"; import { isObjectWithProperties } from "@azure/core-util"; /** diff --git a/sdk/servicebus/service-bus/src/serviceBusMessage.ts b/sdk/servicebus/service-bus/src/serviceBusMessage.ts index 04030a97005a..3fb33595954f 100644 --- a/sdk/servicebus/service-bus/src/serviceBusMessage.ts +++ b/sdk/servicebus/service-bus/src/serviceBusMessage.ts @@ -5,16 +5,16 @@ import { AmqpAnnotatedMessage, Constants } from "@azure/core-amqp"; // eslint-disable-next-line @typescript-eslint/no-redeclare import { Buffer } from "buffer"; import Long from "long"; -import { +import type { Delivery, DeliveryAnnotations, MessageAnnotations, - uuid_to_string, Message as RheaMessage, } from "rhea-promise"; +import { uuid_to_string } from "rhea-promise"; import { defaultDataTransformer } from "./dataTransformer.js"; import { messageLogger as logger } from "./log.js"; -import { ReceiveMode } from "./models.js"; +import type { ReceiveMode } from "./models.js"; import { isDefined, isObjectWithProperties } from "@azure/core-util"; import { reorderLockToken } from "./util/utils.js"; diff --git a/sdk/servicebus/service-bus/src/serviceBusMessageBatch.ts b/sdk/servicebus/service-bus/src/serviceBusMessageBatch.ts index b9c4bbe1c34b..f106af03bac9 100644 --- a/sdk/servicebus/service-bus/src/serviceBusMessageBatch.ts +++ b/sdk/servicebus/service-bus/src/serviceBusMessageBatch.ts @@ -1,22 +1,22 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ServiceBusMessage, toRheaMessage } from "./serviceBusMessage.js"; +import type { ServiceBusMessage } from "./serviceBusMessage.js"; +import { toRheaMessage } from "./serviceBusMessage.js"; import { errorInvalidMessageTypeSingle, throwIfNotValidServiceBusMessage, throwTypeErrorIfParameterMissing, } from "./util/errors.js"; -import { ConnectionContext } from "./connectionContext.js"; +import type { ConnectionContext } from "./connectionContext.js"; +import type { MessageAnnotations, Message as RheaMessage } from "rhea-promise"; import { - MessageAnnotations, messageProperties as RheaMessagePropertiesList, message as RheaMessageUtil, - Message as RheaMessage, } from "rhea-promise"; -import { TracingContext } from "@azure/core-tracing"; -import { TryAddOptions } from "./modelsToBeSharedWithEventHubs.js"; -import { AmqpAnnotatedMessage } from "@azure/core-amqp"; +import type { TracingContext } from "@azure/core-tracing"; +import type { TryAddOptions } from "./modelsToBeSharedWithEventHubs.js"; +import type { AmqpAnnotatedMessage } from "@azure/core-amqp"; import { defaultDataTransformer } from "./dataTransformer.js"; import { instrumentMessage } from "./diagnostics/instrumentServiceBusMessage.js"; diff --git a/sdk/servicebus/service-bus/src/serviceBusRuleManager.ts b/sdk/servicebus/service-bus/src/serviceBusRuleManager.ts index bfd4e0f102ff..096927063764 100644 --- a/sdk/servicebus/service-bus/src/serviceBusRuleManager.ts +++ b/sdk/servicebus/service-bus/src/serviceBusRuleManager.ts @@ -1,23 +1,22 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptionsBase } from "./modelsToBeSharedWithEventHubs.js"; -import { ConnectionContext } from "./connectionContext.js"; -import { RetryConfig, RetryOperationType, RetryOptions, retry } from "@azure/core-amqp"; -import { CorrelationRuleFilter } from "./core/managementClient.js"; +import type { OperationOptionsBase } from "./modelsToBeSharedWithEventHubs.js"; +import type { ConnectionContext } from "./connectionContext.js"; +import type { RetryConfig, RetryOptions } from "@azure/core-amqp"; +import { RetryOperationType, retry } from "@azure/core-amqp"; +import type { CorrelationRuleFilter } from "./core/managementClient.js"; import { ruleManagerLogger as logger } from "./log.js"; -import { - isSqlRuleAction, - RuleProperties, - SqlRuleAction, -} from "./serializers/ruleResourceSerializer.js"; +import type { RuleProperties, SqlRuleAction } from "./serializers/ruleResourceSerializer.js"; +import { isSqlRuleAction } from "./serializers/ruleResourceSerializer.js"; import { getUniqueName } from "./util/utils.js"; import { throwErrorIfConnectionClosed } from "./util/errors.js"; -import { SqlRuleFilter } from "./serializers/ruleResourceSerializer.js"; +import type { SqlRuleFilter } from "./serializers/ruleResourceSerializer.js"; import { tracingClient } from "./diagnostics/tracing.js"; -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { OperationOptions } from "@azure/core-client"; -import { ListRequestOptions } from "./serviceBusAtomManagementClient.js"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { OperationOptions } from "@azure/core-client"; +import type { ListRequestOptions } from "./serviceBusAtomManagementClient.js"; /** * Allows rules for a subscription to be managed. This rule manager requires only Listen claims, whereas the diff --git a/sdk/servicebus/service-bus/src/session/messageSession.ts b/sdk/servicebus/service-bus/src/session/messageSession.ts index 55d370349a65..0b11492d4989 100644 --- a/sdk/servicebus/service-bus/src/session/messageSession.ts +++ b/sdk/servicebus/service-bus/src/session/messageSession.ts @@ -1,44 +1,32 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - Constants, - ErrorNameConditionMapper, - MessagingError, - RetryOptions, - StandardAbortMessage, -} from "@azure/core-amqp"; -import { - AmqpError, - EventContext, - OnAmqpEvent, - Receiver, - ReceiverEvents, - ReceiverOptions, -} from "rhea-promise"; -import { ConnectionContext } from "../connectionContext.js"; +import type { MessagingError, RetryOptions } from "@azure/core-amqp"; +import { Constants, ErrorNameConditionMapper, StandardAbortMessage } from "@azure/core-amqp"; +import type { AmqpError, EventContext, OnAmqpEvent, Receiver, ReceiverOptions } from "rhea-promise"; +import { ReceiverEvents } from "rhea-promise"; +import type { ConnectionContext } from "../connectionContext.js"; import { LinkEntity } from "../core/linkEntity.js"; -import { DispositionStatusOptions } from "../core/managementClient.js"; -import { OnAmqpEventAsPromise, OnError, OnMessage } from "../core/messageReceiver.js"; +import type { DispositionStatusOptions } from "../core/managementClient.js"; +import type { OnAmqpEventAsPromise, OnError, OnMessage } from "../core/messageReceiver.js"; import { receiverLogger as logger } from "../log.js"; import { DispositionType, ServiceBusMessageImpl } from "../serviceBusMessage.js"; import { throwErrorIfConnectionClosed } from "../util/errors.js"; import { calculateRenewAfterDuration, convertTicksToDate } from "../util/utils.js"; -import { BatchingReceiverLite, MinimalReceiver } from "../core/batchingReceiver.js"; -import { - onMessageSettled, - DeferredPromiseAndTimer, - createReceiverOptions, -} from "../core/shared.js"; -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; +import type { MinimalReceiver } from "../core/batchingReceiver.js"; +import { BatchingReceiverLite } from "../core/batchingReceiver.js"; +import type { DeferredPromiseAndTimer } from "../core/shared.js"; +import { onMessageSettled, createReceiverOptions } from "../core/shared.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; import { ReceiverHelper } from "../core/receiverHelper.js"; -import { +import type { ServiceBusSessionReceiverOptions, ProcessErrorArgs, ReceiveMode, SubscribeOptions, } from "../models.js"; -import { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; +import type { OperationOptionsBase } from "../modelsToBeSharedWithEventHubs.js"; import { ServiceBusError, translateServiceBusError } from "../serviceBusError.js"; import { abandonMessage, completeMessage } from "../receivers/receiverCommon.js"; import { delay, isDefined } from "@azure/core-util"; diff --git a/sdk/servicebus/service-bus/src/util/atomXmlHelper.ts b/sdk/servicebus/service-bus/src/util/atomXmlHelper.ts index 7b54d912039b..4bda836fc187 100644 --- a/sdk/servicebus/service-bus/src/util/atomXmlHelper.ts +++ b/sdk/servicebus/service-bus/src/util/atomXmlHelper.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelineResponse, - RestError, PipelineRequest, TransferProgressEvent, } from "@azure/core-rest-pipeline"; -import { ServiceClient, OperationOptions, FullOperationResponse } from "@azure/core-client"; +import { RestError } from "@azure/core-rest-pipeline"; +import type { ServiceClient, OperationOptions, FullOperationResponse } from "@azure/core-client"; import { parseXML, stringifyXML } from "@azure/core-xml"; import * as Constants from "./constants.js"; @@ -18,12 +18,12 @@ import { Buffer } from "buffer"; import { parseURL } from "./parseUrl.js"; import { isJSONLikeObject } from "./utils.js"; import { isDefined } from "@azure/core-util"; -import { OperationTracingOptions } from "@azure/core-tracing"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { InternalQueueOptions } from "../serializers/queueResourceSerializer.js"; -import { InternalTopicOptions } from "../serializers/topicResourceSerializer.js"; -import { InternalSubscriptionOptions } from "../serializers/subscriptionResourceSerializer.js"; -import { CreateRuleOptions } from "../serializers/ruleResourceSerializer.js"; +import type { OperationTracingOptions } from "@azure/core-tracing"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { InternalQueueOptions } from "../serializers/queueResourceSerializer.js"; +import type { InternalTopicOptions } from "../serializers/topicResourceSerializer.js"; +import type { InternalSubscriptionOptions } from "../serializers/subscriptionResourceSerializer.js"; +import type { CreateRuleOptions } from "../serializers/ruleResourceSerializer.js"; /** * @internal diff --git a/sdk/servicebus/service-bus/src/util/compat/compatibility.ts b/sdk/servicebus/service-bus/src/util/compat/compatibility.ts index deaafd490923..194753f8d966 100644 --- a/sdk/servicebus/service-bus/src/util/compat/compatibility.ts +++ b/sdk/servicebus/service-bus/src/util/compat/compatibility.ts @@ -1,15 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { HttpHeaders, HttpMethods, PipelineRequest, PipelineResponse, ProxySettings, } from "@azure/core-rest-pipeline"; -import { HttpHeadersLike, HttpHeaders as HttpHeadersV1 } from "./httpHeaders.js"; +import type { HttpHeadersLike } from "./httpHeaders.js"; +import { HttpHeaders as HttpHeadersV1 } from "./httpHeaders.js"; /** * Fired in response to upload or download progress. diff --git a/sdk/servicebus/service-bus/src/util/errors.ts b/sdk/servicebus/service-bus/src/util/errors.ts index fb948c28c5d9..4fe3840df3aa 100644 --- a/sdk/servicebus/service-bus/src/util/errors.ts +++ b/sdk/servicebus/service-bus/src/util/errors.ts @@ -2,14 +2,11 @@ // Licensed under the MIT License. import Long from "long"; -import { ConnectionContext } from "../connectionContext.js"; +import type { ConnectionContext } from "../connectionContext.js"; import { logger, receiverLogger } from "../log.js"; -import { ReceiveMode } from "../models.js"; -import { - isAmqpAnnotatedMessage, - isServiceBusMessage, - ServiceBusReceivedMessage, -} from "../serviceBusMessage.js"; +import type { ReceiveMode } from "../models.js"; +import type { ServiceBusReceivedMessage } from "../serviceBusMessage.js"; +import { isAmqpAnnotatedMessage, isServiceBusMessage } from "../serviceBusMessage.js"; import { isDefined } from "@azure/core-util"; /** diff --git a/sdk/servicebus/service-bus/src/util/sasServiceClientCredentials.ts b/sdk/servicebus/service-bus/src/util/sasServiceClientCredentials.ts index 2ec2b4c29968..37bff2587005 100644 --- a/sdk/servicebus/service-bus/src/util/sasServiceClientCredentials.ts +++ b/sdk/servicebus/service-bus/src/util/sasServiceClientCredentials.ts @@ -4,10 +4,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, NamedKeyCredential } from "@azure/core-auth"; -import { createHttpHeaders, PipelineRequest } from "@azure/core-rest-pipeline"; +import type { AccessToken, NamedKeyCredential } from "@azure/core-auth"; +import type { PipelineRequest } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; import { generateKey } from "./crypto.js"; -import { createSasTokenProvider, SasTokenProvider } from "@azure/core-amqp"; +import type { SasTokenProvider } from "@azure/core-amqp"; +import { createSasTokenProvider } from "@azure/core-amqp"; /** * @internal diff --git a/sdk/servicebus/service-bus/src/util/typeGuards.ts b/sdk/servicebus/service-bus/src/util/typeGuards.ts index 5fd5101715e2..071bc6b40dc7 100644 --- a/sdk/servicebus/service-bus/src/util/typeGuards.ts +++ b/sdk/servicebus/service-bus/src/util/typeGuards.ts @@ -1,14 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - isNamedKeyCredential, - isSASCredential, - isTokenCredential, - NamedKeyCredential, - SASCredential, - TokenCredential, -} from "@azure/core-auth"; +import type { NamedKeyCredential, SASCredential, TokenCredential } from "@azure/core-auth"; +import { isNamedKeyCredential, isSASCredential, isTokenCredential } from "@azure/core-auth"; /** * Typeguard that checks if the input is a credential type the clients accept. diff --git a/sdk/servicebus/service-bus/src/util/utils.ts b/sdk/servicebus/service-bus/src/util/utils.ts index 1a3b49691eb5..c5a1ee748582 100644 --- a/sdk/servicebus/service-bus/src/util/utils.ts +++ b/sdk/servicebus/service-bus/src/util/utils.ts @@ -2,14 +2,18 @@ // Licensed under the MIT License. import Long from "long"; -import { logger, receiverLogger, messageLogger, ServiceBusLogger } from "../log.js"; -import { AmqpError, OperationTimeoutError, generate_uuid } from "rhea-promise"; +import type { ServiceBusLogger } from "../log.js"; +import { logger, receiverLogger, messageLogger } from "../log.js"; +import type { AmqpError } from "rhea-promise"; +import { OperationTimeoutError, generate_uuid } from "rhea-promise"; import isBuffer from "is-buffer"; import * as Constants from "../util/constants.js"; -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; -import { PipelineResponse } from "@azure/core-rest-pipeline"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; +import type { PipelineResponse } from "@azure/core-rest-pipeline"; import { isDefined } from "@azure/core-util"; -import { HttpResponse, toHttpResponse } from "./compat/index.js"; +import type { HttpResponse } from "./compat/index.js"; +import { toHttpResponse } from "./compat/index.js"; import { ErrorNameConditionMapper, StandardAbortMessage, delay } from "@azure/core-amqp"; import { translateServiceBusError } from "../serviceBusError.js"; diff --git a/sdk/servicebus/service-bus/test/internal/atomE2ETests.spec.ts b/sdk/servicebus/service-bus/test/internal/atomE2ETests.spec.ts index f938ff188ec0..83b88c320793 100644 --- a/sdk/servicebus/service-bus/test/internal/atomE2ETests.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/atomE2ETests.spec.ts @@ -1,13 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CorrelationRuleFilter, ServiceBusReceivedMessage, - ServiceBusClient, ServiceBusMessage, SqlRuleFilter, - ServiceBusAdministrationClient, } from "../../src/index.js"; +import { ServiceBusClient, ServiceBusAdministrationClient } from "../../src/index.js"; import { DEFAULT_RULE_NAME } from "../../src/util/constants.js"; import { recreateSubscription, recreateTopic } from "../public/utils/managementUtils.js"; import { getFullyQualifiedNamespace } from "../public/utils/testutils2.js"; diff --git a/sdk/servicebus/service-bus/test/internal/auth.spec.ts b/sdk/servicebus/service-bus/test/internal/auth.spec.ts index cae49dca0948..1733591a2165 100644 --- a/sdk/servicebus/service-bus/test/internal/auth.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/auth.spec.ts @@ -3,18 +3,15 @@ import { createSasTokenProvider } from "@azure/core-amqp"; import { AzureNamedKeyCredential, AzureSASCredential } from "@azure/core-auth"; -import { - ServiceBusClient, - ServiceBusReceiver, - parseServiceBusConnectionString, -} from "../../src/index.js"; +import type { ServiceBusReceiver } from "../../src/index.js"; +import { ServiceBusClient, parseServiceBusConnectionString } from "../../src/index.js"; import { getEnvVars } from "../public/utils/envVarUtils.js"; import { TestClientType } from "../public/utils/testUtils.js"; -import { - createServiceBusClientForTests, +import type { ServiceBusClientForTests, ServiceBusTestHelpers, } from "../public/utils/testutils2.js"; +import { createServiceBusClientForTests } from "../public/utils/testutils2.js"; import { afterAll, beforeAll, describe, it } from "vitest"; import { assert } from "../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/backupMessageSettlement.spec.ts b/sdk/servicebus/service-bus/test/internal/backupMessageSettlement.spec.ts index f9fb64461afa..2e4a1beb7f75 100644 --- a/sdk/servicebus/service-bus/test/internal/backupMessageSettlement.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/backupMessageSettlement.spec.ts @@ -1,21 +1,22 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { delay, ServiceBusMessage, ServiceBusSender } from "../../src/index.js"; -import { TestClientType, TestMessage } from "../public/utils/testUtils.js"; -import { ServiceBusReceiver, ServiceBusReceiverImpl } from "../../src/receivers/receiver.js"; +import type { ServiceBusMessage, ServiceBusSender } from "../../src/index.js"; +import { delay } from "../../src/index.js"; +import type { TestClientType } from "../public/utils/testUtils.js"; +import { TestMessage } from "../public/utils/testUtils.js"; +import type { ServiceBusReceiver, ServiceBusReceiverImpl } from "../../src/receivers/receiver.js"; +import type { EntityName, ServiceBusClientForTests } from "../public/utils/testutils2.js"; import { - EntityName, - ServiceBusClientForTests, createServiceBusClientForTests, testPeekMsgsLength, // getRandomTestClientTypeWithSessions, getRandomTestClientTypeWithNoSessions, } from "../public/utils/testutils2.js"; -import { - DispositionType, +import type { ServiceBusMessageImpl, ServiceBusReceivedMessage, } from "../../src/serviceBusMessage.js"; +import { DispositionType } from "../../src/serviceBusMessage.js"; import { testLogger } from "./utils/misc.js"; import { afterAll, afterEach, beforeAll, describe, it } from "vitest"; import { should } from "../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/batchReceiver.spec.ts b/sdk/servicebus/service-bus/test/internal/batchReceiver.spec.ts index 7a5a44b6e10a..ef5ee237a969 100644 --- a/sdk/servicebus/service-bus/test/internal/batchReceiver.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/batchReceiver.spec.ts @@ -1,32 +1,32 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import Long from "long"; -import { +import type { ServiceBusMessage, - delay, ServiceBusSender, ServiceBusReceivedMessage, } from "../../src/index.js"; +import { delay } from "../../src/index.js"; import { InvalidOperationForPeekedMessage } from "../../src/util/errors.js"; import { TestClientType, TestMessage } from "../public/utils/testUtils.js"; -import { ServiceBusReceiver, ServiceBusReceiverImpl } from "../../src/receivers/receiver.js"; +import type { ServiceBusReceiver, ServiceBusReceiverImpl } from "../../src/receivers/receiver.js"; +import type { ServiceBusClientForTests, EntityName } from "../public/utils/testutils2.js"; import { - ServiceBusClientForTests, createServiceBusClientForTests, testPeekMsgsLength, getRandomTestClientTypeWithNoSessions, - EntityName, getRandomTestClientType, getRandomTestClientTypeWithSessions, } from "../public/utils/testutils2.js"; -import { Receiver, ReceiverEvents } from "rhea-promise"; -import { +import type { Receiver } from "rhea-promise"; +import { ReceiverEvents } from "rhea-promise"; +import type { ServiceBusSessionReceiver, ServiceBusSessionReceiverImpl, } from "../../src/receivers/sessionReceiver.js"; -import { LinkEntity } from "../../src/core/linkEntity.js"; +import type { LinkEntity } from "../../src/core/linkEntity.js"; import { StandardAbortMessage } from "@azure/core-amqp"; -import { BatchingReceiver } from "../../src/core/batchingReceiver.js"; +import type { BatchingReceiver } from "../../src/core/batchingReceiver.js"; import { testLogger } from "./utils/misc.js"; import { afterAll, afterEach, beforeAll, describe, it } from "vitest"; import { assert, expect, should } from "../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/receiveAndDeleteMode.spec.ts b/sdk/servicebus/service-bus/test/internal/receiveAndDeleteMode.spec.ts index 9f1291074f29..19887c9ba2fb 100644 --- a/sdk/servicebus/service-bus/test/internal/receiveAndDeleteMode.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/receiveAndDeleteMode.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ServiceBusReceivedMessage, ServiceBusMessage, ServiceBusReceiver, @@ -12,16 +12,15 @@ import { import { TestClientType, TestMessage, checkWithTimeout } from "../public/utils/testUtils.js"; import { InvalidOperationInReceiveAndDeleteMode } from "../../src/util/errors.js"; +import type { EntityName, ServiceBusClientForTests } from "../public/utils/testutils2.js"; import { - EntityName, - ServiceBusClientForTests, createServiceBusClientForTests, testPeekMsgsLength, getRandomTestClientTypeWithSessions, getRandomTestClientTypeWithNoSessions, } from "../public/utils/testutils2.js"; import { DispositionType } from "../../src/serviceBusMessage.js"; -import Long from "long"; +import type Long from "long"; import { afterAll, afterEach, beforeAll, describe, it } from "vitest"; import { expect, should } from "../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/renewLock.spec.ts b/sdk/servicebus/service-bus/test/internal/renewLock.spec.ts index a183f94c8fab..e8285e29c9e4 100644 --- a/sdk/servicebus/service-bus/test/internal/renewLock.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/renewLock.spec.ts @@ -3,13 +3,12 @@ import { delay } from "rhea-promise"; import { checkWithTimeout, TestMessage } from "../public/utils/testUtils.js"; +import type { ServiceBusClientForTests, AutoGeneratedEntity } from "../public/utils/testutils2.js"; import { - ServiceBusClientForTests, createServiceBusClientForTests, getRandomTestClientTypeWithNoSessions, - AutoGeneratedEntity, } from "../public/utils/testutils2.js"; -import { +import type { ServiceBusReceiver, ServiceBusSender, ServiceBusReceivedMessage, diff --git a/sdk/servicebus/service-bus/test/internal/retries.spec.ts b/sdk/servicebus/service-bus/test/internal/retries.spec.ts index 6c7fd23a31a8..28efe758b052 100644 --- a/sdk/servicebus/service-bus/test/internal/retries.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/retries.spec.ts @@ -2,19 +2,15 @@ // Licensed under the MIT License. import { TestClientType, TestMessage } from "../public/utils/testUtils.js"; -import { - ServiceBusClientForTests, - createServiceBusClientForTests, -} from "../public/utils/testutils2.js"; -import { ServiceBusSender, ServiceBusSenderImpl } from "../../src/sender.js"; +import type { ServiceBusClientForTests } from "../public/utils/testutils2.js"; +import { createServiceBusClientForTests } from "../public/utils/testutils2.js"; +import type { ServiceBusSender, ServiceBusSenderImpl } from "../../src/sender.js"; import { MessagingError } from "@azure/core-amqp"; import Long from "long"; import { BatchingReceiver } from "../../src/core/batchingReceiver.js"; -import { - ServiceBusSessionReceiverImpl, - ServiceBusSessionReceiver, -} from "../../src/receivers/sessionReceiver.js"; -import { ServiceBusReceiver, ServiceBusReceiverImpl } from "../../src/receivers/receiver.js"; +import type { ServiceBusSessionReceiver } from "../../src/receivers/sessionReceiver.js"; +import { ServiceBusSessionReceiverImpl } from "../../src/receivers/sessionReceiver.js"; +import type { ServiceBusReceiver, ServiceBusReceiverImpl } from "../../src/receivers/receiver.js"; import { afterAll, afterEach, beforeAll, beforeEach, describe, it } from "vitest"; import { should } from "../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/sendBatch.spec.ts b/sdk/servicebus/service-bus/test/internal/sendBatch.spec.ts index f7a699fc8936..964249c3cd26 100644 --- a/sdk/servicebus/service-bus/test/internal/sendBatch.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/sendBatch.spec.ts @@ -1,21 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - OperationOptions, - ServiceBusAdministrationClient, - ServiceBusClient, - ServiceBusMessage, -} from "../../src/index.js"; +import type { OperationOptions, ServiceBusMessage } from "../../src/index.js"; +import { ServiceBusAdministrationClient, ServiceBusClient } from "../../src/index.js"; import { TestClientType } from "../public/utils/testUtils.js"; +import type { EntityName, ServiceBusClientForTests } from "../public/utils/testutils2.js"; import { - EntityName, - ServiceBusClientForTests, createServiceBusClientForTests, getRandomTestClientTypeWithSessions, getRandomTestClientTypeWithNoSessions, } from "../public/utils/testutils2.js"; -import { ServiceBusSender, ServiceBusSenderImpl } from "../../src/sender.js"; +import type { ServiceBusSender, ServiceBusSenderImpl } from "../../src/sender.js"; import { getEnvVarValue } from "../public/utils/envVarUtils.js"; import { delay } from "@azure/core-util"; import { createTestCredential } from "@azure-tools/test-credential"; diff --git a/sdk/servicebus/service-bus/test/internal/serviceBusClient.spec.ts b/sdk/servicebus/service-bus/test/internal/serviceBusClient.spec.ts index 3366c57b51c1..8d08cca37ebb 100644 --- a/sdk/servicebus/service-bus/test/internal/serviceBusClient.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/serviceBusClient.spec.ts @@ -5,30 +5,29 @@ import { createTestCredential } from "@azure-tools/test-credential"; import { Constants as CoreAmqpConstants } from "@azure/core-amqp"; import { isObjectWithProperties } from "@azure/core-util"; import Long from "long"; -import { - isServiceBusError, +import type { ProcessErrorArgs, - ServiceBusClient, ServiceBusError, ServiceBusSessionReceiver, ServiceBusSender, ServiceBusReceiverOptions, } from "../../src/index.js"; -import { DispositionType, ServiceBusReceivedMessage } from "../../src/serviceBusMessage.js"; +import { isServiceBusError, ServiceBusClient } from "../../src/index.js"; +import type { ServiceBusReceivedMessage } from "../../src/serviceBusMessage.js"; +import { DispositionType } from "../../src/serviceBusMessage.js"; import { getReceiverClosedErrorMsg, getSenderClosedErrorMsg } from "../../src/util/errors.js"; import { getEnvVars } from "../public/utils/envVarUtils.js"; import { isNode } from "@azure/core-util"; import { checkWithTimeout, TestClientType, TestMessage } from "../public/utils/testUtils.js"; +import type { EntityName, ServiceBusClientForTests } from "../public/utils/testutils2.js"; import { createServiceBusClientForTests, - EntityName, - ServiceBusClientForTests, testPeekMsgsLength, getRandomTestClientTypeWithSessions, getRandomTestClientTypeWithNoSessions, getFullyQualifiedNamespace, } from "../public/utils/testutils2.js"; -import { ServiceBusReceiver, ServiceBusReceiverImpl } from "../../src/receivers/receiver.js"; +import type { ServiceBusReceiver, ServiceBusReceiverImpl } from "../../src/receivers/receiver.js"; import { afterAll, afterEach, beforeAll, beforeEach, describe, it } from "vitest"; import { should } from "../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/smoketest.spec.ts b/sdk/servicebus/service-bus/test/internal/smoketest.spec.ts index de220c3f8886..0688a24119b2 100644 --- a/sdk/servicebus/service-bus/test/internal/smoketest.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/smoketest.spec.ts @@ -1,20 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ServiceBusReceivedMessage, ServiceBusReceiver, ServiceBusMessage, - delay, ProcessErrorArgs, ServiceBusSender, } from "../../src/index.js"; +import { delay } from "../../src/index.js"; import { TestClientType } from "../public/utils/testUtils.js"; import { getEntityNameFromConnectionString } from "../../src/constructorHelpers.js"; -import { - ServiceBusClientForTests, - createServiceBusClientForTests, -} from "../public/utils/testutils2.js"; +import type { ServiceBusClientForTests } from "../public/utils/testutils2.js"; +import { createServiceBusClientForTests } from "../public/utils/testutils2.js"; import { afterAll, afterEach, beforeAll, beforeEach, describe, it } from "vitest"; import { assert } from "../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/streamingReceiver.spec.ts b/sdk/servicebus/service-bus/test/internal/streamingReceiver.spec.ts index ee2d18c6463e..e49a8f3e2e2b 100644 --- a/sdk/servicebus/service-bus/test/internal/streamingReceiver.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/streamingReceiver.spec.ts @@ -1,19 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ServiceBusReceivedMessage, - delay, ProcessErrorArgs, ServiceBusReceiver, ServiceBusSender, } from "../../src/index.js"; +import { delay } from "../../src/index.js"; import { getAlreadyReceivingErrorMsg, MessageAlreadySettled } from "../../src/util/errors.js"; import { TestMessage, checkWithTimeout, TestClientType } from "../public/utils/testUtils.js"; -import { DispositionType, ServiceBusMessageImpl } from "../../src/serviceBusMessage.js"; +import type { ServiceBusMessageImpl } from "../../src/serviceBusMessage.js"; +import { DispositionType } from "../../src/serviceBusMessage.js"; +import type { EntityName, ServiceBusClientForTests } from "../public/utils/testutils2.js"; import { - EntityName, - ServiceBusClientForTests, createServiceBusClientForTests, drainReceiveAndDeleteReceiver, testPeekMsgsLength, diff --git a/sdk/servicebus/service-bus/test/internal/streamingReceiverSessions.spec.ts b/sdk/servicebus/service-bus/test/internal/streamingReceiverSessions.spec.ts index 8df30a660e40..57637d37ae53 100644 --- a/sdk/servicebus/service-bus/test/internal/streamingReceiverSessions.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/streamingReceiverSessions.spec.ts @@ -1,26 +1,28 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ServiceBusReceivedMessage, - delay, ProcessErrorArgs, ServiceBusReceiver, ServiceBusSender, } from "../../src/index.js"; +import { delay } from "../../src/index.js"; import { getAlreadyReceivingErrorMsg, MessageAlreadySettled } from "../../src/util/errors.js"; import { TestMessage, checkWithTimeout } from "../public/utils/testUtils.js"; import { DispositionType } from "../../src/serviceBusMessage.js"; -import { +import type { ServiceBusSessionReceiver, ServiceBusSessionReceiverImpl, } from "../../src/receivers/sessionReceiver.js"; -import { +import type { EntityName, ServiceBusClientForTests, + AutoGeneratedEntity, +} from "../public/utils/testutils2.js"; +import { createServiceBusClientForTests, testPeekMsgsLength, getRandomTestClientTypeWithSessions, - AutoGeneratedEntity, } from "../public/utils/testutils2.js"; import { getDeliveryProperty } from "./utils/misc.js"; import { singleMessagePromise } from "./streamingReceiver.spec.js"; diff --git a/sdk/servicebus/service-bus/test/internal/tracing.spec.ts b/sdk/servicebus/service-bus/test/internal/tracing.spec.ts index 050ded9e9f18..4660f22e552a 100644 --- a/sdk/servicebus/service-bus/test/internal/tracing.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/tracing.spec.ts @@ -1,13 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ServiceBusSender, ServiceBusMessage } from "../../src/index.js"; +import type { ServiceBusSender, ServiceBusMessage } from "../../src/index.js"; import { TestClientType } from "../public/utils/testUtils.js"; -import { - ServiceBusClientForTests, - EntityName, - createServiceBusClientForTests, -} from "../public/utils/testutils2.js"; +import type { ServiceBusClientForTests, EntityName } from "../public/utils/testutils2.js"; +import { createServiceBusClientForTests } from "../public/utils/testutils2.js"; import { afterAll, beforeAll, beforeEach, describe, it } from "vitest"; import { assert } from "../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/abortSignal.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/abortSignal.spec.ts index 408bca39c1d2..4becb40d95d4 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/abortSignal.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/abortSignal.spec.ts @@ -2,8 +2,9 @@ // Licensed under the MIT License. import { MessageSender } from "../../../src/core/messageSender.js"; -import { OperationOptionsBase } from "../../../src/modelsToBeSharedWithEventHubs.js"; -import { AwaitableSender, delay, ReceiverOptions } from "rhea-promise"; +import type { OperationOptionsBase } from "../../../src/modelsToBeSharedWithEventHubs.js"; +import type { AwaitableSender, ReceiverOptions } from "rhea-promise"; +import { delay } from "rhea-promise"; import { ServiceBusMessageBatchImpl } from "../../../src/serviceBusMessageBatch.js"; import { StreamingReceiver } from "../../../src/core/streamingReceiver.js"; import { @@ -18,8 +19,8 @@ import { StandardAbortMessage } from "@azure/core-amqp"; import { ServiceBusSessionReceiverImpl } from "../../../src/receivers/sessionReceiver.js"; import { ServiceBusReceiverImpl } from "../../../src/receivers/receiver.js"; import { MessageSession } from "../../../src/session/messageSession.js"; -import { ProcessErrorArgs } from "../../../src/index.js"; -import { ReceiveMode } from "../../../src/models.js"; +import type { ProcessErrorArgs } from "../../../src/index.js"; +import type { ReceiveMode } from "../../../src/models.js"; import { afterEach, beforeEach, describe, it } from "vitest"; import { assert } from "../../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/amqpUnitTests.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/amqpUnitTests.spec.ts index 456b7900226f..399fee234d0b 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/amqpUnitTests.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/amqpUnitTests.spec.ts @@ -1,16 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { + ServiceBusMessage, + ServiceBusReceivedMessage, +} from "../../../src/serviceBusMessage.js"; import { isAmqpAnnotatedMessage, isServiceBusMessage, - ServiceBusMessage, ServiceBusMessageImpl, - ServiceBusReceivedMessage, toRheaMessage, } from "../../../src/serviceBusMessage.js"; -import { Delivery, Message } from "rhea-promise"; -import { AmqpAnnotatedMessage, Constants } from "@azure/core-amqp"; +import type { Delivery, Message } from "rhea-promise"; +import type { AmqpAnnotatedMessage } from "@azure/core-amqp"; +import { Constants } from "@azure/core-amqp"; import { dataSectionTypeCode, defaultDataTransformer, diff --git a/sdk/servicebus/service-bus/test/internal/unit/atomXml.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/atomXml.spec.ts index dcd486a9cb0d..f22767bce1e6 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/atomXml.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/atomXml.spec.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { AtomXmlSerializer } from "../../../src/util/atomXmlHelper.js"; import { - AtomXmlSerializer, deserializeAtomXmlResponse, executeAtomXmlOperation, sanitizeSerializableObject, @@ -25,7 +25,7 @@ import { import { RuleResourceSerializer } from "../../../src/serializers/ruleResourceSerializer.js"; import { getXMLNSPrefix, isJSONLikeObject } from "../../../src/util/utils.js"; import { TestConstants } from "../../public/fakeTestSecrets.js"; -import { FullOperationResponse } from "@azure/core-client"; +import type { FullOperationResponse } from "@azure/core-client"; import { beforeEach, describe, it } from "vitest"; import { assert } from "../../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/autoLockRenewer.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/autoLockRenewer.spec.ts index 2210127d1f34..215105ed9d6d 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/autoLockRenewer.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/autoLockRenewer.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MessagingError } from "@azure/core-amqp"; +import type { MessagingError } from "@azure/core-amqp"; import { LockRenewer } from "../../../src/core/autoLockRenewer.js"; -import { +import type { ManagementClient, SendManagementRequestOptions, } from "../../../src/core/managementClient.js"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/batchingReceiver.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/batchingReceiver.spec.ts index 6cbf67648ced..bf02ac67cba2 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/batchingReceiver.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/batchingReceiver.spec.ts @@ -9,18 +9,17 @@ import { } from "../../../src/core/batchingReceiver.js"; import { defer, createConnectionContextForTests } from "./unittestUtils.js"; import { createAbortSignalForTest } from "../../public/utils/abortSignalTestUtils.js"; -import { ServiceBusMessageImpl } from "../../../src/serviceBusMessage.js"; -import { +import type { ServiceBusMessageImpl } from "../../../src/serviceBusMessage.js"; +import type { Receiver as RheaPromiseReceiver, - ReceiverEvents, - SessionEvents, EventContext, Message as RheaMessage, } from "rhea-promise"; -import { ConnectionContext } from "../../../src/connectionContext.js"; +import { ReceiverEvents, SessionEvents } from "rhea-promise"; +import type { ConnectionContext } from "../../../src/connectionContext.js"; import { ServiceBusReceiverImpl } from "../../../src/receivers/receiver.js"; -import { OperationOptionsBase } from "../../../src/modelsToBeSharedWithEventHubs.js"; -import { ReceiveMode } from "../../../src/models.js"; +import type { OperationOptionsBase } from "../../../src/modelsToBeSharedWithEventHubs.js"; +import type { ReceiveMode } from "../../../src/models.js"; import { Constants, StandardAbortMessage } from "@azure/core-amqp"; import { describe, it, vi, beforeEach, afterEach, afterAll, beforeAll } from "vitest"; import { assert, expect } from "../../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/client.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/client.spec.ts index 5ba7d3bd4659..c2512afb9509 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/client.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/client.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ServiceBusClient, TokenCredential } from "../../../src/index.js"; +import type { TokenCredential } from "../../../src/index.js"; +import { ServiceBusClient } from "../../../src/index.js"; import { describe, it } from "vitest"; import { expect } from "../../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/errors.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/errors.spec.ts index e06e1e39f8ab..c21012c47db8 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/errors.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/errors.spec.ts @@ -3,9 +3,10 @@ import { MessagingError } from "@azure/core-amqp"; import { AbortError } from "@azure/abort-controller"; import { createServiceBusLogger } from "../../../src/log.js"; -import { describe, it, vi, beforeEach, beforeAll, MockInstance } from "vitest"; +import type { MockInstance } from "vitest"; +import { describe, it, vi, beforeEach, beforeAll } from "vitest"; import { expect } from "../../public/utils/chai.js"; -import { Debugger } from "@azure/logger"; +import type { Debugger } from "@azure/logger"; describe("errors", () => { let verboseSpy: MockInstance; diff --git a/sdk/servicebus/service-bus/test/internal/unit/linkentity.unittest.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/linkentity.unittest.spec.ts index 72504663c524..24c4d8881951 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/linkentity.unittest.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/linkentity.unittest.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { Receiver, ReceiverOptions } from "rhea-promise"; -import { ConnectionContext } from "../../../src/connectionContext.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { Receiver, ReceiverOptions } from "rhea-promise"; +import type { ConnectionContext } from "../../../src/connectionContext.js"; import { BatchingReceiver } from "../../../src/core/batchingReceiver.js"; import { LinkEntity } from "../../../src/core/linkEntity.js"; import { ManagementClient } from "../../../src/core/managementClient.js"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/messageSession.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/messageSession.spec.ts index 9c3522fd5e49..f7a650f3d869 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/messageSession.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/messageSession.spec.ts @@ -9,20 +9,20 @@ import { defer, } from "./unittestUtils.js"; import { EventEmitter } from "events"; -import { - ReceiverEvents, +import type { EventContext, Message as RheaMessage, - SessionEvents, Receiver as RheaPromiseReceiver, } from "rhea-promise"; -import { OnAmqpEventAsPromise } from "../../../src/core/messageReceiver.js"; -import { ServiceBusMessageImpl } from "../../../src/serviceBusMessage.js"; -import { ProcessErrorArgs, ServiceBusError } from "../../../src/index.js"; -import { ReceiveMode } from "../../../src/models.js"; +import { ReceiverEvents, SessionEvents } from "rhea-promise"; +import type { OnAmqpEventAsPromise } from "../../../src/core/messageReceiver.js"; +import type { ServiceBusMessageImpl } from "../../../src/serviceBusMessage.js"; +import type { ProcessErrorArgs, ServiceBusError } from "../../../src/index.js"; +import type { ReceiveMode } from "../../../src/models.js"; import { Constants } from "@azure/core-amqp"; import { AbortError } from "@azure/abort-controller"; -import { describe, it, vi, beforeEach, MockInstance, beforeAll, afterAll } from "vitest"; +import type { MockInstance } from "vitest"; +import { describe, it, vi, beforeEach, beforeAll, afterAll } from "vitest"; import { assert, expect } from "../../public/utils/chai.js"; describe("Message session unit tests - receiveMessages", () => { diff --git a/sdk/servicebus/service-bus/test/internal/unit/receivedMessageProps.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/receivedMessageProps.spec.ts index fd5202848442..2d1c4910b5af 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/receivedMessageProps.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/receivedMessageProps.spec.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ServiceBusMessage } from "../../../src/index.js"; +import type { ServiceBusMessage } from "../../../src/index.js"; import { TestMessage } from "../../public/utils/testUtils.js"; import { fromRheaMessage, toRheaMessage } from "../../../src/serviceBusMessage.js"; -import { Message as RheaMessage } from "rhea-promise"; +import type { Message as RheaMessage } from "rhea-promise"; import { Constants } from "@azure/core-amqp"; import { describe, it } from "vitest"; import { should } from "../../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/receiver.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/receiver.spec.ts index 68f10329d061..5fd193970846 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/receiver.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/receiver.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ReceiverOptions } from "rhea-promise"; +import type { ReceiverOptions } from "rhea-promise"; import { BatchingReceiver } from "../../../src/core/batchingReceiver.js"; import { StreamingReceiver } from "../../../src/core/streamingReceiver.js"; import { ServiceBusReceiverImpl } from "../../../src/receivers/receiver.js"; @@ -10,9 +10,9 @@ import { createConnectionContextForTests, createConnectionContextForTestsWithSessionId, } from "./unittestUtils.js"; -import { InternalMessageHandlers } from "../../../src/models.js"; +import type { InternalMessageHandlers } from "../../../src/models.js"; import { createAbortSignalForTest } from "../../public/utils/abortSignalTestUtils.js"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { ServiceBusSessionReceiverImpl } from "../../../src/receivers/sessionReceiver.js"; import { MessageSession } from "../../../src/session/messageSession.js"; import { assertThrows } from "../../public/utils/testUtils.js"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/receiverCommon.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/receiverCommon.spec.ts index 72508753d775..12f0e77db5b9 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/receiverCommon.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/receiverCommon.spec.ts @@ -8,19 +8,20 @@ import { settleMessageOperation, wrapProcessErrorHandler, } from "../../../src/receivers/receiverCommon.js"; -import { ServiceBusReceiver } from "../../../src/receivers/receiver.js"; -import { createServiceBusLogger, ServiceBusLogger } from "../../../src/log.js"; -import { ProcessErrorArgs } from "../../../src/models.js"; +import type { ServiceBusReceiver } from "../../../src/receivers/receiver.js"; +import type { ServiceBusLogger } from "../../../src/log.js"; +import { createServiceBusLogger } from "../../../src/log.js"; +import type { ProcessErrorArgs } from "../../../src/models.js"; import { ServiceBusError, translateServiceBusError } from "../../../src/serviceBusError.js"; import { MessagingError, RetryOperationType } from "@azure/core-amqp"; -import { - DispositionType, +import type { ServiceBusMessageImpl, ServiceBusReceivedMessage, } from "../../../src/serviceBusMessage.js"; -import { ConnectionContext } from "../../../src/connectionContext.js"; -import { DispositionStatusOptions } from "../../../src/core/managementClient.js"; -import { Delivery } from "rhea-promise"; +import { DispositionType } from "../../../src/serviceBusMessage.js"; +import type { ConnectionContext } from "../../../src/connectionContext.js"; +import type { DispositionStatusOptions } from "../../../src/core/managementClient.js"; +import type { Delivery } from "rhea-promise"; import { MessageAlreadySettled } from "../../../src/util/errors.js"; import { assertThrows } from "../../public/utils/testUtils.js"; import { AbortError } from "@azure/abort-controller"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/receiverHelper.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/receiverHelper.spec.ts index 1e92aa19e382..796933c39f5d 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/receiverHelper.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/receiverHelper.spec.ts @@ -1,6 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Receiver, ReceiverEvents, delay } from "rhea-promise"; +import type { Receiver } from "rhea-promise"; +import { ReceiverEvents, delay } from "rhea-promise"; import { ReceiverHelper } from "../../../src/core/receiverHelper.js"; import { assertThrows } from "../../public/utils/testUtils.js"; import { createRheaReceiverForTests } from "./unittestUtils.js"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/sender.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/sender.spec.ts index b38ac6ece592..ef4ab2b8271b 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/sender.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/sender.spec.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { ServiceBusMessageBatchImpl } from "../../../src/serviceBusMessageBatch.js"; -import { ConnectionContext } from "../../../src/connectionContext.js"; -import { ServiceBusMessage } from "../../../src/index.js"; +import type { ConnectionContext } from "../../../src/connectionContext.js"; +import type { ServiceBusMessage } from "../../../src/index.js"; import { isServiceBusMessageBatch, ServiceBusSenderImpl } from "../../../src/sender.js"; import { createConnectionContextForTests } from "./unittestUtils.js"; import { diff --git a/sdk/servicebus/service-bus/test/internal/unit/serviceBusClient.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/serviceBusClient.spec.ts index 5fed00fdcf2a..940056fdc2d3 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/serviceBusClient.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/serviceBusClient.spec.ts @@ -2,22 +2,22 @@ // Licensed under the MIT License. import { extractReceiverArguments, ServiceBusClient } from "../../../src/serviceBusClient.js"; -import { ServiceBusSessionReceiverOptions } from "../../../src/models.js"; +import type { ServiceBusSessionReceiverOptions } from "../../../src/models.js"; import { entityPathMisMatchError } from "../../../src/util/errors.js"; import { createConnectionContextForConnectionString, createConnectionContextForCredential, } from "../../../src/constructorHelpers.js"; -import { TokenCredential } from "@azure/core-auth"; -import { ConnectionContext } from "../../../src/connectionContext.js"; +import type { TokenCredential } from "@azure/core-auth"; +import type { ConnectionContext } from "../../../src/connectionContext.js"; import { createConnectionContextForTestsWithSessionId } from "./unittestUtils.js"; -import { +import type { ServiceBusSessionReceiver, ServiceBusSessionReceiverImpl, } from "../../../src/receivers/sessionReceiver.js"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { ServiceBusSenderImpl } from "../../../src/sender.js"; -import { MessageReceiver } from "../../../src/core/messageReceiver.js"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { ServiceBusSenderImpl } from "../../../src/sender.js"; +import type { MessageReceiver } from "../../../src/core/messageReceiver.js"; import { describe, it } from "vitest"; import { assert } from "../../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/serviceBusMessage.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/serviceBusMessage.spec.ts index 4f705f9042f1..99660c3a385f 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/serviceBusMessage.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/serviceBusMessage.spec.ts @@ -1,22 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - ServiceBusMessage, - ServiceBusMessageImpl, - toRheaMessage, -} from "../../../src/serviceBusMessage.js"; -import { +import type { ServiceBusMessage } from "../../../src/serviceBusMessage.js"; +import { ServiceBusMessageImpl, toRheaMessage } from "../../../src/serviceBusMessage.js"; +import type { Delivery, - uuid_to_string, MessageAnnotations, DeliveryAnnotations, Message as RheaMessage, } from "rhea-promise"; -import { ConnectionConfig, Constants } from "@azure/core-amqp"; +import { uuid_to_string } from "rhea-promise"; +import type { ConnectionConfig } from "@azure/core-amqp"; +import { Constants } from "@azure/core-amqp"; import { defaultDataTransformer } from "../../../src/dataTransformer.js"; import { ServiceBusMessageBatchImpl } from "../../../src/serviceBusMessageBatch.js"; -import { ConnectionContext } from "../../../src/connectionContext.js"; +import type { ConnectionContext } from "../../../src/connectionContext.js"; import { describe, it } from "vitest"; import { assert } from "../../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/serviceBusReceiverUnitTests.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/serviceBusReceiverUnitTests.spec.ts index 86a2a2ff59a3..92197c2ac63f 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/serviceBusReceiverUnitTests.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/serviceBusReceiverUnitTests.spec.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { BatchingReceiver } from "../../../src/core/batchingReceiver.js"; +import type { BatchingReceiver } from "../../../src/core/batchingReceiver.js"; import { ServiceBusReceiverImpl } from "../../../src/receivers/receiver.js"; import { assertThrows } from "../../public/utils/testUtils.js"; import { createConnectionContextForTests, getPromiseResolverForTest } from "./unittestUtils.js"; -import { InternalMessageHandlers } from "../../../src/models.js"; +import type { InternalMessageHandlers } from "../../../src/models.js"; import { afterEach, beforeEach, describe, it } from "vitest"; import { assert } from "../../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/streamingReceiver.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/streamingReceiver.spec.ts index bf98e85279cb..8ba03c984ba2 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/streamingReceiver.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/streamingReceiver.spec.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { addTestStreamingReceiver } from "./unittestUtils.js"; -import { ProcessErrorArgs, ServiceBusReceivedMessage } from "../../../src/index.js"; -import { EventContext } from "rhea-promise"; +import type { ProcessErrorArgs, ServiceBusReceivedMessage } from "../../../src/index.js"; +import type { EventContext } from "rhea-promise"; import { Constants } from "@azure/core-amqp"; import { AbortError } from "@azure/abort-controller"; import { assertThrows } from "../../public/utils/testUtils.js"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/tracing.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/tracing.spec.ts index f8802aee1c94..8c4bce66bb3a 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/tracing.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/tracing.spec.ts @@ -1,19 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - MockInstrumenter, - MockTracingSpan, - createMockTracingContext, -} from "@azure-tools/test-utils-vitest"; +import type { MockTracingSpan } from "@azure-tools/test-utils-vitest"; +import { MockInstrumenter, createMockTracingContext } from "@azure-tools/test-utils-vitest"; import { TRACEPARENT_PROPERTY, instrumentMessage, toProcessingSpanOptions, } from "../../../src/diagnostics/instrumentServiceBusMessage.js"; import { toSpanOptions, tracingClient } from "../../../src/diagnostics/tracing.js"; -import { TracingContext } from "@azure/core-tracing"; +import type { TracingContext } from "@azure/core-tracing"; import Long from "long"; -import { ServiceBusReceivedMessage } from "../../../src/serviceBusMessage.js"; +import type { ServiceBusReceivedMessage } from "../../../src/serviceBusMessage.js"; import { describe, it, vi, afterEach } from "vitest"; import { assert, expect } from "../../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/unit/unittestUtils.ts b/sdk/servicebus/service-bus/test/internal/unit/unittestUtils.ts index 46fcd883465f..f012308128c7 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/unittestUtils.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/unittestUtils.ts @@ -1,20 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ConnectionContext } from "../../../src/connectionContext.js"; -import { +import type { ConnectionContext } from "../../../src/connectionContext.js"; +import type { AwaitableSender, Receiver as RheaPromiseReceiver, - ReceiverEvents, ReceiverOptions, } from "rhea-promise"; +import { ReceiverEvents } from "rhea-promise"; import { Constants } from "@azure/core-amqp"; -import { AccessToken } from "@azure/core-auth"; +import type { AccessToken } from "@azure/core-auth"; import { EventEmitter } from "events"; import { getUniqueName } from "../../../src/util/utils.js"; -import { ReceiveOptions } from "../../../src/core/messageReceiver.js"; +import type { ReceiveOptions } from "../../../src/core/messageReceiver.js"; import { StreamingReceiver } from "../../../src/core/streamingReceiver.js"; -import { ReceiveMode } from "../../../src/models.js"; +import type { ReceiveMode } from "../../../src/models.js"; import { afterEach } from "vitest"; export interface CreateConnectionContextForTestsOptions { diff --git a/sdk/servicebus/service-bus/test/internal/unit/utils.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/utils.spec.ts index 9a653588e4db..d5dbb1f188cb 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/utils.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/utils.spec.ts @@ -6,13 +6,13 @@ import { waitForTimeoutOrAbortOrResolve, } from "../../../src/util/utils.js"; import { StandardAbortMessage } from "@azure/core-amqp"; -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; +import type { AbortError, AbortSignalLike } from "@azure/abort-controller"; import { delay } from "rhea-promise"; import { extractSpanContextFromServiceBusMessage, TRACEPARENT_PROPERTY, } from "../../../src/diagnostics/instrumentServiceBusMessage.js"; -import { ServiceBusReceivedMessage } from "../../../src/index.js"; +import type { ServiceBusReceivedMessage } from "../../../src/index.js"; import { tracingClient } from "../../../src/diagnostics/tracing.js"; import { describe, it, vi, beforeEach } from "vitest"; import { assert, expect } from "../../public/utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/internal/utils/misc.ts b/sdk/servicebus/service-bus/test/internal/utils/misc.ts index 436ab08694b2..826048f75fb1 100644 --- a/sdk/servicebus/service-bus/test/internal/utils/misc.ts +++ b/sdk/servicebus/service-bus/test/internal/utils/misc.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { createClientLogger } from "@azure/logger"; -import { Delivery, ServiceBusReceivedMessage } from "../../../src/index.js"; -import { ServiceBusMessageImpl } from "../../../src/serviceBusMessage.js"; +import type { Delivery, ServiceBusReceivedMessage } from "../../../src/index.js"; +import type { ServiceBusMessageImpl } from "../../../src/serviceBusMessage.js"; export function getDeliveryProperty(message: ServiceBusReceivedMessage): Delivery { if ( diff --git a/sdk/servicebus/service-bus/test/public/amqpAnnotatedMessage.spec.ts b/sdk/servicebus/service-bus/test/public/amqpAnnotatedMessage.spec.ts index cc6cab844fc6..0a60d32429f4 100644 --- a/sdk/servicebus/service-bus/test/public/amqpAnnotatedMessage.spec.ts +++ b/sdk/servicebus/service-bus/test/public/amqpAnnotatedMessage.spec.ts @@ -4,7 +4,7 @@ import { testPeekMsgsLength, addServiceBusClientForLiveTesting, } from "../public/utils/testutils2.js"; -import { AmqpAnnotatedMessage } from "@azure/core-amqp"; +import type { AmqpAnnotatedMessage } from "@azure/core-amqp"; import { v4 as generateUuid } from "uuid"; import { TestClientType } from "./utils/testUtils.js"; import { describe, it } from "vitest"; diff --git a/sdk/servicebus/service-bus/test/public/atomManagement.spec.ts b/sdk/servicebus/service-bus/test/public/atomManagement.spec.ts index 1c2c22764113..64519b64212a 100644 --- a/sdk/servicebus/service-bus/test/public/atomManagement.spec.ts +++ b/sdk/servicebus/service-bus/test/public/atomManagement.spec.ts @@ -2,25 +2,23 @@ // Licensed under the MIT License. import { isNodeLike } from "@azure/core-util"; -import { PageSettings } from "@azure/core-paging"; +import type { PageSettings } from "@azure/core-paging"; import { DefaultAzureCredential } from "@azure/identity"; import { parseServiceBusConnectionString } from "../../src/index.js"; -import { CreateQueueOptions } from "../../src/index.js"; -import { RuleProperties } from "../../src/index.js"; -import { CreateSubscriptionOptions, SubscriptionProperties } from "../../src/index.js"; -import { CreateTopicOptions } from "../../src/index.js"; -import { ServiceBusAdministrationClient, WithResponse } from "../../src/index.js"; -import { EntityStatus, EntityAvailabilityStatus } from "../../src/index.js"; +import type { CreateQueueOptions } from "../../src/index.js"; +import type { RuleProperties } from "../../src/index.js"; +import type { CreateSubscriptionOptions, SubscriptionProperties } from "../../src/index.js"; +import type { CreateTopicOptions } from "../../src/index.js"; +import type { WithResponse } from "../../src/index.js"; +import { ServiceBusAdministrationClient } from "../../src/index.js"; +import type { EntityStatus, EntityAvailabilityStatus } from "../../src/index.js"; import { EnvVarNames, getEnvVars, getEnvVarValue } from "./utils/envVarUtils.js"; import { recreateQueue, recreateSubscription, recreateTopic } from "./utils/managementUtils.js"; import { EntityNames, TestClientType } from "./utils/testUtils.js"; import { TestConstants } from "./fakeTestSecrets.js"; import { AzureNamedKeyCredential } from "@azure/core-auth"; -import { - createServiceBusClientForTests, - getFullyQualifiedNamespace, - ServiceBusClientForTests, -} from "./utils/testutils2.js"; +import type { ServiceBusClientForTests } from "./utils/testutils2.js"; +import { createServiceBusClientForTests, getFullyQualifiedNamespace } from "./utils/testutils2.js"; import { createTestCredential } from "@azure-tools/test-credential"; import { afterAll, afterEach, assert, beforeAll, beforeEach, describe, it } from "vitest"; import { should } from "./utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/public/deferredMessage.spec.ts b/sdk/servicebus/service-bus/test/public/deferredMessage.spec.ts index 2f4827e0e924..140c5a9af51b 100644 --- a/sdk/servicebus/service-bus/test/public/deferredMessage.spec.ts +++ b/sdk/servicebus/service-bus/test/public/deferredMessage.spec.ts @@ -1,19 +1,21 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { delay, ServiceBusMessage } from "../../src/index.js"; -import { TestClientType, TestMessage } from "./utils/testUtils.js"; +import type { ServiceBusMessage } from "../../src/index.js"; +import { delay } from "../../src/index.js"; +import type { TestClientType } from "./utils/testUtils.js"; +import { TestMessage } from "./utils/testUtils.js"; +import type { EntityName } from "./utils/testutils2.js"; import { createServiceBusClientForTests, testPeekMsgsLength, - EntityName, getRandomTestClientTypeWithSessions, getRandomTestClientTypeWithNoSessions, } from "./utils/testutils2.js"; -import { ServiceBusReceiver } from "../../src/index.js"; -import { ServiceBusSender } from "../../src/index.js"; -import { ServiceBusReceivedMessage } from "../../src/index.js"; -import Long from "long"; +import type { ServiceBusReceiver } from "../../src/index.js"; +import type { ServiceBusSender } from "../../src/index.js"; +import type { ServiceBusReceivedMessage } from "../../src/index.js"; +import type Long from "long"; import { afterAll, afterEach, beforeAll, describe, it } from "vitest"; import { should } from "./utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/public/invalidParameters.spec.ts b/sdk/servicebus/service-bus/test/public/invalidParameters.spec.ts index 9cc864c02ac3..aecbf9d2f6e3 100644 --- a/sdk/servicebus/service-bus/test/public/invalidParameters.spec.ts +++ b/sdk/servicebus/service-bus/test/public/invalidParameters.spec.ts @@ -3,9 +3,11 @@ import Long from "long"; import { TestClientType, TestMessage } from "./utils/testUtils.js"; -import { ServiceBusClientForTests, createServiceBusClientForTests } from "./utils/testutils2.js"; -import { ServiceBusSender } from "../../src/index.js"; -import { ServiceBusClient, ServiceBusSessionReceiver } from "../../src/index.js"; +import type { ServiceBusClientForTests } from "./utils/testutils2.js"; +import { createServiceBusClientForTests } from "./utils/testutils2.js"; +import type { ServiceBusSender } from "../../src/index.js"; +import type { ServiceBusSessionReceiver } from "../../src/index.js"; +import { ServiceBusClient } from "../../src/index.js"; import { afterAll, beforeAll, describe, expect, it } from "vitest"; import { assert, should } from "./utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/public/managementClient.spec.ts b/sdk/servicebus/service-bus/test/public/managementClient.spec.ts index 960feff62c77..bdb37cb5b268 100644 --- a/sdk/servicebus/service-bus/test/public/managementClient.spec.ts +++ b/sdk/servicebus/service-bus/test/public/managementClient.spec.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ServiceBusSender, ServiceBusReceiver } from "../../src/index.js"; +import type { ServiceBusSender, ServiceBusReceiver } from "../../src/index.js"; import { TestClientType, TestMessage } from "./utils/testUtils.js"; -import { ServiceBusClientForTests, createServiceBusClientForTests } from "./utils/testutils2.js"; +import type { ServiceBusClientForTests } from "./utils/testutils2.js"; +import { createServiceBusClientForTests } from "./utils/testutils2.js"; import { afterAll, afterEach, beforeAll, describe, it } from "vitest"; describe("ManagementClient - disconnects", function (): void { diff --git a/sdk/servicebus/service-bus/test/public/peekMessagesOptions.spec.ts b/sdk/servicebus/service-bus/test/public/peekMessagesOptions.spec.ts index a135e7a3197c..caa0b3672edf 100644 --- a/sdk/servicebus/service-bus/test/public/peekMessagesOptions.spec.ts +++ b/sdk/servicebus/service-bus/test/public/peekMessagesOptions.spec.ts @@ -1,12 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ServiceBusReceiver, ServiceBusSender } from "../../src/index.js"; -import { - createServiceBusClientForTests, - EntityName, - ServiceBusClientForTests, -} from "./utils/testutils2.js"; +import type { ServiceBusReceiver, ServiceBusSender } from "../../src/index.js"; +import type { EntityName, ServiceBusClientForTests } from "./utils/testutils2.js"; +import { createServiceBusClientForTests } from "./utils/testutils2.js"; import { TestClientType, TestMessage } from "./utils/testUtils.js"; import { expect } from "./utils/chai.js"; import { afterAll, afterEach, beforeAll, describe, it } from "vitest"; diff --git a/sdk/servicebus/service-bus/test/public/propsToModify.spec.ts b/sdk/servicebus/service-bus/test/public/propsToModify.spec.ts index 5c791c163655..fc7a4d912d55 100644 --- a/sdk/servicebus/service-bus/test/public/propsToModify.spec.ts +++ b/sdk/servicebus/service-bus/test/public/propsToModify.spec.ts @@ -3,7 +3,7 @@ import { createServiceBusClientForTests } from "./utils/testutils2.js"; import { TestClientType, TestMessage } from "./utils/testUtils.js"; -import { ServiceBusReceivedMessage, ServiceBusReceiver } from "../../src/index.js"; +import type { ServiceBusReceivedMessage, ServiceBusReceiver } from "../../src/index.js"; import { afterAll, afterEach, beforeAll, describe, it } from "vitest"; import { should } from "./utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/public/renewLockSessions.spec.ts b/sdk/servicebus/service-bus/test/public/renewLockSessions.spec.ts index 8083a825ecfc..0f0e12833967 100644 --- a/sdk/servicebus/service-bus/test/public/renewLockSessions.spec.ts +++ b/sdk/servicebus/service-bus/test/public/renewLockSessions.spec.ts @@ -1,16 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ServiceBusMessage, delay, ProcessErrorArgs, isServiceBusError } from "../../src/index.js"; -import { TestClientType, TestMessage } from "./utils/testUtils.js"; +import type { ServiceBusMessage, ProcessErrorArgs } from "../../src/index.js"; +import { delay, isServiceBusError } from "../../src/index.js"; +import type { TestClientType } from "./utils/testUtils.js"; +import { TestMessage } from "./utils/testUtils.js"; +import type { ServiceBusClientForTests } from "./utils/testutils2.js"; import { - ServiceBusClientForTests, createServiceBusClientForTests, getRandomTestClientTypeWithSessions, } from "./utils/testutils2.js"; -import { ServiceBusSender } from "../../src/index.js"; -import { ServiceBusSessionReceiver } from "../../src/index.js"; -import { ServiceBusReceivedMessage } from "../../src/index.js"; +import type { ServiceBusSender } from "../../src/index.js"; +import type { ServiceBusSessionReceiver } from "../../src/index.js"; +import type { ServiceBusReceivedMessage } from "../../src/index.js"; import { afterAll, afterEach, beforeAll, describe, it } from "vitest"; import { assert, should } from "./utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/public/ruleManager.spec.ts b/sdk/servicebus/service-bus/test/public/ruleManager.spec.ts index 02fab60baa43..1e58e6d08068 100644 --- a/sdk/servicebus/service-bus/test/public/ruleManager.spec.ts +++ b/sdk/servicebus/service-bus/test/public/ruleManager.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CorrelationRuleFilter, RuleProperties, ServiceBusMessage, @@ -10,10 +10,8 @@ import { SqlRuleFilter, } from "../../src/index.js"; import { TestClientType } from "../public/utils/testUtils.js"; -import { - ServiceBusClientForTests, - createServiceBusClientForTests, -} from "../public/utils/testutils2.js"; +import type { ServiceBusClientForTests } from "../public/utils/testutils2.js"; +import { createServiceBusClientForTests } from "../public/utils/testutils2.js"; import { recreateSubscription } from "./utils/managementUtils.js"; import { describe, it, beforeAll, afterAll, beforeEach, afterEach, assert } from "vitest"; diff --git a/sdk/servicebus/service-bus/test/public/sendAndSchedule.spec.ts b/sdk/servicebus/service-bus/test/public/sendAndSchedule.spec.ts index 8ab707282efa..9831ed35f4d5 100644 --- a/sdk/servicebus/service-bus/test/public/sendAndSchedule.spec.ts +++ b/sdk/servicebus/service-bus/test/public/sendAndSchedule.spec.ts @@ -2,19 +2,19 @@ // Licensed under the MIT License. import Long from "long"; -import { ServiceBusMessage, delay } from "../../src/index.js"; +import type { ServiceBusMessage } from "../../src/index.js"; +import { delay } from "../../src/index.js"; import { TestClientType, TestMessage } from "./utils/testUtils.js"; -import { ServiceBusReceiver } from "../../src/index.js"; +import type { ServiceBusReceiver } from "../../src/index.js"; +import type { ServiceBusClientForTests, EntityName } from "./utils/testutils2.js"; import { - ServiceBusClientForTests, createServiceBusClientForTests, testPeekMsgsLength, getRandomTestClientTypeWithNoSessions, getRandomTestClientTypeWithSessions, - EntityName, getRandomTestClientType, } from "./utils/testutils2.js"; -import { ServiceBusSender } from "../../src/index.js"; +import type { ServiceBusSender } from "../../src/index.js"; import { StandardAbortMessage } from "@azure/core-amqp"; import { afterAll, afterEach, beforeAll, describe, expect, it } from "vitest"; import { should } from "./utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/public/serviceBusError.spec.ts b/sdk/servicebus/service-bus/test/public/serviceBusError.spec.ts index 8813336ae530..11e5d71a9d3c 100644 --- a/sdk/servicebus/service-bus/test/public/serviceBusError.spec.ts +++ b/sdk/servicebus/service-bus/test/public/serviceBusError.spec.ts @@ -1,6 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MessagingError, ServiceBusError, ServiceBusErrorCode } from "../../src/index.js"; +import type { ServiceBusErrorCode } from "../../src/index.js"; +import { MessagingError, ServiceBusError } from "../../src/index.js"; import { describe, it } from "vitest"; import { should } from "./utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/public/sessionsRequiredCleanEntityTests.spec.ts b/sdk/servicebus/service-bus/test/public/sessionsRequiredCleanEntityTests.spec.ts index 3256ad4bdc25..80db0af5b512 100644 --- a/sdk/servicebus/service-bus/test/public/sessionsRequiredCleanEntityTests.spec.ts +++ b/sdk/servicebus/service-bus/test/public/sessionsRequiredCleanEntityTests.spec.ts @@ -1,14 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { ServiceBusClientForTests } from "./utils/testutils2.js"; import { - ServiceBusClientForTests, createServiceBusClientForTests, testPeekMsgsLength, getRandomTestClientTypeWithSessions, } from "./utils/testutils2.js"; -import { ServiceBusSender } from "../../src/index.js"; -import { ServiceBusMessage, ServiceBusSessionReceiver } from "../../src/index.js"; -import { TestClientType, TestMessage } from "./utils/testUtils.js"; +import type { ServiceBusSender } from "../../src/index.js"; +import type { ServiceBusMessage, ServiceBusSessionReceiver } from "../../src/index.js"; +import type { TestClientType } from "./utils/testUtils.js"; +import { TestMessage } from "./utils/testUtils.js"; import { afterEach, describe, it } from "vitest"; import { should } from "./utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/public/sessionsTests.spec.ts b/sdk/servicebus/service-bus/test/public/sessionsTests.spec.ts index 28460b90002f..54e132f5dec5 100644 --- a/sdk/servicebus/service-bus/test/public/sessionsTests.spec.ts +++ b/sdk/servicebus/service-bus/test/public/sessionsTests.spec.ts @@ -2,25 +2,23 @@ // Licensed under the MIT License. import Long from "long"; -import { +import type { ServiceBusReceivedMessage, - delay, ProcessErrorArgs, - isServiceBusError, ServiceBusError, } from "../../src/index.js"; +import { delay, isServiceBusError } from "../../src/index.js"; import { TestClientType, TestMessage, checkWithTimeout } from "./utils/testUtils.js"; -import { ServiceBusSender } from "../../src/index.js"; -import { ServiceBusSessionReceiver } from "../../src/index.js"; +import type { ServiceBusSender } from "../../src/index.js"; +import type { ServiceBusSessionReceiver } from "../../src/index.js"; +import type { EntityName, ServiceBusClientForTests } from "./utils/testutils2.js"; import { - EntityName, - ServiceBusClientForTests, createServiceBusClientForTests, testPeekMsgsLength, getRandomTestClientTypeWithSessions, } from "./utils/testutils2.js"; -import { ServiceBusSessionReceiverImpl } from "../../src/receivers/sessionReceiver.js"; +import type { ServiceBusSessionReceiverImpl } from "../../src/receivers/sessionReceiver.js"; import { describe, it, afterEach, afterAll, vi } from "vitest"; import { expect, should } from "./utils/chai.js"; diff --git a/sdk/servicebus/service-bus/test/public/utils/abortSignalTestUtils.ts b/sdk/servicebus/service-bus/test/public/utils/abortSignalTestUtils.ts index f1a894a31def..719843f56b6d 100644 --- a/sdk/servicebus/service-bus/test/public/utils/abortSignalTestUtils.ts +++ b/sdk/servicebus/service-bus/test/public/utils/abortSignalTestUtils.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; /** * Creates an AbortSignal that signals that it's aborted after .aborted is checked a certain diff --git a/sdk/servicebus/service-bus/test/public/utils/managementUtils.ts b/sdk/servicebus/service-bus/test/public/utils/managementUtils.ts index 9670efdc809b..371c45a47955 100644 --- a/sdk/servicebus/service-bus/test/public/utils/managementUtils.ts +++ b/sdk/servicebus/service-bus/test/public/utils/managementUtils.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { delay } from "../../../src/index.js"; -import { CreateTopicOptions } from "../../../src/index.js"; -import { CreateSubscriptionOptions } from "../../../src/index.js"; +import type { CreateTopicOptions } from "../../../src/index.js"; +import type { CreateSubscriptionOptions } from "../../../src/index.js"; import { ServiceBusAdministrationClient } from "../../../src/index.js"; -import { CreateQueueOptions } from "../../../src/index.js"; +import type { CreateQueueOptions } from "../../../src/index.js"; import { createTestCredential } from "@azure-tools/test-credential"; import { EnvVarNames, getEnvVars } from "./envVarUtils.js"; import { should } from "./chai.js"; diff --git a/sdk/servicebus/service-bus/test/public/utils/testUtils.ts b/sdk/servicebus/service-bus/test/public/utils/testUtils.ts index 997b22ad9dff..1afdada7cca5 100644 --- a/sdk/servicebus/service-bus/test/public/utils/testUtils.ts +++ b/sdk/servicebus/service-bus/test/public/utils/testUtils.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ServiceBusReceivedMessage, ServiceBusMessage, delay } from "../../../src/index.js"; +import type { ServiceBusReceivedMessage, ServiceBusMessage } from "../../../src/index.js"; +import { delay } from "../../../src/index.js"; import { assert } from "./chai.js"; export class TestMessage { diff --git a/sdk/servicebus/service-bus/test/public/utils/testutils2.ts b/sdk/servicebus/service-bus/test/public/utils/testutils2.ts index bacee4dec7e3..6aa5f3226db6 100644 --- a/sdk/servicebus/service-bus/test/public/utils/testutils2.ts +++ b/sdk/servicebus/service-bus/test/public/utils/testutils2.ts @@ -3,13 +3,13 @@ // Anything we expect to be available to users should come from this import // as a simple sanity check that we've exported things properly. -import { - ServiceBusClient, +import type { ServiceBusReceiver, ServiceBusSessionReceiver, ServiceBusClientOptions, ServiceBusSender, } from "../../../src/index.js"; +import { ServiceBusClient } from "../../../src/index.js"; import { TestClientType, TestMessage } from "./testUtils.js"; import { EnvVarNames, getEnvVars } from "./envVarUtils.js"; @@ -19,8 +19,11 @@ import { recreateTopic, verifyMessageCount, } from "./managementUtils.js"; -import { ServiceBusReceivedMessage, ServiceBusMessage } from "../../../src/index.js"; -import { ServiceBusReceiverOptions, ServiceBusSessionReceiverOptions } from "../../../src/index.js"; +import type { ServiceBusReceivedMessage, ServiceBusMessage } from "../../../src/index.js"; +import type { + ServiceBusReceiverOptions, + ServiceBusSessionReceiverOptions, +} from "../../../src/index.js"; import { createTestCredential } from "@azure-tools/test-credential"; import { afterAll, afterEach, beforeAll, beforeEach } from "vitest"; import { should } from "./chai.js"; diff --git a/sdk/servicefabric/arm-servicefabric-rest/review/arm-servicefabric.api.md b/sdk/servicefabric/arm-servicefabric-rest/review/arm-servicefabric.api.md index b54c93219799..a0033d6df5f4 100644 --- a/sdk/servicefabric/arm-servicefabric-rest/review/arm-servicefabric.api.md +++ b/sdk/servicefabric/arm-servicefabric-rest/review/arm-servicefabric.api.md @@ -4,17 +4,17 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { LroEngineOptions } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { LroEngineOptions } from '@azure/core-lro'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { PollerLike } from '@azure/core-lro'; +import type { PollOperationState } from '@azure/core-lro'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface ApplicationDeltaHealthPolicy { diff --git a/sdk/servicefabric/arm-servicefabric-rest/src/clientDefinitions.ts b/sdk/servicefabric/arm-servicefabric-rest/src/clientDefinitions.ts index ef9a6aaa1378..7fe1a6cbd3d2 100644 --- a/sdk/servicefabric/arm-servicefabric-rest/src/clientDefinitions.ts +++ b/sdk/servicefabric/arm-servicefabric-rest/src/clientDefinitions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ApplicationTypeVersionsCreateOrUpdateParameters, ApplicationTypeVersionsDeleteParameters, ApplicationTypeVersionsGetParameters, @@ -33,7 +33,7 @@ import { ServicesListParameters, ServicesUpdateParameters, } from "./parameters"; -import { +import type { ApplicationTypeVersionsCreateOrUpdate202Response, ApplicationTypeVersionsCreateOrUpdatedefaultResponse, ApplicationTypeVersionsDelete202Response, @@ -102,7 +102,7 @@ import { ServicesUpdate202Response, ServicesUpdatedefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface ClustersGet { /** Get a Service Fabric cluster resource created or in the process of being created in the specified resource group. */ diff --git a/sdk/servicefabric/arm-servicefabric-rest/src/customizedApiVersionPolicy.ts b/sdk/servicefabric/arm-servicefabric-rest/src/customizedApiVersionPolicy.ts index 91f182406f02..66f6dc22bfc2 100644 --- a/sdk/servicefabric/arm-servicefabric-rest/src/customizedApiVersionPolicy.ts +++ b/sdk/servicefabric/arm-servicefabric-rest/src/customizedApiVersionPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientOptions } from "@azure-rest/core-client"; -import { PipelinePolicy } from "@azure/core-rest-pipeline"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { PipelinePolicy } from "@azure/core-rest-pipeline"; export const apiVersionPolicyName = "CustomizedApiVersionPolicy"; diff --git a/sdk/servicefabric/arm-servicefabric-rest/src/isUnexpected.ts b/sdk/servicefabric/arm-servicefabric-rest/src/isUnexpected.ts index 330a47cfa8e6..fc2e61352ded 100644 --- a/sdk/servicefabric/arm-servicefabric-rest/src/isUnexpected.ts +++ b/sdk/servicefabric/arm-servicefabric-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { ApplicationTypeVersionsCreateOrUpdate202Response, ApplicationTypeVersionsCreateOrUpdatedefaultResponse, ApplicationTypeVersionsDelete202Response, diff --git a/sdk/servicefabric/arm-servicefabric-rest/src/paginateHelper.ts b/sdk/servicefabric/arm-servicefabric-rest/src/paginateHelper.ts index e03661e44e7a..5d541b4e406d 100644 --- a/sdk/servicefabric/arm-servicefabric-rest/src/paginateHelper.ts +++ b/sdk/servicefabric/arm-servicefabric-rest/src/paginateHelper.ts @@ -1,8 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PagedAsyncIterableIterator, PagedResult, getPagedAsyncIterator } from "@azure/core-paging"; -import { Client, PathUncheckedResponse, createRestError } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/servicefabric/arm-servicefabric-rest/src/parameters.ts b/sdk/servicefabric/arm-servicefabric-rest/src/parameters.ts index d48f7d7a1c78..76af4682fc88 100644 --- a/sdk/servicefabric/arm-servicefabric-rest/src/parameters.ts +++ b/sdk/servicefabric/arm-servicefabric-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { +import type { RequestParameters } from "@azure-rest/core-client"; +import type { ApplicationResource, ApplicationResourceUpdate, ApplicationTypeResource, diff --git a/sdk/servicefabric/arm-servicefabric-rest/src/pollingHelper.ts b/sdk/servicefabric/arm-servicefabric-rest/src/pollingHelper.ts index a8903590694f..d25daede0b1c 100644 --- a/sdk/servicefabric/arm-servicefabric-rest/src/pollingHelper.ts +++ b/sdk/servicefabric/arm-servicefabric-rest/src/pollingHelper.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { LongRunningOperation, - LroEngine, LroEngineOptions, LroResponse, PollOperationState, PollerLike, } from "@azure/core-lro"; +import { LroEngine } from "@azure/core-lro"; /** * Helper function that builds a Poller object to help polling a long running operation. diff --git a/sdk/servicefabric/arm-servicefabric-rest/src/responses.ts b/sdk/servicefabric/arm-servicefabric-rest/src/responses.ts index 9daf70643147..47c76472f8d8 100644 --- a/sdk/servicefabric/arm-servicefabric-rest/src/responses.ts +++ b/sdk/servicefabric/arm-servicefabric-rest/src/responses.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpResponse } from "@azure-rest/core-client"; -import { +import type { HttpResponse } from "@azure-rest/core-client"; +import type { ApplicationResourceListOutput, ApplicationResourceOutput, ApplicationTypeResourceListOutput, diff --git a/sdk/servicefabric/arm-servicefabric-rest/src/serviceFabricClient.ts b/sdk/servicefabric/arm-servicefabric-rest/src/serviceFabricClient.ts index 07ce2eaacae5..7f0f0ac1ae4c 100644 --- a/sdk/servicefabric/arm-servicefabric-rest/src/serviceFabricClient.ts +++ b/sdk/servicefabric/arm-servicefabric-rest/src/serviceFabricClient.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientOptions, getClient } from "@azure-rest/core-client"; -import { TokenCredential } from "@azure/core-auth"; -import { ServiceFabricClient } from "./clientDefinitions"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import type { ServiceFabricClient } from "./clientDefinitions"; import { customizedApiVersionPolicy } from "./customizedApiVersionPolicy"; export default function createClient( diff --git a/sdk/servicefabric/arm-servicefabric-rest/test/public/servicefabric.spec.ts b/sdk/servicefabric/arm-servicefabric-rest/test/public/servicefabric.spec.ts index 19ca786dd380..e126a801bb73 100644 --- a/sdk/servicefabric/arm-servicefabric-rest/test/public/servicefabric.spec.ts +++ b/sdk/servicefabric/arm-servicefabric-rest/test/public/servicefabric.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, env, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env, isPlaybackMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; import { createClient, createRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; -import { +import type { Context } from "mocha"; +import type { ApplicationTypeResourceListOutput, ApplicationTypeResourceOutput, ApplicationTypesCreateOrUpdateParameters, @@ -14,8 +15,8 @@ import { ClustersCreateOrUpdateParameters, ClustersUpdateParameters, ServiceFabricClient, - getLongRunningPoller, } from "../../src/index"; +import { getLongRunningPoller } from "../../src/index"; export const testPollingOptions = { intervalInMs: isPlaybackMode() ? 0 : undefined, diff --git a/sdk/servicefabric/arm-servicefabric-rest/test/public/utils/recordedClient.ts b/sdk/servicefabric/arm-servicefabric-rest/test/public/utils/recordedClient.ts index 73d2dfaebb99..c3a6119ba9c9 100644 --- a/sdk/servicefabric/arm-servicefabric-rest/test/public/utils/recordedClient.ts +++ b/sdk/servicefabric/arm-servicefabric-rest/test/public/utils/recordedClient.ts @@ -1,11 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; -import { ClientOptions } from "@azure-rest/core-client"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder } from "@azure-tools/test-recorder"; +import type { ClientOptions } from "@azure-rest/core-client"; import { createTestCredential } from "@azure-tools/test-credential"; -import ServiceFabricManagementClient, { ServiceFabricClient } from "../../../src/index"; +import type { ServiceFabricClient } from "../../../src/index"; +import ServiceFabricManagementClient from "../../../src/index"; import "./env"; const envSetupForPlayback: Record = { diff --git a/sdk/storage/storage-blob-changefeed/review/storage-blob-changefeed.api.md b/sdk/storage/storage-blob-changefeed/review/storage-blob-changefeed.api.md index b98e77c9a48f..c6f870b7c30b 100644 --- a/sdk/storage/storage-blob-changefeed/review/storage-blob-changefeed.api.md +++ b/sdk/storage/storage-blob-changefeed/review/storage-blob-changefeed.api.md @@ -4,14 +4,14 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; -import { AnonymousCredential } from '@azure/storage-blob'; -import { CommonOptions } from '@azure/storage-blob'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { AbortSignalLike } from '@azure/abort-controller'; +import type { AnonymousCredential } from '@azure/storage-blob'; +import type { CommonOptions } from '@azure/storage-blob'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; import { Pipeline } from '@azure/storage-blob'; -import { StoragePipelineOptions } from '@azure/storage-blob'; -import { StorageSharedKeyCredential } from '@azure/storage-blob'; -import { TokenCredential } from '@azure/core-auth'; +import type { StoragePipelineOptions } from '@azure/storage-blob'; +import type { StorageSharedKeyCredential } from '@azure/storage-blob'; +import type { TokenCredential } from '@azure/core-auth'; // @public export type AccessTier = "P4" | "P6" | "P10" | "P15" | "P20" | "P30" | "P40" | "P50" | "P60" | "P70" | "P80" | "Hot" | "Cool" | "Archive"; diff --git a/sdk/storage/storage-blob-changefeed/src/AvroReaderFactory.ts b/sdk/storage/storage-blob-changefeed/src/AvroReaderFactory.ts index 9964b681adaf..121848dd2e90 100644 --- a/sdk/storage/storage-blob-changefeed/src/AvroReaderFactory.ts +++ b/sdk/storage/storage-blob-changefeed/src/AvroReaderFactory.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AvroReadable, AvroReader } from "../../storage-internal-avro/src"; +import type { AvroReadable } from "../../storage-internal-avro/src"; +import { AvroReader } from "../../storage-internal-avro/src"; /** * Creates AvroReaders. Allows us to inject mock AvroReaders in the Chunk unit tests. diff --git a/sdk/storage/storage-blob-changefeed/src/BlobChangeFeedClient.ts b/sdk/storage/storage-blob-changefeed/src/BlobChangeFeedClient.ts index d88f63722158..4a3f259df074 100644 --- a/sdk/storage/storage-blob-changefeed/src/BlobChangeFeedClient.ts +++ b/sdk/storage/storage-blob-changefeed/src/BlobChangeFeedClient.ts @@ -1,20 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - BlobServiceClient, +import type { StoragePipelineOptions, StorageSharedKeyCredential, AnonymousCredential, - Pipeline, } from "@azure/storage-blob"; -import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; -import { BlobChangeFeedEvent } from "./models/BlobChangeFeedEvent"; +import { BlobServiceClient, Pipeline } from "@azure/storage-blob"; +import type { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import type { BlobChangeFeedEvent } from "./models/BlobChangeFeedEvent"; import { ChangeFeedFactory } from "./ChangeFeedFactory"; -import { ChangeFeed } from "./ChangeFeed"; +import type { ChangeFeed } from "./ChangeFeed"; import { CHANGE_FEED_MAX_PAGE_SIZE, SDK_VERSION } from "./utils/constants"; -import { BlobChangeFeedListChangesOptions } from "./models/models"; -import { TokenCredential } from "@azure/core-auth"; +import type { BlobChangeFeedListChangesOptions } from "./models/models"; +import type { TokenCredential } from "@azure/core-auth"; /** * Contains paged response data for the {@link BlobChangeFeedClient.listChanges} operation. diff --git a/sdk/storage/storage-blob-changefeed/src/ChangeFeed.ts b/sdk/storage/storage-blob-changefeed/src/ChangeFeed.ts index e128c5b7041b..3387dc29facb 100644 --- a/sdk/storage/storage-blob-changefeed/src/ChangeFeed.ts +++ b/sdk/storage/storage-blob-changefeed/src/ChangeFeed.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ContainerClient, CommonOptions } from "@azure/storage-blob"; -import { Segment } from "./Segment"; -import { SegmentFactory } from "./SegmentFactory"; -import { BlobChangeFeedEvent } from "./models/BlobChangeFeedEvent"; -import { ChangeFeedCursor } from "./models/ChangeFeedCursor"; +import type { ContainerClient, CommonOptions } from "@azure/storage-blob"; +import type { Segment } from "./Segment"; +import type { SegmentFactory } from "./SegmentFactory"; +import type { BlobChangeFeedEvent } from "./models/BlobChangeFeedEvent"; +import type { ChangeFeedCursor } from "./models/ChangeFeedCursor"; import { getSegmentsInYear, minDate, getHost } from "./utils/utils.common"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { tracingClient } from "./utils/tracing"; /** diff --git a/sdk/storage/storage-blob-changefeed/src/ChangeFeedFactory.ts b/sdk/storage/storage-blob-changefeed/src/ChangeFeedFactory.ts index d9ec4ce14167..858958147570 100644 --- a/sdk/storage/storage-blob-changefeed/src/ChangeFeedFactory.ts +++ b/sdk/storage/storage-blob-changefeed/src/ChangeFeedFactory.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { BlobServiceClient, ContainerClient } from "@azure/storage-blob"; +import type { BlobServiceClient, ContainerClient } from "@azure/storage-blob"; import { ChangeFeed } from "./ChangeFeed"; -import { ChangeFeedCursor } from "./models/ChangeFeedCursor"; +import type { ChangeFeedCursor } from "./models/ChangeFeedCursor"; import { CHANGE_FEED_CONTAINER_NAME, CHANGE_FEED_META_SEGMENT_PATH } from "./utils/constants"; import { ceilToNearestHour, @@ -19,8 +19,8 @@ import { SegmentFactory } from "./SegmentFactory"; import { ShardFactory } from "./ShardFactory"; import { ChunkFactory } from "./ChunkFactory"; import { AvroReaderFactory } from "./AvroReaderFactory"; -import { Segment } from "./Segment"; -import { BlobChangeFeedListChangesOptions } from "./models/models"; +import type { Segment } from "./Segment"; +import type { BlobChangeFeedListChangesOptions } from "./models/models"; import { tracingClient } from "./utils/tracing"; import { LazyLoadingBlobStreamFactory } from "./LazyLoadingBlobStreamFactory"; diff --git a/sdk/storage/storage-blob-changefeed/src/Chunk.ts b/sdk/storage/storage-blob-changefeed/src/Chunk.ts index b4f37b3be3be..065299402d63 100644 --- a/sdk/storage/storage-blob-changefeed/src/Chunk.ts +++ b/sdk/storage/storage-blob-changefeed/src/Chunk.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AvroReader } from "../../storage-internal-avro/src"; -import { BlobChangeFeedEvent } from "./models/BlobChangeFeedEvent"; -import { CommonOptions } from "@azure/storage-blob"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { AvroParseOptions } from "../../storage-internal-avro/src/AvroReader"; +import type { AvroReader } from "../../storage-internal-avro/src"; +import type { BlobChangeFeedEvent } from "./models/BlobChangeFeedEvent"; +import type { CommonOptions } from "@azure/storage-blob"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { AvroParseOptions } from "../../storage-internal-avro/src/AvroReader"; import { rawEventToBlobChangeFeedEvent } from "./utils/utils.common"; /** diff --git a/sdk/storage/storage-blob-changefeed/src/ChunkFactory.ts b/sdk/storage/storage-blob-changefeed/src/ChunkFactory.ts index ea1eb3017d07..0a9140477649 100644 --- a/sdk/storage/storage-blob-changefeed/src/ChunkFactory.ts +++ b/sdk/storage/storage-blob-changefeed/src/ChunkFactory.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AvroReaderFactory } from "./AvroReaderFactory"; -import { ContainerClient, CommonOptions } from "@azure/storage-blob"; +import type { AvroReaderFactory } from "./AvroReaderFactory"; +import type { ContainerClient, CommonOptions } from "@azure/storage-blob"; import { Chunk } from "./Chunk"; -import { AvroReader } from "../../storage-internal-avro/src"; +import type { AvroReader } from "../../storage-internal-avro/src"; import { streamToAvroReadable } from "./utils/utils.node"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { LazyLoadingBlobStreamFactory } from "./LazyLoadingBlobStreamFactory"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { LazyLoadingBlobStreamFactory } from "./LazyLoadingBlobStreamFactory"; import { CHANGE_FEED_CHUNK_BLOCK_DOWNLOAD_SIZE } from "./utils/constants"; /** diff --git a/sdk/storage/storage-blob-changefeed/src/LazyLoadingBlobStream.ts b/sdk/storage/storage-blob-changefeed/src/LazyLoadingBlobStream.ts index 8c9647ae728e..bba127a8a575 100644 --- a/sdk/storage/storage-blob-changefeed/src/LazyLoadingBlobStream.ts +++ b/sdk/storage/storage-blob-changefeed/src/LazyLoadingBlobStream.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Readable, ReadableOptions } from "stream"; -import { BlobClient, CommonOptions } from "@azure/storage-blob"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { ReadableOptions } from "stream"; +import { Readable } from "stream"; +import type { BlobClient, CommonOptions } from "@azure/storage-blob"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { tracingClient } from "./utils/tracing"; /** diff --git a/sdk/storage/storage-blob-changefeed/src/LazyLoadingBlobStreamFactory.ts b/sdk/storage/storage-blob-changefeed/src/LazyLoadingBlobStreamFactory.ts index 2a57a51cbffc..d2ff60ca7de6 100644 --- a/sdk/storage/storage-blob-changefeed/src/LazyLoadingBlobStreamFactory.ts +++ b/sdk/storage/storage-blob-changefeed/src/LazyLoadingBlobStreamFactory.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { BlobClient } from "@azure/storage-blob"; -import { LazyLoadingBlobStreamOptions, LazyLoadingBlobStream } from "./LazyLoadingBlobStream"; +import type { BlobClient } from "@azure/storage-blob"; +import type { LazyLoadingBlobStreamOptions } from "./LazyLoadingBlobStream"; +import { LazyLoadingBlobStream } from "./LazyLoadingBlobStream"; export class LazyLoadingBlobStreamFactory { public create( diff --git a/sdk/storage/storage-blob-changefeed/src/Segment.ts b/sdk/storage/storage-blob-changefeed/src/Segment.ts index aee4f058dc0f..e30413e81120 100644 --- a/sdk/storage/storage-blob-changefeed/src/Segment.ts +++ b/sdk/storage/storage-blob-changefeed/src/Segment.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { BlobChangeFeedEvent } from "./models/BlobChangeFeedEvent"; -import { Shard } from "./Shard"; -import { SegmentCursor, ShardCursor } from "./models/ChangeFeedCursor"; -import { CommonOptions } from "@azure/storage-blob"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { BlobChangeFeedEvent } from "./models/BlobChangeFeedEvent"; +import type { Shard } from "./Shard"; +import type { SegmentCursor, ShardCursor } from "./models/ChangeFeedCursor"; +import type { CommonOptions } from "@azure/storage-blob"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { tracingClient } from "./utils/tracing"; /** diff --git a/sdk/storage/storage-blob-changefeed/src/SegmentFactory.ts b/sdk/storage/storage-blob-changefeed/src/SegmentFactory.ts index ddb2ef0912cc..f3860fd30380 100644 --- a/sdk/storage/storage-blob-changefeed/src/SegmentFactory.ts +++ b/sdk/storage/storage-blob-changefeed/src/SegmentFactory.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ShardFactory } from "./ShardFactory"; -import { ContainerClient, CommonOptions } from "@azure/storage-blob"; +import type { ShardFactory } from "./ShardFactory"; +import type { ContainerClient, CommonOptions } from "@azure/storage-blob"; import { CHANGE_FEED_CONTAINER_NAME } from "./utils/constants"; -import { Shard } from "./Shard"; +import type { Shard } from "./Shard"; import { Segment } from "./Segment"; -import { SegmentCursor } from "./models/ChangeFeedCursor"; +import type { SegmentCursor } from "./models/ChangeFeedCursor"; import { bodyToString } from "./utils/utils.node"; import { parseDateFromSegmentPath } from "./utils/utils.common"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { tracingClient } from "./utils/tracing"; export interface SegmentManifest { diff --git a/sdk/storage/storage-blob-changefeed/src/Shard.ts b/sdk/storage/storage-blob-changefeed/src/Shard.ts index e27cf2b522d7..43db1c018abe 100644 --- a/sdk/storage/storage-blob-changefeed/src/Shard.ts +++ b/sdk/storage/storage-blob-changefeed/src/Shard.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ContainerClient, CommonOptions } from "@azure/storage-blob"; -import { ChunkFactory } from "./ChunkFactory"; -import { Chunk } from "./Chunk"; -import { BlobChangeFeedEvent } from "./models/BlobChangeFeedEvent"; -import { ShardCursor } from "./models/ChangeFeedCursor"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { ContainerClient, CommonOptions } from "@azure/storage-blob"; +import type { ChunkFactory } from "./ChunkFactory"; +import type { Chunk } from "./Chunk"; +import type { BlobChangeFeedEvent } from "./models/BlobChangeFeedEvent"; +import type { ShardCursor } from "./models/ChangeFeedCursor"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { tracingClient } from "./utils/tracing"; /** diff --git a/sdk/storage/storage-blob-changefeed/src/ShardFactory.ts b/sdk/storage/storage-blob-changefeed/src/ShardFactory.ts index c1f1708d6460..c06c4f7e906c 100644 --- a/sdk/storage/storage-blob-changefeed/src/ShardFactory.ts +++ b/sdk/storage/storage-blob-changefeed/src/ShardFactory.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ChunkFactory } from "./ChunkFactory"; -import { ShardCursor } from "./models/ChangeFeedCursor"; +import type { ChunkFactory } from "./ChunkFactory"; +import type { ShardCursor } from "./models/ChangeFeedCursor"; import { Shard } from "./Shard"; -import { ContainerClient, CommonOptions } from "@azure/storage-blob"; -import { Chunk } from "./Chunk"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { ContainerClient, CommonOptions } from "@azure/storage-blob"; +import type { Chunk } from "./Chunk"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { tracingClient } from "./utils/tracing"; /** diff --git a/sdk/storage/storage-blob-changefeed/src/models/models.ts b/sdk/storage/storage-blob-changefeed/src/models/models.ts index f74bad95cbf4..1d739bc95566 100644 --- a/sdk/storage/storage-blob-changefeed/src/models/models.ts +++ b/sdk/storage/storage-blob-changefeed/src/models/models.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonOptions } from "@azure/storage-blob"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { CommonOptions } from "@azure/storage-blob"; +import type { AbortSignalLike } from "@azure/abort-controller"; /** * Options to configure {@link BlobChangeFeedClient.listChanges} operation. diff --git a/sdk/storage/storage-blob-changefeed/src/utils/utils.common.ts b/sdk/storage/storage-blob-changefeed/src/utils/utils.common.ts index d06f4fedf3a7..873756ea83b0 100644 --- a/sdk/storage/storage-blob-changefeed/src/utils/utils.common.ts +++ b/sdk/storage/storage-blob-changefeed/src/utils/utils.common.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { ContainerClient, CommonOptions } from "@azure/storage-blob"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { ContainerClient, CommonOptions } from "@azure/storage-blob"; import { CHANGE_FEED_SEGMENT_PREFIX, CHANGE_FEED_INITIALIZATION_SEGMENT } from "./constants"; import { tracingClient } from "./tracing"; -import { BlobChangeFeedEvent, UpdatedBlobProperties } from "../models/BlobChangeFeedEvent"; +import type { BlobChangeFeedEvent, UpdatedBlobProperties } from "../models/BlobChangeFeedEvent"; const millisecondsInAnHour = 60 * 60 * 1000; export function ceilToNearestHour(date: Date | undefined): Date | undefined { diff --git a/sdk/storage/storage-blob-changefeed/src/utils/utils.node.ts b/sdk/storage/storage-blob-changefeed/src/utils/utils.node.ts index 4076cd48ca66..696a5785117a 100644 --- a/sdk/storage/storage-blob-changefeed/src/utils/utils.node.ts +++ b/sdk/storage/storage-blob-changefeed/src/utils/utils.node.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AvroReadable, AvroReadableFromStream } from "../../../storage-internal-avro/src"; +import type { AvroReadable } from "../../../storage-internal-avro/src"; +import { AvroReadableFromStream } from "../../../storage-internal-avro/src"; /** * Read body from downloading operation methods to string. diff --git a/sdk/storage/storage-blob-changefeed/test/blobchangefeedclient.spec.ts b/sdk/storage/storage-blob-changefeed/test/blobchangefeedclient.spec.ts index 651a77aee783..73e226c30467 100644 --- a/sdk/storage/storage-blob-changefeed/test/blobchangefeedclient.spec.ts +++ b/sdk/storage/storage-blob-changefeed/test/blobchangefeedclient.spec.ts @@ -3,16 +3,18 @@ import { isPlaybackMode, Recorder, env } from "@azure-tools/test-recorder"; import { recorderEnvSetup, getBlobChangeFeedClient, streamToString, uriSanitizers } from "./utils"; -import { BlobChangeFeedClient, BlobChangeFeedEvent, BlobChangeFeedEventPage } from "../src"; +import type { BlobChangeFeedEvent, BlobChangeFeedEventPage } from "../src"; +import { BlobChangeFeedClient } from "../src"; import { assert } from "@azure-tools/test-utils"; -import { BlobServiceClient, RequestPolicy } from "@azure/storage-blob"; +import type { BlobServiceClient, RequestPolicy } from "@azure/storage-blob"; import { SDK_VERSION } from "../src/utils/constants"; import * as fs from "fs"; import * as path from "path"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { rawEventToBlobChangeFeedEvent } from "../src/utils/utils.common"; -import { createHttpHeaders, RestError } from "@azure/core-rest-pipeline"; +import type { RestError } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; import { toHttpHeadersLike } from "@azure/core-http-compat"; const timeoutForLargeFileUploadingTest = 20 * 60 * 1000; diff --git a/sdk/storage/storage-blob-changefeed/test/changefeed.spec.ts b/sdk/storage/storage-blob-changefeed/test/changefeed.spec.ts index d41c9dcee87e..1e38d529ba44 100644 --- a/sdk/storage/storage-blob-changefeed/test/changefeed.spec.ts +++ b/sdk/storage/storage-blob-changefeed/test/changefeed.spec.ts @@ -10,7 +10,7 @@ import { SegmentFactory } from "../src/SegmentFactory"; import { Segment } from "../src/Segment"; import { ChangeFeedFactory } from "../src/ChangeFeedFactory"; import { getHost } from "../src/utils/utils.common"; -import { BlobChangeFeedEvent } from "../src"; +import type { BlobChangeFeedEvent } from "../src"; describe("Change Feed", async () => { const manifestFilePath = path.join("test", "resources", "ChangeFeedManifest.json"); diff --git a/sdk/storage/storage-blob-changefeed/test/chunk.spec.ts b/sdk/storage/storage-blob-changefeed/test/chunk.spec.ts index eeb7638486dc..908b76e42632 100644 --- a/sdk/storage/storage-blob-changefeed/test/chunk.spec.ts +++ b/sdk/storage/storage-blob-changefeed/test/chunk.spec.ts @@ -5,7 +5,7 @@ import { assert } from "chai"; import { Chunk } from "../src/Chunk"; import * as sinon from "sinon"; import { AvroReader } from "../../storage-internal-avro/src"; -import { BlobChangeFeedEvent } from "../src"; +import type { BlobChangeFeedEvent } from "../src"; class FakeAvroReader { constructor( diff --git a/sdk/storage/storage-blob-changefeed/test/segment.spec.ts b/sdk/storage/storage-blob-changefeed/test/segment.spec.ts index 69a05e638285..b5aaf28d0f23 100644 --- a/sdk/storage/storage-blob-changefeed/test/segment.spec.ts +++ b/sdk/storage/storage-blob-changefeed/test/segment.spec.ts @@ -9,7 +9,7 @@ import { ContainerClient, BlobClient } from "@azure/storage-blob"; import { Shard } from "../src/Shard"; import { SegmentFactory } from "../src/SegmentFactory"; import { ShardFactory } from "../src/ShardFactory"; -import { BlobChangeFeedEvent } from "../src"; +import type { BlobChangeFeedEvent } from "../src"; describe("Segment", async () => { const manifestPath = "idx/segments/2020/03/25/0200/meta.json"; diff --git a/sdk/storage/storage-blob-changefeed/test/shard.spec.ts b/sdk/storage/storage-blob-changefeed/test/shard.spec.ts index 2df146849d3a..20064643b553 100644 --- a/sdk/storage/storage-blob-changefeed/test/shard.spec.ts +++ b/sdk/storage/storage-blob-changefeed/test/shard.spec.ts @@ -6,9 +6,9 @@ import * as sinon from "sinon"; import { ShardFactory } from "../src/ShardFactory"; import { ContainerClient } from "@azure/storage-blob"; import { ChunkFactory } from "../src/ChunkFactory"; -import { ShardCursor } from "../src/models/ChangeFeedCursor"; +import type { ShardCursor } from "../src/models/ChangeFeedCursor"; import { Chunk } from "../src/Chunk"; -import { BlobChangeFeedEvent } from "../src"; +import type { BlobChangeFeedEvent } from "../src"; describe("Shard", async () => { let chunkFactoryStub: any; diff --git a/sdk/storage/storage-blob-changefeed/test/utils/index.ts b/sdk/storage/storage-blob-changefeed/test/utils/index.ts index bb079fee3a4a..f84241782bac 100644 --- a/sdk/storage/storage-blob-changefeed/test/utils/index.ts +++ b/sdk/storage/storage-blob-changefeed/test/utils/index.ts @@ -2,14 +2,12 @@ // Licensed under the MIT License. import { configureBlobStorageClient, SimpleTokenCredential } from "./testutils.common"; -import { - StorageSharedKeyCredential, - BlobServiceClient, - StoragePipelineOptions, -} from "@azure/storage-blob"; +import type { StoragePipelineOptions } from "@azure/storage-blob"; +import { StorageSharedKeyCredential, BlobServiceClient } from "@azure/storage-blob"; import { BlobChangeFeedClient } from "../../src"; -import { TokenCredential } from "@azure/core-auth"; -import { env, Recorder } from "@azure-tools/test-recorder"; +import type { TokenCredential } from "@azure/core-auth"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; export * from "./testutils.common"; diff --git a/sdk/storage/storage-blob-changefeed/test/utils/testutils.common.ts b/sdk/storage/storage-blob-changefeed/test/utils/testutils.common.ts index a597f84cc02d..05bfddbb8ffb 100644 --- a/sdk/storage/storage-blob-changefeed/test/utils/testutils.common.ts +++ b/sdk/storage/storage-blob-changefeed/test/utils/testutils.common.ts @@ -1,12 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-auth"; -import { isPlaybackMode, Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; -import { Readable } from "stream"; -import { FindReplaceSanitizer } from "@azure-tools/test-recorder/types/src/utils/utils"; -import { Pipeline } from "@azure/core-rest-pipeline"; -import { BlobChangeFeedClient } from "../../src/BlobChangeFeedClient"; +import type { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-auth"; +import type { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Readable } from "stream"; +import type { FindReplaceSanitizer } from "@azure-tools/test-recorder/types/src/utils/utils"; +import type { Pipeline } from "@azure/core-rest-pipeline"; +import type { BlobChangeFeedClient } from "../../src/BlobChangeFeedClient"; export const testPollerProperties = { intervalInMs: isPlaybackMode() ? 0 : undefined, diff --git a/sdk/storage/storage-blob/review/storage-blob.api.md b/sdk/storage/storage-blob/review/storage-blob.api.md index 3ec033365146..c57ec1e9ddb6 100644 --- a/sdk/storage/storage-blob/review/storage-blob.api.md +++ b/sdk/storage/storage-blob/review/storage-blob.api.md @@ -4,30 +4,30 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; +import type { AbortSignalLike } from '@azure/abort-controller'; import { AzureLogger } from '@azure/logger'; -import { CancelOnProgress } from '@azure/core-lro'; +import type { CancelOnProgress } from '@azure/core-lro'; import * as coreClient from '@azure/core-client'; import * as coreHttpCompat from '@azure/core-http-compat'; import * as coreRestPipeline from '@azure/core-rest-pipeline'; import { HttpHeadersLike as HttpHeaders } from '@azure/core-http-compat'; import { CompatResponse as HttpOperationResponse } from '@azure/core-http-compat'; -import { HttpPipelineLogLevel } from '@azure/core-http-compat'; +import type { HttpPipelineLogLevel } from '@azure/core-http-compat'; import { RequestBodyType as HttpRequestBody } from '@azure/core-rest-pipeline'; -import { KeepAliveOptions } from '@azure/core-http-compat'; -import { OperationTracingOptions } from '@azure/core-tracing'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { KeepAliveOptions } from '@azure/core-http-compat'; +import type { OperationTracingOptions } from '@azure/core-tracing'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; import { PollerLike } from '@azure/core-lro'; import { PollOperationState } from '@azure/core-lro'; -import { ProxySettings } from '@azure/core-rest-pipeline'; -import { Readable } from 'stream'; +import type { ProxySettings } from '@azure/core-rest-pipeline'; +import type { Readable } from 'stream'; import { RequestPolicy } from '@azure/core-http-compat'; import { RequestPolicyFactory } from '@azure/core-http-compat'; import { RequestPolicyOptionsLike as RequestPolicyOptions } from '@azure/core-http-compat'; import { RestError } from '@azure/core-rest-pipeline'; -import { TokenCredential } from '@azure/core-auth'; -import { TransferProgressEvent } from '@azure/core-rest-pipeline'; -import { UserAgentPolicyOptions } from '@azure/core-rest-pipeline'; +import type { TokenCredential } from '@azure/core-auth'; +import type { TransferProgressEvent } from '@azure/core-rest-pipeline'; +import type { UserAgentPolicyOptions } from '@azure/core-rest-pipeline'; import { WebResourceLike as WebResource } from '@azure/core-http-compat'; // @public diff --git a/sdk/storage/storage-blob/src/BatchResponse.ts b/sdk/storage/storage-blob/src/BatchResponse.ts index 35960f037bab..f2d685c0d253 100644 --- a/sdk/storage/storage-blob/src/BatchResponse.ts +++ b/sdk/storage/storage-blob/src/BatchResponse.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { BatchSubRequest } from "./BlobBatch"; -import { HttpHeadersLike } from "@azure/core-http-compat"; +import type { BatchSubRequest } from "./BlobBatch"; +import type { HttpHeadersLike } from "@azure/core-http-compat"; /** * The response data associated with a single request within a batch operation. diff --git a/sdk/storage/storage-blob/src/BatchResponseParser.ts b/sdk/storage/storage-blob/src/BatchResponseParser.ts index 850497d38358..06a75ffe03b2 100644 --- a/sdk/storage/storage-blob/src/BatchResponseParser.ts +++ b/sdk/storage/storage-blob/src/BatchResponseParser.ts @@ -4,7 +4,7 @@ import { createHttpHeaders } from "@azure/core-rest-pipeline"; import { toHttpHeadersLike } from "@azure/core-http-compat"; -import { ServiceSubmitBatchResponseModel } from "./generatedModels"; +import type { ServiceSubmitBatchResponseModel } from "./generatedModels"; import { HTTP_VERSION_1_1, HTTP_LINE_ENDING, @@ -12,8 +12,8 @@ import { HTTPURLConnection, } from "./utils/constants"; import { getBodyAsText } from "./BatchUtils"; -import { BatchSubRequest } from "./BlobBatch"; -import { BatchSubResponse, ParsedBatchResponse } from "./BatchResponse"; +import type { BatchSubRequest } from "./BlobBatch"; +import type { BatchSubResponse, ParsedBatchResponse } from "./BatchResponse"; import { logger } from "./log"; const HTTP_HEADER_DELIMITER = ": "; diff --git a/sdk/storage/storage-blob/src/BatchUtils.browser.ts b/sdk/storage/storage-blob/src/BatchUtils.browser.ts index 361c51bf012d..3277bf0add65 100644 --- a/sdk/storage/storage-blob/src/BatchUtils.browser.ts +++ b/sdk/storage/storage-blob/src/BatchUtils.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ServiceSubmitBatchResponseModel } from "./generatedModels"; +import type { ServiceSubmitBatchResponseModel } from "./generatedModels"; import { blobToString } from "./utils/utils.browser"; export async function getBodyAsText( diff --git a/sdk/storage/storage-blob/src/BatchUtils.ts b/sdk/storage/storage-blob/src/BatchUtils.ts index f493e5948d18..50c99fd1c7ed 100644 --- a/sdk/storage/storage-blob/src/BatchUtils.ts +++ b/sdk/storage/storage-blob/src/BatchUtils.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ServiceSubmitBatchResponseModel } from "./generatedModels"; +import type { ServiceSubmitBatchResponseModel } from "./generatedModels"; import { streamToBuffer2 } from "./utils/utils.node"; import { BATCH_MAX_PAYLOAD_IN_BYTES } from "./utils/constants"; diff --git a/sdk/storage/storage-blob/src/BlobBatch.ts b/sdk/storage/storage-blob/src/BlobBatch.ts index 2c10bef962ff..b4ec697aea61 100644 --- a/sdk/storage/storage-blob/src/BlobBatch.ts +++ b/sdk/storage/storage-blob/src/BlobBatch.ts @@ -2,20 +2,24 @@ // Licensed under the MIT License. import { randomUUID } from "@azure/core-util"; -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { - bearerTokenAuthenticationPolicy, - createEmptyPipeline, - createHttpHeaders, +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { PipelinePolicy, PipelineRequest, PipelineResponse, SendRequest, } from "@azure/core-rest-pipeline"; +import { + bearerTokenAuthenticationPolicy, + createEmptyPipeline, + createHttpHeaders, +} from "@azure/core-rest-pipeline"; import { isNode } from "@azure/core-util"; import { AnonymousCredential } from "./credentials/AnonymousCredential"; -import { BlobClient, BlobDeleteOptions, BlobSetTierOptions } from "./Clients"; -import { AccessTier } from "./generatedModels"; +import type { BlobDeleteOptions, BlobSetTierOptions } from "./Clients"; +import { BlobClient } from "./Clients"; +import type { AccessTier } from "./generatedModels"; import { Mutex } from "./utils/Mutex"; import { Pipeline } from "./Pipeline"; import { getURLPath, getURLPathAndQuery, iEqual } from "./utils/utils.common"; diff --git a/sdk/storage/storage-blob/src/BlobBatchClient.ts b/sdk/storage/storage-blob/src/BlobBatchClient.ts index 7fc5c6b0ac02..7eded2a50c79 100644 --- a/sdk/storage/storage-blob/src/BlobBatchClient.ts +++ b/sdk/storage/storage-blob/src/BlobBatchClient.ts @@ -1,31 +1,27 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AccessTier, ServiceSubmitBatchHeaders, ServiceSubmitBatchOptionalParamsModel, ServiceSubmitBatchResponseModel, } from "./generatedModels"; -import { ParsedBatchResponse } from "./BatchResponse"; +import type { ParsedBatchResponse } from "./BatchResponse"; import { BatchResponseParser } from "./BatchResponseParser"; import { utf8ByteLength } from "./BatchUtils"; import { BlobBatch } from "./BlobBatch"; import { tracingClient } from "./utils/tracing"; -import { TokenCredential } from "@azure/core-auth"; -import { Service, Container } from "./generated/src/operationsInterfaces"; -import { StorageSharedKeyCredential } from "./credentials/StorageSharedKeyCredential"; +import type { TokenCredential } from "@azure/core-auth"; +import type { Service, Container } from "./generated/src/operationsInterfaces"; +import type { StorageSharedKeyCredential } from "./credentials/StorageSharedKeyCredential"; import { AnonymousCredential } from "./credentials/AnonymousCredential"; -import { BlobDeleteOptions, BlobClient, BlobSetTierOptions } from "./Clients"; +import type { BlobDeleteOptions, BlobClient, BlobSetTierOptions } from "./Clients"; import { StorageContextClient } from "./StorageContextClient"; -import { - PipelineLike, - StoragePipelineOptions, - newPipeline, - isPipelineLike, - getCoreClientOptions, -} from "./Pipeline"; -import { assertResponse, getURLPath, WithResponse } from "./utils/utils.common"; +import type { PipelineLike, StoragePipelineOptions } from "./Pipeline"; +import { newPipeline, isPipelineLike, getCoreClientOptions } from "./Pipeline"; +import type { WithResponse } from "./utils/utils.common"; +import { assertResponse, getURLPath } from "./utils/utils.common"; /** * Options to configure the Service - Submit Batch Optional Params. diff --git a/sdk/storage/storage-blob/src/BlobDownloadResponse.ts b/sdk/storage/storage-blob/src/BlobDownloadResponse.ts index 18290d732b6b..66b6bb34720e 100644 --- a/sdk/storage/storage-blob/src/BlobDownloadResponse.ts +++ b/sdk/storage/storage-blob/src/BlobDownloadResponse.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { isNode } from "@azure/core-util"; -import { BlobImmutabilityPolicyMode } from "./generatedModels"; +import type { BlobImmutabilityPolicyMode } from "./generatedModels"; -import { +import type { BlobDownloadHeaders, BlobType, CopyStatusType, @@ -11,13 +11,13 @@ import { LeaseStateType, LeaseStatusType, } from "./generatedModels"; -import { BlobDownloadResponseParsed, Metadata, ObjectReplicationPolicy } from "./models"; -import { +import type { BlobDownloadResponseParsed, Metadata, ObjectReplicationPolicy } from "./models"; +import type { ReadableStreamGetter, - RetriableReadableStream, RetriableReadableStreamOptions, } from "./utils/RetriableReadableStream"; -import { ResponseWithHeaders } from "./utils/utils.common"; +import { RetriableReadableStream } from "./utils/RetriableReadableStream"; +import type { ResponseWithHeaders } from "./utils/utils.common"; /** * ONLY AVAILABLE IN NODE.JS RUNTIME. diff --git a/sdk/storage/storage-blob/src/BlobLeaseClient.ts b/sdk/storage/storage-blob/src/BlobLeaseClient.ts index 8b73337c2ba4..fe27d3d30f61 100644 --- a/sdk/storage/storage-blob/src/BlobLeaseClient.ts +++ b/sdk/storage/storage-blob/src/BlobLeaseClient.ts @@ -2,17 +2,18 @@ // Licensed under the MIT License. import { randomUUID } from "@azure/core-util"; -import { ContainerBreakLeaseOptionalParams } from "./generatedModels"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { Blob as StorageBlob, Container } from "./generated/src/operationsInterfaces"; -import { ModifiedAccessConditions } from "./models"; -import { CommonOptions } from "./StorageClient"; +import type { ContainerBreakLeaseOptionalParams } from "./generatedModels"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { Blob as StorageBlob, Container } from "./generated/src/operationsInterfaces"; +import type { ModifiedAccessConditions } from "./models"; +import type { CommonOptions } from "./StorageClient"; import { ETagNone } from "./utils/constants"; import { tracingClient } from "./utils/tracing"; -import { BlobClient } from "./Clients"; -import { ContainerClient } from "./ContainerClient"; -import { assertResponse, WithResponse } from "./utils/utils.common"; -import { +import type { BlobClient } from "./Clients"; +import type { ContainerClient } from "./ContainerClient"; +import type { WithResponse } from "./utils/utils.common"; +import { assertResponse } from "./utils/utils.common"; +import type { ContainerAcquireLeaseHeaders, ContainerBreakLeaseHeaders, ContainerReleaseLeaseHeaders, diff --git a/sdk/storage/storage-blob/src/BlobQueryResponse.browser.ts b/sdk/storage/storage-blob/src/BlobQueryResponse.browser.ts index 5bd06659f742..28c3824a2fdf 100644 --- a/sdk/storage/storage-blob/src/BlobQueryResponse.browser.ts +++ b/sdk/storage/storage-blob/src/BlobQueryResponse.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { BlobDownloadResponseModel, BlobType, CopyStatusType, @@ -11,9 +11,9 @@ import { BlobQueryResponseModel, BlobQueryHeaders, } from "./generatedModels"; -import { Metadata } from "./models"; -import { BlobQuickQueryStreamOptions } from "./utils/BlobQuickQueryStream"; -import { ResponseWithHeaders } from "./utils/utils.common"; +import type { Metadata } from "./models"; +import type { BlobQuickQueryStreamOptions } from "./utils/BlobQuickQueryStream"; +import type { ResponseWithHeaders } from "./utils/utils.common"; /** * ONLY AVAILABLE IN BROWSER RUNTIME. diff --git a/sdk/storage/storage-blob/src/BlobQueryResponse.ts b/sdk/storage/storage-blob/src/BlobQueryResponse.ts index f9174454b061..a7a7987835fd 100644 --- a/sdk/storage/storage-blob/src/BlobQueryResponse.ts +++ b/sdk/storage/storage-blob/src/BlobQueryResponse.ts @@ -3,7 +3,7 @@ import { isNode } from "@azure/core-util"; -import { +import type { BlobDownloadResponseModel, BlobType, CopyStatusType, @@ -13,9 +13,10 @@ import { BlobQueryHeaders, BlobQueryResponseModel, } from "./generatedModels"; -import { Metadata } from "./models"; -import { BlobQuickQueryStream, BlobQuickQueryStreamOptions } from "./utils/BlobQuickQueryStream"; -import { ResponseWithHeaders } from "./utils/utils.common"; +import type { Metadata } from "./models"; +import type { BlobQuickQueryStreamOptions } from "./utils/BlobQuickQueryStream"; +import { BlobQuickQueryStream } from "./utils/BlobQuickQueryStream"; +import type { ResponseWithHeaders } from "./utils/utils.common"; /** * ONLY AVAILABLE IN NODE.JS RUNTIME. diff --git a/sdk/storage/storage-blob/src/BlobServiceClient.ts b/sdk/storage/storage-blob/src/BlobServiceClient.ts index 14303303908f..3882639a9096 100644 --- a/sdk/storage/storage-blob/src/BlobServiceClient.ts +++ b/sdk/storage/storage-blob/src/BlobServiceClient.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { getDefaultProxySettings } from "@azure/core-rest-pipeline"; import { isNode } from "@azure/core-util"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { ServiceGetUserDelegationKeyHeaders, ContainerCreateResponse, ContainerDeleteResponse, @@ -27,36 +28,35 @@ import { ServiceGetStatisticsResponseInternal, ServiceListContainersSegmentResponseInternal, } from "./generatedModels"; -import { Service } from "./generated/src/operationsInterfaces"; -import { newPipeline, StoragePipelineOptions, PipelineLike, isPipelineLike } from "./Pipeline"; -import { - ContainerClient, - ContainerCreateOptions, - ContainerDeleteMethodOptions, -} from "./ContainerClient"; +import type { Service } from "./generated/src/operationsInterfaces"; +import type { StoragePipelineOptions, PipelineLike } from "./Pipeline"; +import { newPipeline, isPipelineLike } from "./Pipeline"; +import type { ContainerCreateOptions, ContainerDeleteMethodOptions } from "./ContainerClient"; +import { ContainerClient } from "./ContainerClient"; +import type { WithResponse } from "./utils/utils.common"; import { appendToURLPath, appendToURLQuery, extractConnectionStringParts, toTags, - WithResponse, } from "./utils/utils.common"; import { StorageSharedKeyCredential } from "./credentials/StorageSharedKeyCredential"; import { AnonymousCredential } from "./credentials/AnonymousCredential"; -import { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; import { truncatedISO8061Date, assertResponse } from "./utils/utils.common"; import { tracingClient } from "./utils/tracing"; import { BlobBatchClient } from "./BlobBatchClient"; -import { CommonOptions, StorageClient } from "./StorageClient"; +import type { CommonOptions } from "./StorageClient"; +import { StorageClient } from "./StorageClient"; import { AccountSASPermissions } from "./sas/AccountSASPermissions"; -import { SASProtocol } from "./sas/SASQueryParameters"; -import { SasIPRange } from "./sas/SasIPRange"; +import type { SASProtocol } from "./sas/SASQueryParameters"; +import type { SasIPRange } from "./sas/SasIPRange"; import { generateAccountSASQueryParameters, generateAccountSASQueryParametersInternal, } from "./sas/AccountSASSignatureValues"; import { AccountSASServices } from "./sas/AccountSASServices"; -import { +import type { ContainerRenameHeaders, ContainerRestoreHeaders, ListContainersIncludeType, diff --git a/sdk/storage/storage-blob/src/Clients.ts b/sdk/storage/storage-blob/src/Clients.ts index 1d7ce8565f40..2ba629d0fdea 100644 --- a/sdk/storage/storage-blob/src/Clients.ts +++ b/sdk/storage/storage-blob/src/Clients.ts @@ -1,29 +1,30 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { - getDefaultProxySettings, +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { RequestBodyType as HttpRequestBody, TransferProgressEvent, } from "@azure/core-rest-pipeline"; -import { isTokenCredential, TokenCredential } from "@azure/core-auth"; +import { getDefaultProxySettings } from "@azure/core-rest-pipeline"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { isNode } from "@azure/core-util"; -import { PollOperationState } from "@azure/core-lro"; +import type { PollOperationState } from "@azure/core-lro"; import { randomUUID } from "@azure/core-util"; -import { Readable } from "stream"; +import type { Readable } from "stream"; import { BlobDownloadResponse } from "./BlobDownloadResponse"; import { BlobQueryResponse } from "./BlobQueryResponse"; import { AnonymousCredential } from "./credentials/AnonymousCredential"; import { StorageSharedKeyCredential } from "./credentials/StorageSharedKeyCredential"; -import { +import type { AppendBlob, Blob as StorageBlob, BlockBlob, PageBlob, } from "./generated/src/operationsInterfaces"; -import { +import type { AppendBlobAppendBlockFromUrlHeaders, AppendBlobAppendBlockHeaders, AppendBlobCreateHeaders, @@ -56,7 +57,7 @@ import { PageBlobUploadPagesFromURLHeaders, PageBlobUploadPagesHeaders, } from "./generated/src"; -import { +import type { AppendBlobAppendBlockFromUrlResponse, AppendBlobAppendBlockResponse, AppendBlobCreateResponse, @@ -117,18 +118,16 @@ import { BlobSetLegalHoldResponse, BlobSetMetadataResponse, } from "./generatedModels"; -import { +import type { AppendBlobRequestConditions, BlobDownloadResponseParsed, BlobRequestConditions, BlockBlobTier, - ensureCpkIfSpecified, Metadata, ObjectReplicationPolicy, PageBlobRequestConditions, PremiumPageBlobTier, Tags, - toAccessTier, TagConditions, MatchConditions, ModificationConditions, @@ -138,19 +137,23 @@ import { HttpAuthorization, PollerLikeWithCancellation, } from "./models"; -import { +import { ensureCpkIfSpecified, toAccessTier } from "./models"; +import type { PageBlobGetPageRangesDiffResponse, PageBlobGetPageRangesResponse, - rangeResponseFromModel, } from "./PageBlobRangeResponse"; -import { newPipeline, PipelineLike, isPipelineLike, StoragePipelineOptions } from "./Pipeline"; -import { - BlobBeginCopyFromUrlPoller, +import { rangeResponseFromModel } from "./PageBlobRangeResponse"; +import type { PipelineLike, StoragePipelineOptions } from "./Pipeline"; +import { newPipeline, isPipelineLike } from "./Pipeline"; +import type { BlobBeginCopyFromUrlPollState, CopyPollerBlobClient, } from "./pollers/BlobStartCopyFromUrlPoller"; -import { Range, rangeToString } from "./Range"; -import { CommonOptions, StorageClient } from "./StorageClient"; +import { BlobBeginCopyFromUrlPoller } from "./pollers/BlobStartCopyFromUrlPoller"; +import type { Range } from "./Range"; +import { rangeToString } from "./Range"; +import type { CommonOptions } from "./StorageClient"; +import { StorageClient } from "./StorageClient"; import { Batch } from "./utils/Batch"; import { BufferScheduler } from "../../storage-common/src"; import { @@ -166,6 +169,7 @@ import { URLConstants, } from "./utils/constants"; import { tracingClient } from "./utils/tracing"; +import type { WithResponse } from "./utils/utils.common"; import { appendToURLPath, appendToURLQuery, @@ -182,7 +186,6 @@ import { toBlobTagsString, toQuerySerialization, toTags, - WithResponse, } from "./utils/utils.common"; import { fsCreateReadStream, @@ -190,16 +193,16 @@ import { readStreamToLocalFile, streamToBuffer, } from "./utils/utils.node"; -import { SASProtocol } from "./sas/SASQueryParameters"; -import { SasIPRange } from "./sas/SasIPRange"; +import type { SASProtocol } from "./sas/SASQueryParameters"; +import type { SasIPRange } from "./sas/SasIPRange"; import { generateBlobSASQueryParameters, generateBlobSASQueryParametersInternal, } from "./sas/BlobSASSignatureValues"; -import { BlobSASPermissions } from "./sas/BlobSASPermissions"; +import type { BlobSASPermissions } from "./sas/BlobSASPermissions"; import { BlobLeaseClient } from "./BlobLeaseClient"; -import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; -import { UserDelegationKey } from "./BlobServiceClient"; +import type { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import type { UserDelegationKey } from "./BlobServiceClient"; /** * Options to configure the {@link BlobClient.beginCopyFromURL} operation. @@ -2244,7 +2247,7 @@ export class BlobClient extends StorageClient { * @param userDelegationKey - Return value of `blobServiceClient.getUserDelegationKey()` * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token. */ - /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/ + public generateUserDelegationSasStringToSign( options: BlobGenerateSasUrlOptions, userDelegationKey: UserDelegationKey, diff --git a/sdk/storage/storage-blob/src/ContainerClient.ts b/sdk/storage/storage-blob/src/ContainerClient.ts index ee3ba6c37ff0..bfff23e4d9de 100644 --- a/sdk/storage/storage-blob/src/ContainerClient.ts +++ b/sdk/storage/storage-blob/src/ContainerClient.ts @@ -1,17 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { - getDefaultProxySettings, - RequestBodyType as HttpRequestBody, -} from "@azure/core-rest-pipeline"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { RequestBodyType as HttpRequestBody } from "@azure/core-rest-pipeline"; +import { getDefaultProxySettings } from "@azure/core-rest-pipeline"; import { isNode } from "@azure/core-util"; -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; import { AnonymousCredential } from "./credentials/AnonymousCredential"; import { StorageSharedKeyCredential } from "./credentials/StorageSharedKeyCredential"; -import { Container } from "./generated/src/operationsInterfaces"; -import { +import type { Container } from "./generated/src/operationsInterfaces"; +import type { BlobDeleteResponse, BlobPrefix, BlobProperties, @@ -38,16 +37,19 @@ import { PublicAccessType, SignedIdentifierModel, } from "./generatedModels"; -import { +import type { Metadata, ObjectReplicationPolicy, Tags, ContainerRequestConditions, ModifiedAccessConditions, } from "./models"; -import { newPipeline, PipelineLike, isPipelineLike, StoragePipelineOptions } from "./Pipeline"; -import { CommonOptions, StorageClient } from "./StorageClient"; +import type { PipelineLike, StoragePipelineOptions } from "./Pipeline"; +import { newPipeline, isPipelineLike } from "./Pipeline"; +import type { CommonOptions } from "./StorageClient"; +import { StorageClient } from "./StorageClient"; import { tracingClient } from "./utils/tracing"; +import type { WithResponse } from "./utils/utils.common"; import { appendToURLPath, appendToURLQuery, @@ -61,25 +63,21 @@ import { parseObjectReplicationRecord, toTags, truncatedISO8061Date, - WithResponse, } from "./utils/utils.common"; -import { ContainerSASPermissions } from "./sas/ContainerSASPermissions"; +import type { ContainerSASPermissions } from "./sas/ContainerSASPermissions"; import { generateBlobSASQueryParameters, generateBlobSASQueryParametersInternal, } from "./sas/BlobSASSignatureValues"; import { BlobLeaseClient } from "./BlobLeaseClient"; -import { - AppendBlobClient, - BlobClient, +import type { BlobDeleteOptions, - BlockBlobClient, BlockBlobUploadOptions, CommonGenerateSasUrlOptions, - PageBlobClient, } from "./Clients"; +import { AppendBlobClient, BlobClient, BlockBlobClient, PageBlobClient } from "./Clients"; import { BlobBatchClient } from "./BlobBatchClient"; -import { +import type { ContainerCreateHeaders, ListBlobsIncludeItem, ContainerGetPropertiesHeaders, @@ -91,7 +89,7 @@ import { ContainerListBlobHierarchySegmentResponse as ContainerListBlobHierarchySegmentResponseModel, ContainerGetAccountInfoHeaders, } from "./generated/src"; -import { UserDelegationKey } from "./BlobServiceClient"; +import type { UserDelegationKey } from "./BlobServiceClient"; /** * Options to configure {@link ContainerClient.create} operation. @@ -2120,7 +2118,7 @@ export class ContainerClient extends StorageClient { * @param userDelegationKey - Return value of `blobServiceClient.getUserDelegationKey()` * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token. */ - /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/ + public generateUserDelegationSasStringToSign( options: ContainerGenerateSasUrlOptions, userDelegationKey: UserDelegationKey, diff --git a/sdk/storage/storage-blob/src/PageBlobRangeResponse.ts b/sdk/storage/storage-blob/src/PageBlobRangeResponse.ts index 7bf1f2ca5cd5..1ab9af012075 100644 --- a/sdk/storage/storage-blob/src/PageBlobRangeResponse.ts +++ b/sdk/storage/storage-blob/src/PageBlobRangeResponse.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PageBlobGetPageRangesHeaders, PageBlobGetPageRangesDiffHeaders, PageBlobGetPageRangesResponseModel, PageBlobGetPageRangesDiffResponseModel, } from "./generatedModels"; -import { Range } from "./Range"; -import { ResponseWithBody } from "./utils/utils.common"; +import type { Range } from "./Range"; +import type { ResponseWithBody } from "./utils/utils.common"; /** * List of page ranges for a blob. diff --git a/sdk/storage/storage-blob/src/Pipeline.ts b/sdk/storage/storage-blob/src/Pipeline.ts index 18834258fe3c..fa1b77a5d360 100644 --- a/sdk/storage/storage-blob/src/Pipeline.ts +++ b/sdk/storage/storage-blob/src/Pipeline.ts @@ -1,6 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { + KeepAliveOptions, + ExtendedServiceClientOptions, + HttpPipelineLogLevel, +} from "@azure/core-http-compat"; import { CompatResponse as HttpOperationResponse, RequestPolicy as IHttpClient, @@ -9,28 +14,29 @@ import { RequestPolicyFactory, RequestPolicyOptionsLike as RequestPolicyOptions, WebResourceLike as WebResource, - KeepAliveOptions, - ExtendedServiceClientOptions, convertHttpClient, createRequestPolicyFactoryPolicy, - HttpPipelineLogLevel, } from "@azure/core-http-compat"; -import { - RequestBodyType as HttpRequestBody, +import type { ProxySettings as ProxyOptions, UserAgentPolicyOptions as UserAgentOptions, - bearerTokenAuthenticationPolicy, Pipeline as CorePipeline, - decompressResponsePolicyName, PipelinePolicy, HttpClient, } from "@azure/core-rest-pipeline"; +import { + RequestBodyType as HttpRequestBody, + bearerTokenAuthenticationPolicy, + decompressResponsePolicyName, +} from "@azure/core-rest-pipeline"; import { authorizeRequestOnTenantChallenge, createClientPipeline } from "@azure/core-client"; import { parseXML, stringifyXML } from "@azure/core-xml"; -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { logger } from "./log"; -import { StorageRetryOptions, StorageRetryPolicyFactory } from "./StorageRetryPolicyFactory"; +import type { StorageRetryOptions } from "./StorageRetryPolicyFactory"; +import { StorageRetryPolicyFactory } from "./StorageRetryPolicyFactory"; import { StorageSharedKeyCredential } from "./credentials/StorageSharedKeyCredential"; import { AnonymousCredential } from "./credentials/AnonymousCredential"; import { diff --git a/sdk/storage/storage-blob/src/StorageBrowserPolicyFactory.ts b/sdk/storage/storage-blob/src/StorageBrowserPolicyFactory.ts index c0a2296dfe54..bc5bb004656a 100644 --- a/sdk/storage/storage-blob/src/StorageBrowserPolicyFactory.ts +++ b/sdk/storage/storage-blob/src/StorageBrowserPolicyFactory.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { RequestPolicy, RequestPolicyOptionsLike as RequestPolicyOptions, RequestPolicyFactory, diff --git a/sdk/storage/storage-blob/src/StorageClient.ts b/sdk/storage/storage-blob/src/StorageClient.ts index 359a795382ca..50e10b1e1fd7 100644 --- a/sdk/storage/storage-blob/src/StorageClient.ts +++ b/sdk/storage/storage-blob/src/StorageClient.ts @@ -1,14 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { StorageClient as StorageClientContext } from "./generated/src/"; +import type { StorageClient as StorageClientContext } from "./generated/src/"; import { StorageContextClient } from "./StorageContextClient"; -import { getCoreClientOptions, getCredentialFromPipeline, PipelineLike } from "./Pipeline"; +import type { PipelineLike } from "./Pipeline"; +import { getCoreClientOptions, getCredentialFromPipeline } from "./Pipeline"; import { escapeURLPath, getURLScheme, iEqual, getAccountNameFromUrl } from "./utils/utils.common"; -import { AnonymousCredential } from "./credentials/AnonymousCredential"; -import { StorageSharedKeyCredential } from "./credentials/StorageSharedKeyCredential"; -import { TokenCredential } from "@azure/core-auth"; -import { OperationTracingOptions } from "@azure/core-tracing"; +import type { AnonymousCredential } from "./credentials/AnonymousCredential"; +import type { StorageSharedKeyCredential } from "./credentials/StorageSharedKeyCredential"; +import type { TokenCredential } from "@azure/core-auth"; +import type { OperationTracingOptions } from "@azure/core-tracing"; /** * An interface for options common to every remote operation. diff --git a/sdk/storage/storage-blob/src/StorageContextClient.ts b/sdk/storage/storage-blob/src/StorageContextClient.ts index 8b2a28ce653c..130b54ccf269 100644 --- a/sdk/storage/storage-blob/src/StorageContextClient.ts +++ b/sdk/storage/storage-blob/src/StorageContextClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationArguments, OperationSpec } from "@azure/core-client"; +import type { OperationArguments, OperationSpec } from "@azure/core-client"; import { StorageClient } from "./generated/src"; /** diff --git a/sdk/storage/storage-blob/src/StorageRetryPolicyFactory.ts b/sdk/storage/storage-blob/src/StorageRetryPolicyFactory.ts index 7b02d8c2b9bf..638921a7e73b 100644 --- a/sdk/storage/storage-blob/src/StorageRetryPolicyFactory.ts +++ b/sdk/storage/storage-blob/src/StorageRetryPolicyFactory.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { RequestPolicy, RequestPolicyOptionsLike as RequestPolicyOptions, RequestPolicyFactory, diff --git a/sdk/storage/storage-blob/src/credentials/AnonymousCredential.ts b/sdk/storage/storage-blob/src/credentials/AnonymousCredential.ts index 6b3f400af966..3c20ea181ea7 100644 --- a/sdk/storage/storage-blob/src/credentials/AnonymousCredential.ts +++ b/sdk/storage/storage-blob/src/credentials/AnonymousCredential.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { RequestPolicy, RequestPolicyOptionsLike as RequestPolicyOptions, } from "@azure/core-http-compat"; diff --git a/sdk/storage/storage-blob/src/credentials/Credential.ts b/sdk/storage/storage-blob/src/credentials/Credential.ts index bc92d2430ed1..4707d96beebe 100644 --- a/sdk/storage/storage-blob/src/credentials/Credential.ts +++ b/sdk/storage/storage-blob/src/credentials/Credential.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { RequestPolicy, RequestPolicyFactory, RequestPolicyOptionsLike as RequestPolicyOptions, } from "@azure/core-http-compat"; -import { CredentialPolicy } from "../policies/CredentialPolicy"; +import type { CredentialPolicy } from "../policies/CredentialPolicy"; /** * Credential is an abstract class for Azure Storage HTTP requests signing. This diff --git a/sdk/storage/storage-blob/src/credentials/StorageSharedKeyCredential.ts b/sdk/storage/storage-blob/src/credentials/StorageSharedKeyCredential.ts index 6086872b2add..b0f1660e97f9 100644 --- a/sdk/storage/storage-blob/src/credentials/StorageSharedKeyCredential.ts +++ b/sdk/storage/storage-blob/src/credentials/StorageSharedKeyCredential.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { createHmac } from "crypto"; -import { +import type { RequestPolicy, RequestPolicyOptionsLike as RequestPolicyOptions, } from "@azure/core-http-compat"; diff --git a/sdk/storage/storage-blob/src/credentials/UserDelegationKeyCredential.ts b/sdk/storage/storage-blob/src/credentials/UserDelegationKeyCredential.ts index 94f176917786..27566027200e 100644 --- a/sdk/storage/storage-blob/src/credentials/UserDelegationKeyCredential.ts +++ b/sdk/storage/storage-blob/src/credentials/UserDelegationKeyCredential.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { createHmac } from "crypto"; -import { UserDelegationKey } from "../BlobServiceClient"; +import type { UserDelegationKey } from "../BlobServiceClient"; /** * ONLY AVAILABLE IN NODE.JS RUNTIME. diff --git a/sdk/storage/storage-blob/src/generatedModels.ts b/sdk/storage/storage-blob/src/generatedModels.ts index ede5ab04717b..319feb76fd85 100644 --- a/sdk/storage/storage-blob/src/generatedModels.ts +++ b/sdk/storage/storage-blob/src/generatedModels.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Tags } from "."; +import type { Tags } from "."; +import type { BlobPropertiesInternal as BlobProperties } from "./generated/src/models"; import { AppendBlobAppendBlockFromUrlHeaders, AppendBlobAppendBlockHeaders, @@ -14,7 +15,6 @@ import { BlobDownloadResponse as BlobDownloadResponseInternal, BlobDownloadHeaders, BlobGetPropertiesHeaders, - BlobPropertiesInternal as BlobProperties, BlobGetTagsHeaders, BlobTags, BlobQueryResponse as BlobQueryResponseInternal, diff --git a/sdk/storage/storage-blob/src/models.ts b/sdk/storage/storage-blob/src/models.ts index 91b50f1fbfb0..829a189ca8d7 100644 --- a/sdk/storage/storage-blob/src/models.ts +++ b/sdk/storage/storage-blob/src/models.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { CancelOnProgress, PollOperationState } from "@azure/core-lro"; -import { BlobImmutabilityPolicyMode } from "./generatedModels"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { CancelOnProgress, PollOperationState } from "@azure/core-lro"; +import type { BlobImmutabilityPolicyMode } from "./generatedModels"; +import type { LeaseAccessConditions, SequenceNumberAccessConditions, AppendPositionAccessConditions, diff --git a/sdk/storage/storage-blob/src/policies/AnonymousCredentialPolicy.ts b/sdk/storage/storage-blob/src/policies/AnonymousCredentialPolicy.ts index 8b7d49fe8897..03b0d8ff0e33 100644 --- a/sdk/storage/storage-blob/src/policies/AnonymousCredentialPolicy.ts +++ b/sdk/storage/storage-blob/src/policies/AnonymousCredentialPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { RequestPolicy, RequestPolicyOptionsLike as RequestPolicyOptions, } from "@azure/core-http-compat"; diff --git a/sdk/storage/storage-blob/src/policies/CredentialPolicy.ts b/sdk/storage/storage-blob/src/policies/CredentialPolicy.ts index d782f429e87e..580ebbc9bdc7 100644 --- a/sdk/storage/storage-blob/src/policies/CredentialPolicy.ts +++ b/sdk/storage/storage-blob/src/policies/CredentialPolicy.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { BaseRequestPolicy } from "./RequestPolicy"; -import { +import type { WebResourceLike as WebResource, CompatResponse as HttpOperationResponse, } from "@azure/core-http-compat"; diff --git a/sdk/storage/storage-blob/src/policies/RequestPolicy.ts b/sdk/storage/storage-blob/src/policies/RequestPolicy.ts index 694f830145a5..24074980ec69 100644 --- a/sdk/storage/storage-blob/src/policies/RequestPolicy.ts +++ b/sdk/storage/storage-blob/src/policies/RequestPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { HttpPipelineLogLevel, RequestPolicy, RequestPolicyOptionsLike, diff --git a/sdk/storage/storage-blob/src/policies/StorageBrowserPolicy.ts b/sdk/storage/storage-blob/src/policies/StorageBrowserPolicy.ts index 27d1d75c8440..1e9fd0a57d68 100644 --- a/sdk/storage/storage-blob/src/policies/StorageBrowserPolicy.ts +++ b/sdk/storage/storage-blob/src/policies/StorageBrowserPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { RequestPolicy, RequestPolicyOptionsLike as RequestPolicyOptions, WebResourceLike as WebResource, diff --git a/sdk/storage/storage-blob/src/policies/StorageBrowserPolicyV2.ts b/sdk/storage/storage-blob/src/policies/StorageBrowserPolicyV2.ts index e6539cb0cfd5..832d899825df 100644 --- a/sdk/storage/storage-blob/src/policies/StorageBrowserPolicyV2.ts +++ b/sdk/storage/storage-blob/src/policies/StorageBrowserPolicyV2.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelineRequest, PipelineResponse, SendRequest, diff --git a/sdk/storage/storage-blob/src/policies/StorageCorrectContentLengthPolicy.browser.ts b/sdk/storage/storage-blob/src/policies/StorageCorrectContentLengthPolicy.browser.ts index 3e3a70171176..aa270d747a90 100644 --- a/sdk/storage/storage-blob/src/policies/StorageCorrectContentLengthPolicy.browser.ts +++ b/sdk/storage/storage-blob/src/policies/StorageCorrectContentLengthPolicy.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelineRequest, PipelineResponse, SendRequest, diff --git a/sdk/storage/storage-blob/src/policies/StorageCorrectContentLengthPolicy.ts b/sdk/storage/storage-blob/src/policies/StorageCorrectContentLengthPolicy.ts index 6fd3df2ef16b..64d037ff34bb 100644 --- a/sdk/storage/storage-blob/src/policies/StorageCorrectContentLengthPolicy.ts +++ b/sdk/storage/storage-blob/src/policies/StorageCorrectContentLengthPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelineRequest, PipelineResponse, SendRequest, diff --git a/sdk/storage/storage-blob/src/policies/StorageRetryPolicy.ts b/sdk/storage/storage-blob/src/policies/StorageRetryPolicy.ts index 4388f7f74716..4b1c9a27aa7f 100644 --- a/sdk/storage/storage-blob/src/policies/StorageRetryPolicy.ts +++ b/sdk/storage/storage-blob/src/policies/StorageRetryPolicy.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; -import { +import type { RequestPolicy, RequestPolicyOptionsLike as RequestPolicyOptions, RequestPolicyFactory, @@ -11,9 +12,9 @@ import { CompatResponse as HttpOperationResponse, } from "@azure/core-http-compat"; import { BaseRequestPolicy } from "./RequestPolicy"; -import { RestError } from "@azure/core-rest-pipeline"; +import type { RestError } from "@azure/core-rest-pipeline"; -import { StorageRetryOptions } from "../StorageRetryPolicyFactory"; +import type { StorageRetryOptions } from "../StorageRetryPolicyFactory"; import { URLConstants } from "../utils/constants"; import { delay, setURLHost, setURLParameter } from "../utils/utils.common"; import { logger } from "../log"; diff --git a/sdk/storage/storage-blob/src/policies/StorageRetryPolicyV2.ts b/sdk/storage/storage-blob/src/policies/StorageRetryPolicyV2.ts index 3f9d44052b75..36f63f5d23ef 100644 --- a/sdk/storage/storage-blob/src/policies/StorageRetryPolicyV2.ts +++ b/sdk/storage/storage-blob/src/policies/StorageRetryPolicyV2.ts @@ -2,16 +2,15 @@ // Licensed under the MIT License. import { AbortError } from "@azure/abort-controller"; -import { +import type { PipelinePolicy, PipelineRequest, SendRequest, PipelineResponse, - isRestError, - RestError, } from "@azure/core-rest-pipeline"; +import { isRestError, RestError } from "@azure/core-rest-pipeline"; import { getErrorMessage } from "@azure/core-util"; -import { StorageRetryOptions } from "../StorageRetryPolicyFactory"; +import type { StorageRetryOptions } from "../StorageRetryPolicyFactory"; import { URLConstants } from "../utils/constants"; import { delay, setURLHost, setURLParameter } from "../utils/utils.common"; import { logger } from "../log"; diff --git a/sdk/storage/storage-blob/src/policies/StorageSharedKeyCredentialPolicy.ts b/sdk/storage/storage-blob/src/policies/StorageSharedKeyCredentialPolicy.ts index 27d1bd7ef642..e2a0134d9b90 100644 --- a/sdk/storage/storage-blob/src/policies/StorageSharedKeyCredentialPolicy.ts +++ b/sdk/storage/storage-blob/src/policies/StorageSharedKeyCredentialPolicy.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { RequestPolicy, RequestPolicyOptionsLike as RequestPolicyOptions, WebResourceLike as WebResource, } from "@azure/core-http-compat"; -import { StorageSharedKeyCredential } from "../credentials/StorageSharedKeyCredential"; +import type { StorageSharedKeyCredential } from "../credentials/StorageSharedKeyCredential"; import { HeaderConstants } from "../utils/constants"; import { getURLPath, getURLQueries } from "../utils/utils.common"; import { CredentialPolicy } from "./CredentialPolicy"; diff --git a/sdk/storage/storage-blob/src/policies/StorageSharedKeyCredentialPolicyV2.browser.ts b/sdk/storage/storage-blob/src/policies/StorageSharedKeyCredentialPolicyV2.browser.ts index 017a85f38655..9c56bd30abce 100644 --- a/sdk/storage/storage-blob/src/policies/StorageSharedKeyCredentialPolicyV2.browser.ts +++ b/sdk/storage/storage-blob/src/policies/StorageSharedKeyCredentialPolicyV2.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelineRequest, PipelineResponse, SendRequest, diff --git a/sdk/storage/storage-blob/src/policies/StorageSharedKeyCredentialPolicyV2.ts b/sdk/storage/storage-blob/src/policies/StorageSharedKeyCredentialPolicyV2.ts index 4a45686fa6da..2363c90db3de 100644 --- a/sdk/storage/storage-blob/src/policies/StorageSharedKeyCredentialPolicyV2.ts +++ b/sdk/storage/storage-blob/src/policies/StorageSharedKeyCredentialPolicyV2.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { createHmac } from "crypto"; -import { +import type { PipelineRequest, PipelineResponse, SendRequest, diff --git a/sdk/storage/storage-blob/src/pollers/BlobStartCopyFromUrlPoller.ts b/sdk/storage/storage-blob/src/pollers/BlobStartCopyFromUrlPoller.ts index 481aed34178a..c053847c1c03 100644 --- a/sdk/storage/storage-blob/src/pollers/BlobStartCopyFromUrlPoller.ts +++ b/sdk/storage/storage-blob/src/pollers/BlobStartCopyFromUrlPoller.ts @@ -2,8 +2,13 @@ // Licensed under the MIT License. import { delay } from "@azure/core-util"; -import { PollOperation, PollOperationState, Poller } from "@azure/core-lro"; -import { BlobClient, BlobStartCopyFromURLOptions, BlobBeginCopyFromURLResponse } from "../Clients"; +import type { PollOperation, PollOperationState } from "@azure/core-lro"; +import { Poller } from "@azure/core-lro"; +import type { + BlobClient, + BlobStartCopyFromURLOptions, + BlobBeginCopyFromURLResponse, +} from "../Clients"; /** * Defines the operations from a {@link BlobClient} that are needed for the poller diff --git a/sdk/storage/storage-blob/src/sas/AccountSASSignatureValues.ts b/sdk/storage/storage-blob/src/sas/AccountSASSignatureValues.ts index 8adad425df84..8c186550ea8d 100644 --- a/sdk/storage/storage-blob/src/sas/AccountSASSignatureValues.ts +++ b/sdk/storage/storage-blob/src/sas/AccountSASSignatureValues.ts @@ -4,9 +4,11 @@ import { AccountSASPermissions } from "./AccountSASPermissions"; import { AccountSASResourceTypes } from "./AccountSASResourceTypes"; import { AccountSASServices } from "./AccountSASServices"; -import { StorageSharedKeyCredential } from "../credentials/StorageSharedKeyCredential"; -import { SasIPRange, ipRangeToString } from "./SasIPRange"; -import { SASProtocol, SASQueryParameters } from "./SASQueryParameters"; +import type { StorageSharedKeyCredential } from "../credentials/StorageSharedKeyCredential"; +import type { SasIPRange } from "./SasIPRange"; +import { ipRangeToString } from "./SasIPRange"; +import type { SASProtocol } from "./SASQueryParameters"; +import { SASQueryParameters } from "./SASQueryParameters"; import { SERVICE_VERSION } from "../utils/constants"; import { truncatedISO8061Date } from "../utils/utils.common"; diff --git a/sdk/storage/storage-blob/src/sas/BlobSASSignatureValues.ts b/sdk/storage/storage-blob/src/sas/BlobSASSignatureValues.ts index 87e6e16fba01..898a8af9a6d0 100644 --- a/sdk/storage/storage-blob/src/sas/BlobSASSignatureValues.ts +++ b/sdk/storage/storage-blob/src/sas/BlobSASSignatureValues.ts @@ -1,12 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { BlobSASPermissions } from "./BlobSASPermissions"; -import { UserDelegationKey } from "../BlobServiceClient"; +import type { UserDelegationKey } from "../BlobServiceClient"; import { ContainerSASPermissions } from "./ContainerSASPermissions"; import { StorageSharedKeyCredential } from "../credentials/StorageSharedKeyCredential"; import { UserDelegationKeyCredential } from "../credentials/UserDelegationKeyCredential"; -import { ipRangeToString, SasIPRange } from "./SasIPRange"; -import { SASProtocol, SASQueryParameters } from "./SASQueryParameters"; +import type { SasIPRange } from "./SasIPRange"; +import { ipRangeToString } from "./SasIPRange"; +import type { SASProtocol } from "./SASQueryParameters"; +import { SASQueryParameters } from "./SASQueryParameters"; import { SERVICE_VERSION } from "../utils/constants"; import { truncatedISO8061Date } from "../utils/utils.common"; diff --git a/sdk/storage/storage-blob/src/sas/SASQueryParameters.ts b/sdk/storage/storage-blob/src/sas/SASQueryParameters.ts index a9260bc6082b..dc2f73e3f50c 100644 --- a/sdk/storage/storage-blob/src/sas/SASQueryParameters.ts +++ b/sdk/storage/storage-blob/src/sas/SASQueryParameters.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { SasIPRange, ipRangeToString } from "./SasIPRange"; +import type { SasIPRange } from "./SasIPRange"; +import { ipRangeToString } from "./SasIPRange"; import { truncatedISO8061Date } from "../utils/utils.common"; -import { UserDelegationKey } from "../BlobServiceClient"; +import type { UserDelegationKey } from "../BlobServiceClient"; /** * Protocols for generated SAS. diff --git a/sdk/storage/storage-blob/src/utils/BlobQuickQueryStream.ts b/sdk/storage/storage-blob/src/utils/BlobQuickQueryStream.ts index 97b95ddd4300..24fd29f2bfc0 100644 --- a/sdk/storage/storage-blob/src/utils/BlobQuickQueryStream.ts +++ b/sdk/storage/storage-blob/src/utils/BlobQuickQueryStream.ts @@ -3,11 +3,11 @@ import { Readable } from "stream"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { TransferProgressEvent } from "@azure/core-rest-pipeline"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { TransferProgressEvent } from "@azure/core-rest-pipeline"; import { AvroReadableFromStream, AvroReader } from "../../../storage-internal-avro/src"; -import { BlobQueryError } from "../Clients"; +import type { BlobQueryError } from "../Clients"; export interface BlobQuickQueryStreamOptions { /** diff --git a/sdk/storage/storage-blob/src/utils/RetriableReadableStream.ts b/sdk/storage/storage-blob/src/utils/RetriableReadableStream.ts index 69f87cdb7081..ce71fe576fc1 100644 --- a/sdk/storage/storage-blob/src/utils/RetriableReadableStream.ts +++ b/sdk/storage/storage-blob/src/utils/RetriableReadableStream.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { AbortError } from "@azure/abort-controller"; -import { TransferProgressEvent } from "@azure/core-rest-pipeline"; +import type { TransferProgressEvent } from "@azure/core-rest-pipeline"; import { Readable } from "stream"; export type ReadableStreamGetter = (offset: number) => Promise; diff --git a/sdk/storage/storage-blob/src/utils/cache.ts b/sdk/storage/storage-blob/src/utils/cache.ts index fc01a8a2af88..caa5f1b383e1 100644 --- a/sdk/storage/storage-blob/src/utils/cache.ts +++ b/sdk/storage/storage-blob/src/utils/cache.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { createDefaultHttpClient, HttpClient } from "@azure/core-rest-pipeline"; +import type { HttpClient } from "@azure/core-rest-pipeline"; +import { createDefaultHttpClient } from "@azure/core-rest-pipeline"; let _defaultHttpClient: HttpClient; diff --git a/sdk/storage/storage-blob/src/utils/utils.common.ts b/sdk/storage/storage-blob/src/utils/utils.common.ts index 55e698035bcf..c12e03925abb 100644 --- a/sdk/storage/storage-blob/src/utils/utils.common.ts +++ b/sdk/storage/storage-blob/src/utils/utils.common.ts @@ -1,18 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { TokenCredential } from "@azure/core-auth"; -import { HttpHeaders, createHttpHeaders } from "@azure/core-rest-pipeline"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { TokenCredential } from "@azure/core-auth"; +import type { HttpHeaders } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; import { isNode } from "@azure/core-util"; -import { +import type { BlobQueryArrowConfiguration, BlobQueryCsvTextConfiguration, BlobQueryJsonTextConfiguration, BlobQueryParquetConfiguration, } from "../Clients"; -import { +import type { QuerySerialization, BlobTags, BlobName, @@ -27,14 +28,14 @@ import { PathStylePorts, URLConstants, } from "./constants"; -import { +import type { Tags, ObjectReplicationPolicy, ObjectReplicationRule, ObjectReplicationStatus, HttpAuthorization, } from "../models"; -import { +import type { ListBlobsFlatSegmentResponseModel, BlobItemInternal as BlobItemInternalModel, ListBlobsHierarchySegmentResponseModel, @@ -42,7 +43,7 @@ import { PageBlobGetPageRangesDiffResponseModel, PageRangeInfo, } from "../generatedModels"; -import { HttpHeadersLike, WebResourceLike } from "@azure/core-http-compat"; +import type { HttpHeadersLike, WebResourceLike } from "@azure/core-http-compat"; /** * Reserved URL characters must be properly escaped for Storage services like Blob or File. diff --git a/sdk/storage/storage-blob/test/aborter.spec.ts b/sdk/storage/storage-blob/test/aborter.spec.ts index ef57d983f097..f2720e122203 100644 --- a/sdk/storage/storage-blob/test/aborter.spec.ts +++ b/sdk/storage/storage-blob/test/aborter.spec.ts @@ -3,10 +3,10 @@ import { assert } from "chai"; -import { ContainerClient } from "../src"; +import type { ContainerClient } from "../src"; import { getBSU, getUniqueName, recorderEnvSetup, uriSanitizers } from "./utils"; import { Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Aborter", () => { let containerName: string; diff --git a/sdk/storage/storage-blob/test/appendblobclient.spec.ts b/sdk/storage/storage-blob/test/appendblobclient.spec.ts index 835783f7c8dc..4f367fd3596f 100644 --- a/sdk/storage/storage-blob/test/appendblobclient.spec.ts +++ b/sdk/storage/storage-blob/test/appendblobclient.spec.ts @@ -3,9 +3,10 @@ import { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; -import { AppendBlobClient, ContainerClient } from "../src"; +import type { ContainerClient } from "../src"; +import { AppendBlobClient } from "../src"; import { bodyToString, configureBlobStorageClient, diff --git a/sdk/storage/storage-blob/test/blobbatch.spec.ts b/sdk/storage/storage-blob/test/blobbatch.spec.ts index 83639c8d8904..64f264dadca3 100644 --- a/sdk/storage/storage-blob/test/blobbatch.spec.ts +++ b/sdk/storage/storage-blob/test/blobbatch.spec.ts @@ -14,15 +14,14 @@ import { } from "./utils"; import { isLiveMode, Recorder } from "@azure-tools/test-recorder"; import { BlobBatch } from "../src"; -import { +import type { ContainerClient, BlockBlobClient, - BlobServiceClient, - newPipeline, BlobBatchClient, StorageSharedKeyCredential, } from "../src"; -import { Context } from "mocha"; +import { BlobServiceClient, newPipeline } from "../src"; +import type { Context } from "mocha"; describe("BlobBatch", () => { let blobServiceClient: BlobServiceClient; diff --git a/sdk/storage/storage-blob/test/blobclient.spec.ts b/sdk/storage/storage-blob/test/blobclient.spec.ts index 05419a2d3c1b..6458306343d7 100644 --- a/sdk/storage/storage-blob/test/blobclient.spec.ts +++ b/sdk/storage/storage-blob/test/blobclient.spec.ts @@ -18,19 +18,17 @@ import { uriSanitizers, } from "./utils"; import { delay, isLiveMode, Recorder } from "@azure-tools/test-recorder"; -import { - BlobClient, +import type { BlockBlobClient, ContainerClient, - BlockBlobTier, - BlobServiceClient, RehydratePriority, ObjectReplicationPolicy, BlobImmutabilityPolicyMode, } from "../src"; +import { BlobClient, BlockBlobTier, BlobServiceClient } from "../src"; import { Test_CPK_INFO } from "./utils/fakeTestSecrets"; import { base64encode } from "../src/utils/utils.common"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { isRestError } from "@azure/core-rest-pipeline"; describe("BlobClient", () => { diff --git a/sdk/storage/storage-blob/test/blobclientpollers.spec.ts b/sdk/storage/storage-blob/test/blobclientpollers.spec.ts index 5ff010659e44..280b73a39a36 100644 --- a/sdk/storage/storage-blob/test/blobclientpollers.spec.ts +++ b/sdk/storage/storage-blob/test/blobclientpollers.spec.ts @@ -10,8 +10,13 @@ import { testPollerProperties, uriSanitizers, } from "./utils/testutils.common"; -import { BlobClient, BlockBlobClient, ContainerClient, BlobBeginCopyFromURLResponse } from "../src"; -import { Context } from "mocha"; +import type { + BlobClient, + BlockBlobClient, + ContainerClient, + BlobBeginCopyFromURLResponse, +} from "../src"; +import type { Context } from "mocha"; import { isNodeLike } from "@azure/core-util"; describe("BlobClient beginCopyFromURL Poller", () => { diff --git a/sdk/storage/storage-blob/test/blobserviceclient.spec.ts b/sdk/storage/storage-blob/test/blobserviceclient.spec.ts index 6b7becf52e31..05bde8f8e7c2 100644 --- a/sdk/storage/storage-blob/test/blobserviceclient.spec.ts +++ b/sdk/storage/storage-blob/test/blobserviceclient.spec.ts @@ -17,8 +17,8 @@ import { } from "./utils"; import { delay, Recorder, isLiveMode } from "@azure-tools/test-recorder"; import { getYieldedValue } from "@azure-tools/test-utils"; -import { Tags } from "../src/models"; -import { Context } from "mocha"; +import type { Tags } from "../src/models"; +import type { Context } from "mocha"; describe("BlobServiceClient", () => { let recorder: Recorder; diff --git a/sdk/storage/storage-blob/test/blobversioning.spec.ts b/sdk/storage/storage-blob/test/blobversioning.spec.ts index 14ac669e2036..1414411bac61 100644 --- a/sdk/storage/storage-blob/test/blobversioning.spec.ts +++ b/sdk/storage/storage-blob/test/blobversioning.spec.ts @@ -13,16 +13,16 @@ import { uriSanitizers, } from "./utils"; import { isLiveMode, Recorder } from "@azure-tools/test-recorder"; -import { +import type { ContainerClient, BlobServiceClient, BlobClient, BlockBlobClient, BlockBlobUploadResponse, - BlobBatch, } from "../src"; +import { BlobBatch } from "../src"; import { setURLParameter } from "../src/utils/utils.common"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Blob versioning", () => { let blobServiceClient: BlobServiceClient; diff --git a/sdk/storage/storage-blob/test/blockblobclient.spec.ts b/sdk/storage/storage-blob/test/blockblobclient.spec.ts index b171f7fdb7e4..0c26a86e8742 100644 --- a/sdk/storage/storage-blob/test/blockblobclient.spec.ts +++ b/sdk/storage/storage-blob/test/blockblobclient.spec.ts @@ -14,10 +14,11 @@ import { recorderEnvSetup, uriSanitizers, } from "./utils"; -import { ContainerClient, BlobClient, BlockBlobClient } from "../src"; +import type { ContainerClient, BlobClient } from "../src"; +import { BlockBlobClient } from "../src"; import { Test_CPK_INFO } from "./utils/fakeTestSecrets"; import { BlockBlobTier } from "../src"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { isNode } from "@azure/core-util"; describe("BlockBlobClient", () => { diff --git a/sdk/storage/storage-blob/test/browser/highlevel.browser.spec.ts b/sdk/storage/storage-blob/test/browser/highlevel.browser.spec.ts index 8760ea4ad825..cb4e6875c847 100644 --- a/sdk/storage/storage-blob/test/browser/highlevel.browser.spec.ts +++ b/sdk/storage/storage-blob/test/browser/highlevel.browser.spec.ts @@ -15,8 +15,8 @@ import { uriSanitizers, } from "../utils/index.browser"; import { isLiveMode, Recorder } from "@azure-tools/test-recorder"; -import { ContainerClient, BlobClient, BlockBlobClient, BlobServiceClient } from "../../src"; -import { Context } from "mocha"; +import type { ContainerClient, BlobClient, BlockBlobClient, BlobServiceClient } from "../../src"; +import type { Context } from "mocha"; describe("Highlevel", () => { let containerName: string; diff --git a/sdk/storage/storage-blob/test/containerclient.spec.ts b/sdk/storage/storage-blob/test/containerclient.spec.ts index c9ce8640829f..6c000ed81d10 100644 --- a/sdk/storage/storage-blob/test/containerclient.spec.ts +++ b/sdk/storage/storage-blob/test/containerclient.spec.ts @@ -15,17 +15,16 @@ import { } from "./utils"; import { delay, Recorder } from "@azure-tools/test-recorder"; import { getYieldedValue, assert } from "@azure-tools/test-utils"; -import { - ContainerClient, - BlockBlobTier, +import type { ContainerListBlobHierarchySegmentResponse, BlobServiceClient, BlockBlobClient, BlobHTTPHeaders, } from "../src"; +import { ContainerClient, BlockBlobTier } from "../src"; import { Test_CPK_INFO } from "./utils/fakeTestSecrets"; -import { Context } from "mocha"; -import { Tags } from "../src/models"; +import type { Context } from "mocha"; +import type { Tags } from "../src/models"; describe("ContainerClient", () => { let blobServiceClient: BlobServiceClient; diff --git a/sdk/storage/storage-blob/test/encrytion.spec.ts b/sdk/storage/storage-blob/test/encrytion.spec.ts index 55a7e71436c5..0fcbf39942a1 100644 --- a/sdk/storage/storage-blob/test/encrytion.spec.ts +++ b/sdk/storage/storage-blob/test/encrytion.spec.ts @@ -9,10 +9,10 @@ import { getEncryptionScope_2, getUniqueName, } from "./utils"; -import { Recorder } from "@azure-tools/test-recorder"; -import { BlobServiceClient, BlobClient, BlockBlobClient, ContainerClient } from "../src"; +import type { Recorder } from "@azure-tools/test-recorder"; +import type { BlobServiceClient, BlobClient, BlockBlobClient, ContainerClient } from "../src"; import { Test_CPK_INFO } from "./utils/fakeTestSecrets"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Encryption Scope", function () { let blobServiceClient: BlobServiceClient; diff --git a/sdk/storage/storage-blob/test/leaseclient.spec.ts b/sdk/storage/storage-blob/test/leaseclient.spec.ts index 79b4bc6e114d..80cfe7c35ee4 100644 --- a/sdk/storage/storage-blob/test/leaseclient.spec.ts +++ b/sdk/storage/storage-blob/test/leaseclient.spec.ts @@ -5,8 +5,8 @@ import { assert } from "chai"; import { getBSU, getUniqueName, recorderEnvSetup, uriSanitizers } from "./utils"; import { delay, Recorder } from "@azure-tools/test-recorder"; -import { ContainerClient, BlobClient, BlockBlobClient, BlobServiceClient } from "../src"; -import { Context } from "mocha"; +import type { ContainerClient, BlobClient, BlockBlobClient, BlobServiceClient } from "../src"; +import type { Context } from "mocha"; describe("LeaseClient from Container", () => { let blobServiceClient: BlobServiceClient; diff --git a/sdk/storage/storage-blob/test/node/appendblobclient.spec.ts b/sdk/storage/storage-blob/test/node/appendblobclient.spec.ts index 62fa21875b87..c24c8c35d18f 100644 --- a/sdk/storage/storage-blob/test/node/appendblobclient.spec.ts +++ b/sdk/storage/storage-blob/test/node/appendblobclient.spec.ts @@ -3,14 +3,12 @@ import { assert } from "chai"; +import type { StorageSharedKeyCredential, ContainerClient, BlobServiceClient } from "../../src"; import { AppendBlobClient, newPipeline, - StorageSharedKeyCredential, - ContainerClient, generateBlobSASQueryParameters, BlobSASPermissions, - BlobServiceClient, } from "../../src"; import { getBSU, @@ -23,11 +21,11 @@ import { configureBlobStorageClient, SimpleTokenCredential, } from "../utils"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { assertClientUsesTokenCredential } from "../utils/assert"; import { Recorder, isLiveMode } from "@azure-tools/test-recorder"; import { Test_CPK_INFO } from "../utils/fakeTestSecrets"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { getBlobServiceAccountAudience } from "../../src/models"; import { createTestCredential } from "@azure-tools/test-credential"; diff --git a/sdk/storage/storage-blob/test/node/blobclient.spec.ts b/sdk/storage/storage-blob/test/node/blobclient.spec.ts index fc3482bea94c..689d0e4c64fc 100644 --- a/sdk/storage/storage-blob/test/node/blobclient.spec.ts +++ b/sdk/storage/storage-blob/test/node/blobclient.spec.ts @@ -5,20 +5,22 @@ import { assert } from "chai"; import { readFileSync, unlinkSync, existsSync, mkdirSync } from "fs"; import { join } from "path"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { isNode } from "@azure/core-util"; import { delay, isLiveMode, Recorder } from "@azure-tools/test-recorder"; -import { - BlobClient, +import type { BlobImmutabilityPolicyMode, - BlobSASPermissions, BlobServiceClient, BlockBlobClient, ContainerClient, + StorageSharedKeyCredential, +} from "../../src"; +import { + BlobClient, + BlobSASPermissions, generateBlobSASQueryParameters, newPipeline, - StorageSharedKeyCredential, } from "../../src"; import { bodyToString, @@ -36,7 +38,7 @@ import { import { assertClientUsesTokenCredential } from "../utils/assert"; import { readStreamToLocalFileWithLogs } from "../utils/testutils.node"; import { streamToBuffer3 } from "../../src/utils/utils.node"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { Test_CPK_INFO } from "../utils/fakeTestSecrets"; describe("BlobClient Node.js only", () => { diff --git a/sdk/storage/storage-blob/test/node/blobserviceclient.spec.ts b/sdk/storage/storage-blob/test/node/blobserviceclient.spec.ts index 0acf40a69e92..34e537030e7a 100644 --- a/sdk/storage/storage-blob/test/node/blobserviceclient.spec.ts +++ b/sdk/storage/storage-blob/test/node/blobserviceclient.spec.ts @@ -10,14 +10,10 @@ import { recorderEnvSetup, SimpleTokenCredential, } from "../utils"; -import { - BlobServiceClient, - getBlobServiceAccountAudience, - newPipeline, - StorageSharedKeyCredential, -} from "../../src"; +import type { StorageSharedKeyCredential } from "../../src"; +import { BlobServiceClient, getBlobServiceAccountAudience, newPipeline } from "../../src"; import { Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createTestCredential } from "@azure-tools/test-credential"; describe("BlobServiceClient Node.js only", () => { diff --git a/sdk/storage/storage-blob/test/node/blockblobclient.spec.ts b/sdk/storage/storage-blob/test/node/blockblobclient.spec.ts index 7acb6a3142a4..bb4ad9d959b6 100644 --- a/sdk/storage/storage-blob/test/node/blockblobclient.spec.ts +++ b/sdk/storage/storage-blob/test/node/blockblobclient.spec.ts @@ -18,26 +18,28 @@ import { recorderEnvSetup, uriSanitizers, } from "../utils"; -import { - BlockBlobClient, - newPipeline, +import type { StorageSharedKeyCredential, BlobClient, ContainerClient, BlobServiceClient, +} from "../../src"; +import { + BlockBlobClient, + newPipeline, generateBlobSASQueryParameters, BlobSASPermissions, getBlobServiceAccountAudience, SASProtocol, AnonymousCredential, } from "../../src"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { assertClientUsesTokenCredential } from "../utils/assert"; import { isLiveMode, Recorder } from "@azure-tools/test-recorder"; import { streamToBuffer3 } from "../../src/utils/utils.node"; import * as crypto from "crypto"; import { BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES } from "../../src/utils/constants"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createTestCredential } from "@azure-tools/test-credential"; describe("BlockBlobClient Node.js only", () => { diff --git a/sdk/storage/storage-blob/test/node/containerclient.spec.ts b/sdk/storage/storage-blob/test/node/containerclient.spec.ts index 0aebc9cdc685..1ee470aff162 100644 --- a/sdk/storage/storage-blob/test/node/containerclient.spec.ts +++ b/sdk/storage/storage-blob/test/node/containerclient.spec.ts @@ -11,18 +11,14 @@ import { getUniqueName, recorderEnvSetup, } from "../utils"; -import { PublicAccessType, getBlobServiceAccountAudience } from "../../src"; -import { - ContainerClient, - newPipeline, - StorageSharedKeyCredential, - ContainerSASPermissions, - BlobServiceClient, -} from "../../src"; -import { TokenCredential } from "@azure/core-auth"; +import type { PublicAccessType } from "../../src"; +import { getBlobServiceAccountAudience } from "../../src"; +import type { StorageSharedKeyCredential, BlobServiceClient } from "../../src"; +import { ContainerClient, newPipeline, ContainerSASPermissions } from "../../src"; +import type { TokenCredential } from "@azure/core-auth"; import { assertClientUsesTokenCredential } from "../utils/assert"; import { Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createTestCredential } from "@azure-tools/test-credential"; describe("ContainerClient Node.js only", () => { diff --git a/sdk/storage/storage-blob/test/node/emulator-tests.spec.ts b/sdk/storage/storage-blob/test/node/emulator-tests.spec.ts index c3e8a6b39f71..f4a7c36bc211 100644 --- a/sdk/storage/storage-blob/test/node/emulator-tests.spec.ts +++ b/sdk/storage/storage-blob/test/node/emulator-tests.spec.ts @@ -11,7 +11,7 @@ import { } from "../../src"; import { getConnectionStringFromEnvironment, bodyToString, getUniqueName } from "../utils"; import { env } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; // Expected environment variable to run this test-suite // STORAGE_CONNECTION_STRING=UseDevelopmentStorage=true diff --git a/sdk/storage/storage-blob/test/node/highlevel.node.spec.ts b/sdk/storage/storage-blob/test/node/highlevel.node.spec.ts index e837a5a88b84..6b40120ed409 100644 --- a/sdk/storage/storage-blob/test/node/highlevel.node.spec.ts +++ b/sdk/storage/storage-blob/test/node/highlevel.node.spec.ts @@ -14,14 +14,14 @@ import { createRandomLocalFileWithTotalSize, getUniqueName, } from "../utils"; -import { RetriableReadableStreamOptions } from "../../src/utils/RetriableReadableStream"; +import type { RetriableReadableStreamOptions } from "../../src/utils/RetriableReadableStream"; import { isLiveMode, Recorder } from "@azure-tools/test-recorder"; -import { ContainerClient, BlobClient, BlockBlobClient, BlobServiceClient } from "../../src"; +import type { ContainerClient, BlobClient, BlockBlobClient, BlobServiceClient } from "../../src"; import { readStreamToLocalFileWithLogs } from "../utils/testutils.node"; import { BLOCK_BLOB_MAX_STAGE_BLOCK_BYTES } from "../../src/utils/constants"; import { Test_CPK_INFO } from "../utils/fakeTestSecrets"; import { streamToBuffer2 } from "../../src/utils/utils.node"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { isNodeLike } from "@azure/core-util"; describe("Highlevel", () => { diff --git a/sdk/storage/storage-blob/test/node/pageblobclient.spec.ts b/sdk/storage/storage-blob/test/node/pageblobclient.spec.ts index 0efbaf120d25..7b8024a826be 100644 --- a/sdk/storage/storage-blob/test/node/pageblobclient.spec.ts +++ b/sdk/storage/storage-blob/test/node/pageblobclient.spec.ts @@ -14,23 +14,25 @@ import { configureBlobStorageClient, SimpleTokenCredential, } from "../utils"; -import { - newPipeline, - PageBlobClient, +import type { StorageSharedKeyCredential, ContainerClient, BlobClient, + BlobServiceClient, +} from "../../src"; +import { + newPipeline, + PageBlobClient, generateBlobSASQueryParameters, BlobSASPermissions, - BlobServiceClient, StorageBlobAudience, getBlobServiceAccountAudience, } from "../../src"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { assertClientUsesTokenCredential } from "../utils/assert"; import { delay, Recorder, isLiveMode } from "@azure-tools/test-recorder"; import { Test_CPK_INFO } from "../utils/fakeTestSecrets"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createTestCredential } from "@azure-tools/test-credential"; describe("PageBlobClient Node.js only", () => { diff --git a/sdk/storage/storage-blob/test/node/sas.spec.ts b/sdk/storage/storage-blob/test/node/sas.spec.ts index 1d4798a350a7..cfcad44229f7 100644 --- a/sdk/storage/storage-blob/test/node/sas.spec.ts +++ b/sdk/storage/storage-blob/test/node/sas.spec.ts @@ -3,6 +3,12 @@ import { assert } from "chai"; +import type { + StorageSharedKeyCredential, + Tags, + UserDelegationKey, + BlobImmutabilityPolicyMode, +} from "../../src"; import { AccountSASPermissions, AccountSASResourceTypes, @@ -15,14 +21,10 @@ import { generateBlobSASQueryParameters, PageBlobClient, BlobServiceClient, - StorageSharedKeyCredential, newPipeline, BlobClient, - Tags, SASProtocol, - UserDelegationKey, BlobBatch, - BlobImmutabilityPolicyMode, } from "../../src"; import { configureBlobStorageClient, @@ -37,7 +39,7 @@ import { } from "../utils"; import { delay, isLiveMode, Recorder, env } from "@azure-tools/test-recorder"; import { SERVICE_VERSION } from "../../src/utils/constants"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { UserDelegationKeyCredential } from "../../src/credentials/UserDelegationKeyCredential"; describe("Shared Access Signature (SAS) generation Node.js only", () => { diff --git a/sdk/storage/storage-blob/test/node/utils.spec.ts b/sdk/storage/storage-blob/test/node/utils.spec.ts index cdfb0c91257c..cb3a269d1641 100644 --- a/sdk/storage/storage-blob/test/node/utils.spec.ts +++ b/sdk/storage/storage-blob/test/node/utils.spec.ts @@ -6,16 +6,15 @@ import { randomBytes } from "crypto"; import * as fs from "fs"; import * as path from "path"; import { delay, extractConnectionStringParts } from "../../src/utils/utils.common"; -import { Readable, ReadableOptions, PassThrough } from "stream"; +import type { ReadableOptions } from "stream"; +import { Readable, PassThrough } from "stream"; import { readStreamToLocalFile, streamToBuffer2, streamToBuffer3, } from "../../src/utils/utils.node"; -import { - ReadableStreamGetter, - RetriableReadableStream, -} from "../../src/utils/RetriableReadableStream"; +import type { ReadableStreamGetter } from "../../src/utils/RetriableReadableStream"; +import { RetriableReadableStream } from "../../src/utils/RetriableReadableStream"; describe("Utility Helpers Node.js only", () => { const protocol = "https"; diff --git a/sdk/storage/storage-blob/test/pageblobclient.spec.ts b/sdk/storage/storage-blob/test/pageblobclient.spec.ts index a2a2889c88d5..04406e57e49d 100644 --- a/sdk/storage/storage-blob/test/pageblobclient.spec.ts +++ b/sdk/storage/storage-blob/test/pageblobclient.spec.ts @@ -12,15 +12,10 @@ import { recorderEnvSetup, uriSanitizers, } from "./utils"; -import { - ContainerClient, - BlobClient, - PageBlobClient, - PremiumPageBlobTier, - BlobServiceClient, -} from "../src"; +import type { ContainerClient, BlobClient, BlobServiceClient } from "../src"; +import { PageBlobClient, PremiumPageBlobTier } from "../src"; import { Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { getYieldedValue } from "@azure-tools/test-utils"; describe("PageBlobClient", () => { diff --git a/sdk/storage/storage-blob/test/retrypolicy.spec.ts b/sdk/storage/storage-blob/test/retrypolicy.spec.ts index 2f3eb3ab61ff..dabb2c97de98 100644 --- a/sdk/storage/storage-blob/test/retrypolicy.spec.ts +++ b/sdk/storage/storage-blob/test/retrypolicy.spec.ts @@ -2,13 +2,14 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Pipeline, PipelineRequest, SendRequest } from "@azure/core-rest-pipeline"; +import type { Pipeline, PipelineRequest, SendRequest } from "@azure/core-rest-pipeline"; -import { ContainerClient, RestError, BlobServiceClient } from "../src"; +import type { ContainerClient, BlobServiceClient } from "../src"; +import { RestError } from "../src"; import { getBSU, getUniqueName, recorderEnvSetup, uriSanitizers } from "./utils"; import { injectorPolicy, injectorPolicyName } from "./utils/InjectorPolicy"; import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("RetryPolicy", () => { let blobServiceClient: BlobServiceClient; diff --git a/sdk/storage/storage-blob/test/specialnaming.spec.ts b/sdk/storage/storage-blob/test/specialnaming.spec.ts index fffe4f969cfb..03347cd97518 100644 --- a/sdk/storage/storage-blob/test/specialnaming.spec.ts +++ b/sdk/storage/storage-blob/test/specialnaming.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { BlockBlobClient, BlobServiceClient } from "../src"; +import type { BlobServiceClient } from "../src"; +import { BlockBlobClient } from "../src"; import { getBSU, getRecorderUniqueVariable, @@ -12,8 +13,8 @@ import { import { assert } from "chai"; import { appendToURLPath, EscapePath } from "../src/utils/utils.common"; import { Recorder } from "@azure-tools/test-recorder"; -import { ContainerClient } from "../src"; -import { Context } from "mocha"; +import type { ContainerClient } from "../src"; +import type { Context } from "mocha"; describe("Special Naming Tests", () => { let containerName: string; diff --git a/sdk/storage/storage-blob/test/utils/InjectorPolicy.ts b/sdk/storage/storage-blob/test/utils/InjectorPolicy.ts index a4288244ce14..db9d059215b5 100644 --- a/sdk/storage/storage-blob/test/utils/InjectorPolicy.ts +++ b/sdk/storage/storage-blob/test/utils/InjectorPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelineRequest, PipelineResponse, SendRequest, diff --git a/sdk/storage/storage-blob/test/utils/assert.ts b/sdk/storage/storage-blob/test/utils/assert.ts index 30ca27bb4d30..1ee250da1e60 100644 --- a/sdk/storage/storage-blob/test/utils/assert.ts +++ b/sdk/storage/storage-blob/test/utils/assert.ts @@ -3,7 +3,7 @@ import { isTokenCredential } from "@azure/core-auth"; import { assert } from "chai"; -import { StorageClient } from "../../src/StorageClient"; +import type { StorageClient } from "../../src/StorageClient"; export function assertClientUsesTokenCredential(client: StorageClient): void { const credential = (client as any).credential; diff --git a/sdk/storage/storage-blob/test/utils/fakeTestSecrets.ts b/sdk/storage/storage-blob/test/utils/fakeTestSecrets.ts index 6c1292495d07..7a249aeb96e3 100644 --- a/sdk/storage/storage-blob/test/utils/fakeTestSecrets.ts +++ b/sdk/storage/storage-blob/test/utils/fakeTestSecrets.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CpkInfo } from "../../src"; +import type { CpkInfo } from "../../src"; export const Test_CPK_INFO: CpkInfo = { encryptionKey: "MDEyMzQ1NjcwMTIzNDU2NzAxMjM0NTY3MDEyMzQ1Njc=", diff --git a/sdk/storage/storage-blob/test/utils/index.browser.ts b/sdk/storage/storage-blob/test/utils/index.browser.ts index 5338ecc69f1b..e41ed5554f4e 100644 --- a/sdk/storage/storage-blob/test/utils/index.browser.ts +++ b/sdk/storage/storage-blob/test/utils/index.browser.ts @@ -1,12 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AnonymousCredential, StoragePipelineOptions } from "../../src"; +import type { StoragePipelineOptions } from "../../src"; +import { AnonymousCredential } from "../../src"; import { BlobServiceClient } from "../../src"; import { newPipeline } from "../../src"; import { SimpleTokenCredential, configureBlobStorageClient } from "./testutils.common"; -import { TokenCredential } from "@azure/core-auth"; -import { env, Recorder } from "@azure-tools/test-recorder"; +import type { TokenCredential } from "@azure/core-auth"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; export * from "./testutils.common"; diff --git a/sdk/storage/storage-blob/test/utils/index.ts b/sdk/storage/storage-blob/test/utils/index.ts index 162c7bf3b900..ea37a6650b51 100644 --- a/sdk/storage/storage-blob/test/utils/index.ts +++ b/sdk/storage/storage-blob/test/utils/index.ts @@ -8,7 +8,8 @@ import { config } from "dotenv"; import { SimpleTokenCredential } from "./testutils.common"; import { createTestCredential } from "@azure-tools/test-credential"; -import { StoragePipelineOptions, StorageSharedKeyCredential } from "../../src"; +import type { StoragePipelineOptions } from "../../src"; +import { StorageSharedKeyCredential } from "../../src"; import { BlobServiceClient } from "../../src"; import { getUniqueName, configureBlobStorageClient } from "./testutils.common"; import { newPipeline } from "../../src"; @@ -20,8 +21,9 @@ import { AccountSASServices, } from "../../src"; import { extractConnectionStringParts } from "../../src/utils/utils.common"; -import { AccessToken, TokenCredential } from "@azure/core-auth"; -import { env, Recorder } from "@azure-tools/test-recorder"; +import type { AccessToken, TokenCredential } from "@azure/core-auth"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; export * from "./testutils.common"; config(); diff --git a/sdk/storage/storage-blob/test/utils/testutils.common.ts b/sdk/storage/storage-blob/test/utils/testutils.common.ts index e460090acd7f..a046f480ed4e 100644 --- a/sdk/storage/storage-blob/test/utils/testutils.common.ts +++ b/sdk/storage/storage-blob/test/utils/testutils.common.ts @@ -2,11 +2,12 @@ // Licensed under the MIT License. import { padStart } from "../../src/utils/utils.common"; -import { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-auth"; -import { isPlaybackMode, Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; -import { StorageClient } from "../../src/StorageClient"; -import { Pipeline } from "@azure/core-rest-pipeline"; -import { +import type { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-auth"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { isPlaybackMode, Recorder } from "@azure-tools/test-recorder"; +import type { StorageClient } from "../../src/StorageClient"; +import type { Pipeline } from "@azure/core-rest-pipeline"; +import type { FindReplaceSanitizer, RegexSanitizer, } from "@azure-tools/test-recorder/types/src/utils/utils"; diff --git a/sdk/storage/storage-file-datalake/review/storage-file-datalake.api.md b/sdk/storage/storage-file-datalake/review/storage-file-datalake.api.md index a3393da2477e..b9f21565e785 100644 --- a/sdk/storage/storage-file-datalake/review/storage-file-datalake.api.md +++ b/sdk/storage/storage-file-datalake/review/storage-file-datalake.api.md @@ -4,15 +4,15 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; +import type { AbortSignalLike } from '@azure/abort-controller'; import { AnonymousCredential } from '@azure/storage-blob'; import { AnonymousCredentialPolicy } from '@azure/storage-blob'; import { AzureLogger } from '@azure/logger'; import { BaseRequestPolicy } from '@azure/storage-blob'; -import { BlobLeaseClient } from '@azure/storage-blob'; -import { BlobQueryArrowConfiguration } from '@azure/storage-blob'; -import { ContainerRenameResponse } from '@azure/storage-blob'; -import { ContainerUndeleteResponse } from '@azure/storage-blob'; +import type { BlobLeaseClient } from '@azure/storage-blob'; +import type { BlobQueryArrowConfiguration } from '@azure/storage-blob'; +import type { ContainerRenameResponse } from '@azure/storage-blob'; +import type { ContainerUndeleteResponse } from '@azure/storage-blob'; import * as coreClient from '@azure/core-client'; import * as coreHttpCompat from '@azure/core-http-compat'; import * as coreRestPipeline from '@azure/core-rest-pipeline'; @@ -24,29 +24,29 @@ import { HttpHeadersLike as HttpHeaders } from '@azure/core-http-compat'; import { CompatResponse as HttpOperationResponse } from '@azure/core-http-compat'; import { RequestBodyType as HttpRequestBody } from '@azure/core-rest-pipeline'; import { isPipelineLike } from '@azure/storage-blob'; -import { KeepAliveOptions } from '@azure/core-http-compat'; +import type { KeepAliveOptions } from '@azure/core-http-compat'; import { Lease } from '@azure/storage-blob'; import { LeaseAccessConditions } from '@azure/storage-blob'; import { LeaseOperationOptions } from '@azure/storage-blob'; import { LeaseOperationResponse } from '@azure/storage-blob'; -import { ModifiedAccessConditions as ModifiedAccessConditions_3 } from '@azure/storage-blob'; -import { OperationTracingOptions } from '@azure/core-tracing'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { ModifiedAccessConditions as ModifiedAccessConditions_3 } from '@azure/storage-blob'; +import type { OperationTracingOptions } from '@azure/core-tracing'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; import { Pipeline } from '@azure/storage-blob'; import { PipelineLike } from '@azure/storage-blob'; import { PipelineOptions } from '@azure/storage-blob'; -import { ProxySettings } from '@azure/core-rest-pipeline'; -import { Readable } from 'stream'; +import type { ProxySettings } from '@azure/core-rest-pipeline'; +import type { Readable } from 'stream'; import { RequestPolicy } from '@azure/core-http-compat'; import { RequestPolicyFactory } from '@azure/core-http-compat'; import { RequestPolicyOptionsLike as RequestPolicyOptions } from '@azure/core-http-compat'; import { RestError } from '@azure/core-rest-pipeline'; import { ServiceClientOptions } from '@azure/storage-blob'; -import { ServiceGetPropertiesOptions } from '@azure/storage-blob'; +import type { ServiceGetPropertiesOptions } from '@azure/storage-blob'; import { ServiceListContainersSegmentResponse } from '@azure/storage-blob'; -import { ServiceRenameContainerOptions } from '@azure/storage-blob'; -import { ServiceSetPropertiesOptions } from '@azure/storage-blob'; -import { ServiceSetPropertiesResponse } from '@azure/storage-blob'; +import type { ServiceRenameContainerOptions } from '@azure/storage-blob'; +import type { ServiceSetPropertiesOptions } from '@azure/storage-blob'; +import type { ServiceSetPropertiesResponse } from '@azure/storage-blob'; import { StorageBrowserPolicy } from '@azure/storage-blob'; import { StorageBrowserPolicyFactory } from '@azure/storage-blob'; import { StorageRetryOptions } from '@azure/storage-blob'; @@ -55,12 +55,12 @@ import { StorageRetryPolicyFactory } from '@azure/storage-blob'; import { StorageRetryPolicyType } from '@azure/storage-blob'; import { StorageSharedKeyCredential } from '@azure/storage-blob'; import { StorageSharedKeyCredentialPolicy } from '@azure/storage-blob'; -import { TokenCredential } from '@azure/core-auth'; -import { TransferProgressEvent } from '@azure/core-rest-pipeline'; -import { UserAgentPolicyOptions } from '@azure/core-rest-pipeline'; +import type { TokenCredential } from '@azure/core-auth'; +import type { TransferProgressEvent } from '@azure/core-rest-pipeline'; +import type { UserAgentPolicyOptions } from '@azure/core-rest-pipeline'; import { UserDelegationKeyModel } from '@azure/storage-blob'; import { WebResourceLike as WebResource } from '@azure/core-http-compat'; -import { WithResponse } from '@azure/storage-blob'; +import type { WithResponse } from '@azure/storage-blob'; // @public export interface AccessControlChangeCounters { diff --git a/sdk/storage/storage-file-datalake/src/DataLakeFileSystemClient.ts b/sdk/storage/storage-file-datalake/src/DataLakeFileSystemClient.ts index b24a46f18cc5..a5c7c4cfa002 100644 --- a/sdk/storage/storage-file-datalake/src/DataLakeFileSystemClient.ts +++ b/sdk/storage/storage-file-datalake/src/DataLakeFileSystemClient.ts @@ -1,16 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; -import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import type { TokenCredential } from "@azure/core-auth"; +import type { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; import { ContainerClient } from "@azure/storage-blob"; -import { isPipelineLike, newPipeline, Pipeline, StoragePipelineOptions } from "./Pipeline"; +import type { Pipeline, StoragePipelineOptions } from "./Pipeline"; +import { isPipelineLike, newPipeline } from "./Pipeline"; import { StorageSharedKeyCredential } from "./credentials/StorageSharedKeyCredential"; import { AnonymousCredential } from "@azure/storage-blob"; import { DataLakeLeaseClient } from "./DataLakeLeaseClient"; // eslint-disable-next-line @typescript-eslint/no-redeclare import { FileSystemOperationsImpl as FileSystem } from "./generated/src/operations"; -import { +import type { AccessPolicy, FileSystemCreateOptions, FileSystemCreateResponse, @@ -863,7 +864,7 @@ export class DataLakeFileSystemClient extends StorageClient { * @param userDelegationKey - Return value of `blobServiceClient.getUserDelegationKey()` * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token. */ - /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/ + public generateUserDelegationSasStringToSign( options: FileSystemGenerateSasUrlOptions, userDelegationKey: UserDelegationKey, diff --git a/sdk/storage/storage-file-datalake/src/DataLakeLeaseClient.ts b/sdk/storage/storage-file-datalake/src/DataLakeLeaseClient.ts index 2c7851c6263b..586a483449fd 100644 --- a/sdk/storage/storage-file-datalake/src/DataLakeLeaseClient.ts +++ b/sdk/storage/storage-file-datalake/src/DataLakeLeaseClient.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { BlobLeaseClient } from "@azure/storage-blob"; +import type { BlobLeaseClient } from "@azure/storage-blob"; -import { Lease, LeaseOperationOptions, LeaseOperationResponse } from "./models"; +import type { Lease, LeaseOperationOptions, LeaseOperationResponse } from "./models"; import { tracingClient } from "./utils/tracing"; export class DataLakeLeaseClient { diff --git a/sdk/storage/storage-file-datalake/src/DataLakeServiceClient.ts b/sdk/storage/storage-file-datalake/src/DataLakeServiceClient.ts index 0925f6020ca0..a4b16d6114f5 100644 --- a/sdk/storage/storage-file-datalake/src/DataLakeServiceClient.ts +++ b/sdk/storage/storage-file-datalake/src/DataLakeServiceClient.ts @@ -1,22 +1,23 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { TokenCredential } from "@azure/core-auth"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; import { getDefaultProxySettings } from "@azure/core-rest-pipeline"; import { isNode } from "@azure/core-util"; -import { - BlobServiceClient, +import type { ServiceGetPropertiesOptions, ServiceSetPropertiesOptions, ServiceSetPropertiesResponse, } from "@azure/storage-blob"; -import { Pipeline, StoragePipelineOptions, isPipelineLike, newPipeline } from "./Pipeline"; +import { BlobServiceClient } from "@azure/storage-blob"; +import type { Pipeline, StoragePipelineOptions } from "./Pipeline"; +import { isPipelineLike, newPipeline } from "./Pipeline"; import { AnonymousCredential } from "@azure/storage-blob"; import { StorageSharedKeyCredential } from "./credentials/StorageSharedKeyCredential"; import { DataLakeFileSystemClient } from "./DataLakeFileSystemClient"; -import { +import type { FileSystemItem, FileSystemRenameResponse, ServiceGenerateAccountSasUrlOptions, @@ -33,7 +34,10 @@ import { extractConnectionStringParts, } from "./utils/utils.common"; import { toDfsEndpointUrl, toFileSystemPagedAsyncIterableIterator } from "./transforms"; -import { ServiceGetUserDelegationKeyOptions, ServiceGetUserDelegationKeyResponse } from "./models"; +import type { + ServiceGetUserDelegationKeyOptions, + ServiceGetUserDelegationKeyResponse, +} from "./models"; import { tracingClient } from "./utils/tracing"; import { AccountSASPermissions } from "./sas/AccountSASPermissions"; import { @@ -41,7 +45,7 @@ import { generateAccountSASQueryParametersInternal, } from "./sas/AccountSASSignatureValues"; import { AccountSASServices } from "./sas/AccountSASServices"; -import { DataLakeServiceGetPropertiesResponse, DataLakeServiceProperties } from "./index"; +import type { DataLakeServiceGetPropertiesResponse, DataLakeServiceProperties } from "./index"; /** * DataLakeServiceClient allows you to manipulate Azure @@ -69,7 +73,7 @@ export class DataLakeServiceClient extends StorageClient { * @param options - Optional. Options to configure the HTTP pipeline. */ // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line. - /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */ + public static fromConnectionString( connectionString: string, // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line. diff --git a/sdk/storage/storage-file-datalake/src/Pipeline.ts b/sdk/storage/storage-file-datalake/src/Pipeline.ts index 78b821f7e330..9ba4ca1f9235 100644 --- a/sdk/storage/storage-file-datalake/src/Pipeline.ts +++ b/sdk/storage/storage-file-datalake/src/Pipeline.ts @@ -1,6 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { + KeepAliveOptions, + ExtendedServiceClientOptions, + HttpPipelineLogLevel, +} from "@azure/core-http-compat"; import { CompatResponse as HttpOperationResponse, RequestPolicy as IHttpClient, @@ -9,28 +14,29 @@ import { RequestPolicyFactory, RequestPolicyOptionsLike as RequestPolicyOptions, WebResourceLike as WebResource, - KeepAliveOptions, - ExtendedServiceClientOptions, convertHttpClient, createRequestPolicyFactoryPolicy, - HttpPipelineLogLevel, } from "@azure/core-http-compat"; -import { - RequestBodyType as HttpRequestBody, +import type { ProxySettings as ProxyOptions, UserAgentPolicyOptions as UserAgentOptions, - bearerTokenAuthenticationPolicy, Pipeline as CorePipeline, - decompressResponsePolicyName, PipelinePolicy, HttpClient, } from "@azure/core-rest-pipeline"; +import { + RequestBodyType as HttpRequestBody, + bearerTokenAuthenticationPolicy, + decompressResponsePolicyName, +} from "@azure/core-rest-pipeline"; import { authorizeRequestOnTenantChallenge, createClientPipeline } from "@azure/core-client"; import { parseXML, stringifyXML } from "@azure/core-xml"; -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { logger } from "./log"; -import { StorageRetryOptions, StorageRetryPolicyFactory } from "@azure/storage-blob"; +import type { StorageRetryOptions } from "@azure/storage-blob"; +import { StorageRetryPolicyFactory } from "@azure/storage-blob"; import { StorageSharedKeyCredential } from "./credentials/StorageSharedKeyCredential"; import { AnonymousCredential } from "@azure/storage-blob"; import { diff --git a/sdk/storage/storage-file-datalake/src/StorageClient.ts b/sdk/storage/storage-file-datalake/src/StorageClient.ts index 338651aa74ec..fb4cddba09b9 100644 --- a/sdk/storage/storage-file-datalake/src/StorageClient.ts +++ b/sdk/storage/storage-file-datalake/src/StorageClient.ts @@ -1,16 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { StorageContextClient } from "./StorageContextClient"; -import { StorageClient as StorageClientContext } from "./generated/src"; -import { Pipeline, PipelineLike, StoragePipelineOptions } from "./Pipeline"; -import { BlobServiceClient, AnonymousCredential } from "@azure/storage-blob"; -import { StorageSharedKeyCredential } from "@azure/storage-blob"; +import type { StorageClient as StorageClientContext } from "./generated/src"; +import type { Pipeline, PipelineLike, StoragePipelineOptions } from "./Pipeline"; +import type { AnonymousCredential } from "@azure/storage-blob"; +import { BlobServiceClient } from "@azure/storage-blob"; +import type { StorageSharedKeyCredential } from "@azure/storage-blob"; import { toBlobEndpointUrl, toDfsEndpointUrl } from "./transforms"; import { escapeURLPath, getAccountNameFromUrl, getURLScheme, iEqual } from "./utils/utils.common"; -import { ExtendedServiceClientOptions } from "@azure/core-http-compat"; -import { HttpClient, Pipeline as CorePipeline } from "@azure/core-rest-pipeline"; -import { OperationTracingOptions } from "@azure/core-tracing"; +import type { ExtendedServiceClientOptions } from "@azure/core-http-compat"; +import type { HttpClient, Pipeline as CorePipeline } from "@azure/core-rest-pipeline"; +import type { OperationTracingOptions } from "@azure/core-tracing"; /** * An interface for options common to every remote operation. diff --git a/sdk/storage/storage-file-datalake/src/StorageContextClient.ts b/sdk/storage/storage-file-datalake/src/StorageContextClient.ts index fae7df9351fb..492637ea72e8 100644 --- a/sdk/storage/storage-file-datalake/src/StorageContextClient.ts +++ b/sdk/storage/storage-file-datalake/src/StorageContextClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationArguments, OperationSpec } from "@azure/core-client"; +import type { OperationArguments, OperationSpec } from "@azure/core-client"; import { isNode } from "@azure/core-util"; import { StorageClient } from "./generated/src"; diff --git a/sdk/storage/storage-file-datalake/src/clients.ts b/sdk/storage/storage-file-datalake/src/clients.ts index b55a7c78f9bc..368b165351cc 100644 --- a/sdk/storage/storage-file-datalake/src/clients.ts +++ b/sdk/storage/storage-file-datalake/src/clients.ts @@ -1,18 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { isTokenCredential, TokenCredential } from "@azure/core-auth"; -import { RequestBodyType as HttpRequestBody } from "@azure/core-rest-pipeline"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { RequestBodyType as HttpRequestBody } from "@azure/core-rest-pipeline"; import { isNode } from "@azure/core-util"; -import { isPipelineLike, newPipeline, Pipeline, StoragePipelineOptions } from "./Pipeline"; +import type { Pipeline, StoragePipelineOptions } from "./Pipeline"; +import { isPipelineLike, newPipeline } from "./Pipeline"; import { BlobClient, BlockBlobClient } from "@azure/storage-blob"; import { AnonymousCredential } from "@azure/storage-blob"; import { StorageSharedKeyCredential } from "./credentials/StorageSharedKeyCredential"; -import { Readable } from "stream"; +import type { Readable } from "stream"; import { BufferScheduler } from "../../storage-common/src"; import { DataLakeLeaseClient } from "./DataLakeLeaseClient"; import { PathOperationsImpl as Path } from "./generated/src/operations"; -import { +import type { AccessControlChanges, DirectoryCreateIfNotExistsOptions, DirectoryCreateIfNotExistsResponse, @@ -69,7 +71,7 @@ import { RemovePathAccessControlItem, UserDelegationKey, } from "./models"; -import { PathSetAccessControlRecursiveMode } from "./models.internal"; +import type { PathSetAccessControlRecursiveMode } from "./models.internal"; import { generateDataLakeSASQueryParameters, generateDataLakeSASQueryParametersInternal, @@ -107,7 +109,7 @@ import { setURLQueries, } from "./utils/utils.common"; import { fsCreateReadStream, fsStat } from "./utils/utils.node"; -import { +import type { PathAppendDataHeaders, PathCreateHeaders, PathDeleteHeaders, @@ -1074,7 +1076,7 @@ export class DataLakeDirectoryClient extends DataLakePathClient { * @param userDelegationKey - Return value of `blobServiceClient.getUserDelegationKey()` * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token. */ - /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/ + public generateUserDelegationSasStringToSign( options: DirectoryGenerateSasUrlOptions, userDelegationKey: UserDelegationKey, @@ -2041,7 +2043,7 @@ export class DataLakeFileClient extends DataLakePathClient { * @param userDelegationKey - Return value of `blobServiceClient.getUserDelegationKey()` * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token. */ - /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/ + public generateUserDelegationSasStringToSign( options: FileGenerateSasUrlOptions, userDelegationKey: UserDelegationKey, diff --git a/sdk/storage/storage-file-datalake/src/credentials/UserDelegationKeyCredential.ts b/sdk/storage/storage-file-datalake/src/credentials/UserDelegationKeyCredential.ts index 972ec018f6b1..ec2023870943 100644 --- a/sdk/storage/storage-file-datalake/src/credentials/UserDelegationKeyCredential.ts +++ b/sdk/storage/storage-file-datalake/src/credentials/UserDelegationKeyCredential.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { UserDelegationKey } from "../models"; +import type { UserDelegationKey } from "../models"; import { createHmac } from "crypto"; /** diff --git a/sdk/storage/storage-file-datalake/src/models.ts b/sdk/storage/storage-file-datalake/src/models.ts index 38d3b154e6e1..b0adab7d2fb8 100644 --- a/sdk/storage/storage-file-datalake/src/models.ts +++ b/sdk/storage/storage-file-datalake/src/models.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { TransferProgressEvent } from "@azure/core-rest-pipeline"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { TransferProgressEvent } from "@azure/core-rest-pipeline"; -import { +import type { LeaseAccessConditions, ModifiedAccessConditions as ModifiedAccessConditionsModel, UserDelegationKeyModel, @@ -13,7 +13,7 @@ import { ContainerUndeleteResponse, WithResponse, } from "@azure/storage-blob"; -import { DataLakePathClient } from "./clients"; +import type { DataLakePathClient } from "./clients"; export type ModifiedAccessConditions = Omit; /** @@ -36,7 +36,7 @@ export type FileSystemRenameResponse = ContainerRenameResponse; */ export type FileSystemUndeleteResponse = ContainerUndeleteResponse; -import { +import type { CpkInfo, FileSystemListBlobHierarchySegmentHeaders, FileSystemListPathsHeaders, @@ -52,12 +52,12 @@ import { PathSetExpiryHeaders, PathUndeleteHeaders, } from "./generated/src/models"; -import { DataLakeSASPermissions } from "./sas/DataLakeSASPermissions"; -import { DirectorySASPermissions } from "./sas/DirectorySASPermissions"; -import { FileSystemSASPermissions } from "./sas/FileSystemSASPermissions"; -import { SasIPRange } from "./sas/SasIPRange"; -import { SASProtocol } from "./sas/SASQueryParameters"; -import { CommonOptions } from "./StorageClient"; +import type { DataLakeSASPermissions } from "./sas/DataLakeSASPermissions"; +import type { DirectorySASPermissions } from "./sas/DirectorySASPermissions"; +import type { FileSystemSASPermissions } from "./sas/FileSystemSASPermissions"; +import type { SasIPRange } from "./sas/SasIPRange"; +import type { SASProtocol } from "./sas/SASQueryParameters"; +import type { CommonOptions } from "./StorageClient"; export { LeaseAccessConditions, diff --git a/sdk/storage/storage-file-datalake/src/sas/AccountSASSignatureValues.ts b/sdk/storage/storage-file-datalake/src/sas/AccountSASSignatureValues.ts index a0e935f565df..4dd0c2bfe137 100644 --- a/sdk/storage/storage-file-datalake/src/sas/AccountSASSignatureValues.ts +++ b/sdk/storage/storage-file-datalake/src/sas/AccountSASSignatureValues.ts @@ -4,9 +4,11 @@ import { AccountSASPermissions } from "./AccountSASPermissions"; import { AccountSASResourceTypes } from "./AccountSASResourceTypes"; import { AccountSASServices } from "./AccountSASServices"; -import { StorageSharedKeyCredential } from "../credentials/StorageSharedKeyCredential"; -import { SasIPRange, ipRangeToString } from "./SasIPRange"; -import { SASProtocol, SASQueryParameters } from "./SASQueryParameters"; +import type { StorageSharedKeyCredential } from "../credentials/StorageSharedKeyCredential"; +import type { SasIPRange } from "./SasIPRange"; +import { ipRangeToString } from "./SasIPRange"; +import type { SASProtocol } from "./SASQueryParameters"; +import { SASQueryParameters } from "./SASQueryParameters"; import { SERVICE_VERSION } from "../utils/constants"; import { truncatedISO8061Date } from "../utils/utils.common"; diff --git a/sdk/storage/storage-file-datalake/src/sas/DataLakeSASSignatureValues.ts b/sdk/storage/storage-file-datalake/src/sas/DataLakeSASSignatureValues.ts index 4e761af9b237..efb277d3732f 100644 --- a/sdk/storage/storage-file-datalake/src/sas/DataLakeSASSignatureValues.ts +++ b/sdk/storage/storage-file-datalake/src/sas/DataLakeSASSignatureValues.ts @@ -4,9 +4,11 @@ import { StorageSharedKeyCredential } from "../credentials/StorageSharedKeyCrede import { UserDelegationKeyCredential } from "../credentials/UserDelegationKeyCredential"; import { DataLakeSASPermissions } from "./DataLakeSASPermissions"; import { FileSystemSASPermissions } from "./FileSystemSASPermissions"; -import { UserDelegationKey } from "../models"; -import { ipRangeToString, SasIPRange } from "./SasIPRange"; -import { SASProtocol, SASQueryParameters } from "./SASQueryParameters"; +import type { UserDelegationKey } from "../models"; +import type { SasIPRange } from "./SasIPRange"; +import { ipRangeToString } from "./SasIPRange"; +import type { SASProtocol } from "./SASQueryParameters"; +import { SASQueryParameters } from "./SASQueryParameters"; import { SERVICE_VERSION } from "../utils/constants"; import { truncatedISO8061Date } from "../utils/utils.common"; import { DirectorySASPermissions } from "./DirectorySASPermissions"; diff --git a/sdk/storage/storage-file-datalake/src/sas/SASQueryParameters.ts b/sdk/storage/storage-file-datalake/src/sas/SASQueryParameters.ts index 89d2f39c4997..ac9216d01e0c 100644 --- a/sdk/storage/storage-file-datalake/src/sas/SASQueryParameters.ts +++ b/sdk/storage/storage-file-datalake/src/sas/SASQueryParameters.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { UserDelegationKey } from "../models"; -import { ipRangeToString, SasIPRange } from "./SasIPRange"; +import type { UserDelegationKey } from "../models"; +import type { SasIPRange } from "./SasIPRange"; +import { ipRangeToString } from "./SasIPRange"; import { truncatedISO8061Date } from "../utils/utils.common"; /** diff --git a/sdk/storage/storage-file-datalake/src/transforms.ts b/sdk/storage/storage-file-datalake/src/transforms.ts index a794fc03b194..d93f66f584bf 100644 --- a/sdk/storage/storage-file-datalake/src/transforms.ts +++ b/sdk/storage/storage-file-datalake/src/transforms.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; -import { +import type { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import type { ContainerItem, CpkInfo as BlobCpkInfo, PublicAccessType as ContainerPublicAccessType, } from "@azure/storage-blob"; -import { AclFailedEntry, CpkInfo } from "./generated/src/models"; -import { +import type { AclFailedEntry, CpkInfo } from "./generated/src/models"; +import type { AccessControlChangeError, FileSystemItem, Metadata, diff --git a/sdk/storage/storage-file-datalake/src/utils/BufferScheduler.ts b/sdk/storage/storage-file-datalake/src/utils/BufferScheduler.ts index 9f488733d636..3ed59f1cba0f 100644 --- a/sdk/storage/storage-file-datalake/src/utils/BufferScheduler.ts +++ b/sdk/storage/storage-file-datalake/src/utils/BufferScheduler.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { EventEmitter } from "events"; -import { Readable } from "stream"; +import type { Readable } from "stream"; /** * OutgoingHandler is an async function triggered by BufferScheduler. diff --git a/sdk/storage/storage-file-datalake/src/utils/DataLakeAclChangeFailedError.ts b/sdk/storage/storage-file-datalake/src/utils/DataLakeAclChangeFailedError.ts index ca918ce9848e..9ac7c2938308 100644 --- a/sdk/storage/storage-file-datalake/src/utils/DataLakeAclChangeFailedError.ts +++ b/sdk/storage/storage-file-datalake/src/utils/DataLakeAclChangeFailedError.ts @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RestError } from "@azure/core-rest-pipeline"; +import type { RestError } from "@azure/core-rest-pipeline"; /** * An error thrown when an operation is interrupted and can be continued later on. diff --git a/sdk/storage/storage-file-datalake/src/utils/PathClientInternal.ts b/sdk/storage/storage-file-datalake/src/utils/PathClientInternal.ts index 0322117f92f3..617be69c0983 100644 --- a/sdk/storage/storage-file-datalake/src/utils/PathClientInternal.ts +++ b/sdk/storage/storage-file-datalake/src/utils/PathClientInternal.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { DataLakePathClient } from "../clients"; import { PathOperationsImpl as Path } from "../generated/src/operations"; -import { Pipeline } from "@azure/storage-blob"; +import type { Pipeline } from "@azure/storage-blob"; /** * A PathClientInternal represents a URL to the Azure Storage path (directory or file) to diff --git a/sdk/storage/storage-file-datalake/src/utils/utils.common.ts b/sdk/storage/storage-file-datalake/src/utils/utils.common.ts index 33ffe674faad..f095a2680ecb 100644 --- a/sdk/storage/storage-file-datalake/src/utils/utils.common.ts +++ b/sdk/storage/storage-file-datalake/src/utils/utils.common.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { createHttpHeaders, HttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpHeaders } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; import { isNode } from "@azure/core-util"; -import { ContainerEncryptionScope, WithResponse } from "@azure/storage-blob"; -import { +import type { ContainerEncryptionScope, WithResponse } from "@azure/storage-blob"; +import type { CpkInfo, FileSystemEncryptionScope, PathAccessControlItem, @@ -17,8 +18,8 @@ import { PathStylePorts, UrlConstants, } from "./constants"; -import { HttpResponse } from "@azure/storage-blob"; -import { HttpHeadersLike } from "@azure/core-http-compat"; +import type { HttpResponse } from "@azure/storage-blob"; +import type { HttpHeadersLike } from "@azure/core-http-compat"; import { toAcl, toPermissions } from "../transforms"; /** diff --git a/sdk/storage/storage-file-datalake/test/aborter.spec.ts b/sdk/storage/storage-file-datalake/test/aborter.spec.ts index 8327697b73a6..00ca212cc744 100644 --- a/sdk/storage/storage-file-datalake/test/aborter.spec.ts +++ b/sdk/storage/storage-file-datalake/test/aborter.spec.ts @@ -3,10 +3,10 @@ import { assert } from "chai"; -import { DataLakeFileSystemClient } from "../src"; +import type { DataLakeFileSystemClient } from "../src"; import { getDataLakeServiceClient, getUniqueName, recorderEnvSetup, uriSanitizers } from "./utils"; import { Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Aborter", () => { let fileSystemName: string; diff --git a/sdk/storage/storage-file-datalake/test/browser/highlevel.browser.spec.ts b/sdk/storage/storage-file-datalake/test/browser/highlevel.browser.spec.ts index 8eead1c07448..0f8d153c4592 100644 --- a/sdk/storage/storage-file-datalake/test/browser/highlevel.browser.spec.ts +++ b/sdk/storage/storage-file-datalake/test/browser/highlevel.browser.spec.ts @@ -3,7 +3,7 @@ import { isLiveMode, Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { DataLakeFileClient, DataLakeFileSystemClient } from "../../src"; +import type { DataLakeFileClient, DataLakeFileSystemClient } from "../../src"; import { getDataLakeServiceClient, getUniqueName, recorderEnvSetup, uriSanitizers } from "../utils"; import { blobToString, @@ -13,7 +13,7 @@ import { arrayBufferEqual, } from "../utils/index.browser"; import { MB } from "../../src/utils/constants"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Highlevel browser only", () => { let fileSystemName: string; diff --git a/sdk/storage/storage-file-datalake/test/filesystemclient.spec.ts b/sdk/storage/storage-file-datalake/test/filesystemclient.spec.ts index bdbdd26e87ae..469863f709c2 100644 --- a/sdk/storage/storage-file-datalake/test/filesystemclient.spec.ts +++ b/sdk/storage/storage-file-datalake/test/filesystemclient.spec.ts @@ -5,14 +5,12 @@ import { assert, getYieldedValue } from "@azure-tools/test-utils"; import { isLiveMode, Recorder } from "@azure-tools/test-recorder"; import { useFakeTimers } from "sinon"; -import { - DataLakeFileSystemClient, +import type { FileSystemListPathsResponse, DataLakeServiceClient, FileSystemListDeletedPathsResponse, - DataLakeFileClient, - DataLakeDirectoryClient, } from "../src"; +import { DataLakeFileSystemClient, DataLakeFileClient, DataLakeDirectoryClient } from "../src"; import { getDataLakeServiceClient, getEncryptionScope, @@ -21,7 +19,7 @@ import { recorderEnvSetup, uriSanitizers, } from "./utils"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("DataLakeFileSystemClient", () => { let fileSystemName: string; diff --git a/sdk/storage/storage-file-datalake/test/leaseclient.spec.ts b/sdk/storage/storage-file-datalake/test/leaseclient.spec.ts index 0594c5e1c6a1..970fcd80e760 100644 --- a/sdk/storage/storage-file-datalake/test/leaseclient.spec.ts +++ b/sdk/storage/storage-file-datalake/test/leaseclient.spec.ts @@ -3,9 +3,9 @@ import { delay, Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; -import { DataLakeFileClient, DataLakeDirectoryClient, DataLakeFileSystemClient } from "../src"; +import type { DataLakeFileClient, DataLakeDirectoryClient, DataLakeFileSystemClient } from "../src"; import { getDataLakeServiceClient, getUniqueName, recorderEnvSetup, uriSanitizers } from "./utils"; describe("LeaseClient from FileSystem", () => { diff --git a/sdk/storage/storage-file-datalake/test/node/filesystemclient.spec.ts b/sdk/storage/storage-file-datalake/test/node/filesystemclient.spec.ts index 0f05cd6c549f..36a241c710ac 100644 --- a/sdk/storage/storage-file-datalake/test/node/filesystemclient.spec.ts +++ b/sdk/storage/storage-file-datalake/test/node/filesystemclient.spec.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { SimpleTokenCredential, @@ -14,13 +14,10 @@ import { recorderEnvSetup, uriSanitizers, } from "../utils"; -import { - DataLakeFileSystemClient, - DataLakeServiceClient, - FileSystemSASPermissions, - newPipeline, -} from "../../src"; -import { getDataLakeServiceAccountAudience, PublicAccessType } from "../../src/models"; +import type { DataLakeServiceClient } from "../../src"; +import { DataLakeFileSystemClient, FileSystemSASPermissions, newPipeline } from "../../src"; +import type { PublicAccessType } from "../../src/models"; +import { getDataLakeServiceAccountAudience } from "../../src/models"; import { assertClientUsesTokenCredential } from "../utils/assert"; import { createTestCredential } from "@azure-tools/test-credential"; diff --git a/sdk/storage/storage-file-datalake/test/node/highlevel.node.spec.ts b/sdk/storage/storage-file-datalake/test/node/highlevel.node.spec.ts index c7b2f2ba8e49..322f9982f190 100644 --- a/sdk/storage/storage-file-datalake/test/node/highlevel.node.spec.ts +++ b/sdk/storage/storage-file-datalake/test/node/highlevel.node.spec.ts @@ -6,7 +6,7 @@ import { assert } from "chai"; import * as fs from "fs"; import * as path from "path"; import * as buffer from "buffer"; -import { DataLakeFileClient, DataLakeFileSystemClient } from "../../src"; +import type { DataLakeFileClient, DataLakeFileSystemClient } from "../../src"; import { bodyToString, createRandomLocalFile, @@ -23,7 +23,7 @@ import { import { readStreamToLocalFileWithLogs } from "../../test/utils/testutils.node"; import { Readable, PassThrough } from "stream"; import { streamToBuffer2 } from "../../src/utils/utils.node"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { Test_CPK_INFO } from "../utils/fakeTestSecrets"; describe("Highlevel Node.js only", () => { diff --git a/sdk/storage/storage-file-datalake/test/node/pathclient.spec.ts b/sdk/storage/storage-file-datalake/test/node/pathclient.spec.ts index 2b7302ff2f5c..a1ed0209fee2 100644 --- a/sdk/storage/storage-file-datalake/test/node/pathclient.spec.ts +++ b/sdk/storage/storage-file-datalake/test/node/pathclient.spec.ts @@ -3,23 +3,25 @@ import { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { join } from "path"; import * as fs from "fs"; -import { +import type { AccessControlChangeCounters, AccessControlChanges, - DataLakeFileClient, DataLakeFileSystemClient, - DataLakePathClient, - DataLakeSASPermissions, DataLakeServiceClient, - getDataLakeServiceAccountAudience, PathAccessControlItem, PathPermissions, } from "../../src"; +import { + DataLakeFileClient, + DataLakePathClient, + DataLakeSASPermissions, + getDataLakeServiceAccountAudience, +} from "../../src"; import { toAcl, toRemoveAcl } from "../../src/transforms"; import { bodyToString, diff --git a/sdk/storage/storage-file-datalake/test/node/sas.spec.ts b/sdk/storage/storage-file-datalake/test/node/sas.spec.ts index 53fe0734ad83..44092f925ef7 100644 --- a/sdk/storage/storage-file-datalake/test/node/sas.spec.ts +++ b/sdk/storage/storage-file-datalake/test/node/sas.spec.ts @@ -2,8 +2,15 @@ // Licensed under the MIT License. import { Recorder, delay } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; +import type { + PathAccessControlItem, + PathPermissions, + StorageSharedKeyCredential, + UserDelegationKey, + FileSystemListPathsResponse, +} from "../../src"; import { AccountSASPermissions, AccountSASResourceTypes, @@ -17,12 +24,7 @@ import { generateAccountSASQueryParameters, generateDataLakeSASQueryParameters, newPipeline, - PathAccessControlItem, - PathPermissions, - StorageSharedKeyCredential, - UserDelegationKey, SASQueryParameters, - FileSystemListPathsResponse, } from "../../src"; import { DataLakeFileClient } from "../../src/"; import { DirectorySASPermissions } from "../../src/sas/DirectorySASPermissions"; diff --git a/sdk/storage/storage-file-datalake/test/node/serviceclient.spec.ts b/sdk/storage/storage-file-datalake/test/node/serviceclient.spec.ts index b57474b2e55b..120c461a73c5 100644 --- a/sdk/storage/storage-file-datalake/test/node/serviceclient.spec.ts +++ b/sdk/storage/storage-file-datalake/test/node/serviceclient.spec.ts @@ -3,7 +3,7 @@ import { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { DataLakeServiceClient, getDataLakeServiceAccountAudience } from "../../src"; import { diff --git a/sdk/storage/storage-file-datalake/test/pathclient.spec.ts b/sdk/storage/storage-file-datalake/test/pathclient.spec.ts index 4fafd3d7311a..06baf8ca25f5 100644 --- a/sdk/storage/storage-file-datalake/test/pathclient.spec.ts +++ b/sdk/storage/storage-file-datalake/test/pathclient.spec.ts @@ -5,7 +5,8 @@ import { isNodeLike } from "@azure/core-util"; import { assert } from "@azure-tools/test-utils"; import { isPlaybackMode, Recorder, delay } from "@azure-tools/test-recorder"; -import { DataLakeDirectoryClient, DataLakeFileClient, DataLakeFileSystemClient } from "../src"; +import type { DataLakeDirectoryClient, DataLakeFileSystemClient } from "../src"; +import { DataLakeFileClient } from "../src"; import { toPermissionsString } from "../src/transforms"; import { bodyToString, @@ -16,7 +17,7 @@ import { sleep, uriSanitizers, } from "./utils"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { Test_CPK_INFO } from "./utils/fakeTestSecrets"; import { useFakeTimers } from "sinon"; diff --git a/sdk/storage/storage-file-datalake/test/serviceclient.spec.ts b/sdk/storage/storage-file-datalake/test/serviceclient.spec.ts index f67a1d086b47..f0be703650af 100644 --- a/sdk/storage/storage-file-datalake/test/serviceclient.spec.ts +++ b/sdk/storage/storage-file-datalake/test/serviceclient.spec.ts @@ -4,14 +4,14 @@ import { delay, isLiveMode, Recorder } from "@azure-tools/test-recorder"; import { getYieldedValue } from "@azure-tools/test-utils"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { isNodeLike } from "@azure/core-util"; -import { - DataLakeServiceClient, +import type { DataLakeServiceProperties, FileSystemItem, ServiceListFileSystemsSegmentResponse, } from "../src"; +import { DataLakeServiceClient } from "../src"; import { getDataLakeServiceClient, getSASConnectionStringFromEnvironment, diff --git a/sdk/storage/storage-file-datalake/test/specialnaming.spec.ts b/sdk/storage/storage-file-datalake/test/specialnaming.spec.ts index 226c00c6ed90..865eba6d44d4 100644 --- a/sdk/storage/storage-file-datalake/test/specialnaming.spec.ts +++ b/sdk/storage/storage-file-datalake/test/specialnaming.spec.ts @@ -3,9 +3,10 @@ import { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; -import { DataLakeFileClient, DataLakeFileSystemClient } from "../src"; +import type { DataLakeFileSystemClient } from "../src"; +import { DataLakeFileClient } from "../src"; import { appendToURLPath } from "../src/utils/utils.common"; import { getDataLakeServiceClient, getUniqueName, recorderEnvSetup, uriSanitizers } from "./utils"; diff --git a/sdk/storage/storage-file-datalake/test/utils/assert.ts b/sdk/storage/storage-file-datalake/test/utils/assert.ts index 03613224a58d..66d52fdc52fc 100644 --- a/sdk/storage/storage-file-datalake/test/utils/assert.ts +++ b/sdk/storage/storage-file-datalake/test/utils/assert.ts @@ -3,7 +3,7 @@ import { isTokenCredential } from "@azure/core-auth"; import { assert } from "chai"; -import { StorageClient } from "../../src/StorageClient"; +import type { StorageClient } from "../../src/StorageClient"; export function assertClientUsesTokenCredential(client: StorageClient): void { assert.isTrue(isTokenCredential(client.credential)); diff --git a/sdk/storage/storage-file-datalake/test/utils/fakeTestSecrets.ts b/sdk/storage/storage-file-datalake/test/utils/fakeTestSecrets.ts index 16827f6474bb..4521b3e8138a 100644 --- a/sdk/storage/storage-file-datalake/test/utils/fakeTestSecrets.ts +++ b/sdk/storage/storage-file-datalake/test/utils/fakeTestSecrets.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CpkInfo } from "../../src"; +import type { CpkInfo } from "../../src"; export const Test_CPK_INFO: CpkInfo = { encryptionKey: "MDEyMzQ1NjcwMTIzNDU2NzAxMjM0NTY3MDEyMzQ1Njc=", // [SuppressMessage("Microsoft.Security", "CS001:SecretInline", Justification="This is a fake secret")] diff --git a/sdk/storage/storage-file-datalake/test/utils/index.browser.ts b/sdk/storage/storage-file-datalake/test/utils/index.browser.ts index 4d4827f91493..d9f03a551104 100644 --- a/sdk/storage/storage-file-datalake/test/utils/index.browser.ts +++ b/sdk/storage/storage-file-datalake/test/utils/index.browser.ts @@ -1,12 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { DataLakeServiceClient, newPipeline } from "../../src"; import { AnonymousCredential } from "@azure/storage-blob"; import { configureStorageClient, SimpleTokenCredential } from "./testutils.common"; -import { env, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; export * from "./testutils.common"; diff --git a/sdk/storage/storage-file-datalake/test/utils/index.ts b/sdk/storage/storage-file-datalake/test/utils/index.ts index 4bbf7768d9f7..92a8a6a09f3c 100644 --- a/sdk/storage/storage-file-datalake/test/utils/index.ts +++ b/sdk/storage/storage-file-datalake/test/utils/index.ts @@ -1,22 +1,24 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { createTestCredential } from "@azure-tools/test-credential"; -import { env, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { randomBytes } from "crypto"; import * as fs from "fs"; import * as path from "path"; import { DataLakeServiceClient } from "../../src/DataLakeServiceClient"; -import { newPipeline, StoragePipelineOptions, StorageSharedKeyCredential } from "../../src"; +import type { StoragePipelineOptions } from "../../src"; +import { newPipeline, StorageSharedKeyCredential } from "../../src"; import { getUniqueName, SimpleTokenCredential, configureStorageClient } from "./testutils.common"; +import type { DataLakeSASSignatureValues } from "../../src"; import { AccountSASPermissions, AccountSASResourceTypes, AccountSASServices, DataLakeFileSystemClient, - DataLakeSASSignatureValues, generateAccountSASQueryParameters, generateDataLakeSASQueryParameters, } from "../../src"; diff --git a/sdk/storage/storage-file-datalake/test/utils/testutils.common.ts b/sdk/storage/storage-file-datalake/test/utils/testutils.common.ts index 287ec9da7948..3e0235383e4e 100644 --- a/sdk/storage/storage-file-datalake/test/utils/testutils.common.ts +++ b/sdk/storage/storage-file-datalake/test/utils/testutils.common.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; -import { isPlaybackMode, Recorder, RecorderStartOptions, delay } from "@azure-tools/test-recorder"; -import { FindReplaceSanitizer } from "@azure-tools/test-recorder/types/src/utils/utils"; -import { Pipeline } from "@azure/core-rest-pipeline"; -import { StorageClient } from "../../src/StorageClient"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import { isPlaybackMode, delay } from "@azure-tools/test-recorder"; +import type { FindReplaceSanitizer } from "@azure-tools/test-recorder/types/src/utils/utils"; +import type { Pipeline } from "@azure/core-rest-pipeline"; +import type { StorageClient } from "../../src/StorageClient"; export const testPollerProperties = { intervalInMs: isPlaybackMode() ? 0 : undefined, diff --git a/sdk/storage/storage-file-share/review/storage-file-share.api.md b/sdk/storage/storage-file-share/review/storage-file-share.api.md index fd0ace5dee2d..9731effe3982 100644 --- a/sdk/storage/storage-file-share/review/storage-file-share.api.md +++ b/sdk/storage/storage-file-share/review/storage-file-share.api.md @@ -4,27 +4,27 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; +import type { AbortSignalLike } from '@azure/abort-controller'; import { AzureLogger } from '@azure/logger'; import * as coreClient from '@azure/core-client'; import * as coreHttpCompat from '@azure/core-http-compat'; import * as coreRestPipeline from '@azure/core-rest-pipeline'; import { HttpHeadersLike as HttpHeaders } from '@azure/core-http-compat'; import { CompatResponse as HttpOperationResponse } from '@azure/core-http-compat'; -import { HttpPipelineLogLevel } from '@azure/core-http-compat'; +import type { HttpPipelineLogLevel } from '@azure/core-http-compat'; import { RequestBodyType as HttpRequestBody } from '@azure/core-rest-pipeline'; -import { KeepAliveOptions } from '@azure/core-http-compat'; -import { OperationTracingOptions } from '@azure/core-tracing'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { ProxySettings } from '@azure/core-rest-pipeline'; -import { Readable } from 'stream'; +import type { KeepAliveOptions } from '@azure/core-http-compat'; +import type { OperationTracingOptions } from '@azure/core-tracing'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { ProxySettings } from '@azure/core-rest-pipeline'; +import type { Readable } from 'stream'; import { RequestPolicy } from '@azure/core-http-compat'; import { RequestPolicyFactory } from '@azure/core-http-compat'; import { RequestPolicyOptionsLike as RequestPolicyOptions } from '@azure/core-http-compat'; import { RestError } from '@azure/core-rest-pipeline'; -import { TokenCredential } from '@azure/core-auth'; -import { TransferProgressEvent } from '@azure/core-rest-pipeline'; -import { UserAgentPolicyOptions } from '@azure/core-rest-pipeline'; +import type { TokenCredential } from '@azure/core-auth'; +import type { TransferProgressEvent } from '@azure/core-rest-pipeline'; +import type { UserAgentPolicyOptions } from '@azure/core-rest-pipeline'; import { WebResourceLike as WebResource } from '@azure/core-http-compat'; // @public diff --git a/sdk/storage/storage-file-share/src/AccountSASSignatureValues.ts b/sdk/storage/storage-file-share/src/AccountSASSignatureValues.ts index e97ccbda98f0..104d845bdba7 100644 --- a/sdk/storage/storage-file-share/src/AccountSASSignatureValues.ts +++ b/sdk/storage/storage-file-share/src/AccountSASSignatureValues.ts @@ -4,9 +4,11 @@ import { AccountSASPermissions } from "./AccountSASPermissions"; import { AccountSASResourceTypes } from "./AccountSASResourceTypes"; import { AccountSASServices } from "./AccountSASServices"; -import { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; -import { SasIPRange, ipRangeToString } from "./SasIPRange"; -import { SASProtocol, SASQueryParameters } from "./SASQueryParameters"; +import type { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; +import type { SasIPRange } from "./SasIPRange"; +import { ipRangeToString } from "./SasIPRange"; +import type { SASProtocol } from "./SASQueryParameters"; +import { SASQueryParameters } from "./SASQueryParameters"; import { SERVICE_VERSION } from "./utils/constants"; import { truncatedISO8061Date } from "./utils/utils.common"; diff --git a/sdk/storage/storage-file-share/src/Clients.ts b/sdk/storage/storage-file-share/src/Clients.ts index 103d43f64b9d..a5985ad7ca3c 100644 --- a/sdk/storage/storage-file-share/src/Clients.ts +++ b/sdk/storage/storage-file-share/src/Clients.ts @@ -1,14 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { RequestBodyType as HttpRequestBody, TransferProgressEvent, } from "@azure/core-rest-pipeline"; import { isNode } from "@azure/core-util"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { CopyFileSmbInfo, DeleteSnapshotsOptionType, DirectoryCreateResponse, @@ -92,13 +93,14 @@ import { FileListHandlesHeaders, RawFileDownloadResponse, } from "./generatedModels"; -import { +import type { FileRenameHeaders, ListFilesAndDirectoriesSegmentResponse as GeneratedListFilesAndDirectoriesSegmentResponse, ListHandlesResponse as GeneratedListHandlesResponse, } from "./generated/src/models"; -import { Share, Directory, File } from "./generated/src/operationsInterfaces"; -import { isPipelineLike, newPipeline, Pipeline, PipelineLike } from "./Pipeline"; +import type { Share, Directory, File } from "./generated/src/operationsInterfaces"; +import type { Pipeline, PipelineLike } from "./Pipeline"; +import { isPipelineLike, newPipeline } from "./Pipeline"; import { DEFAULT_MAX_DOWNLOAD_RETRY_REQUESTS, DEFAULT_HIGH_LEVEL_CONCURRENCY, @@ -108,6 +110,7 @@ import { FileAttributesPreserve, FileAttributesNone, } from "./utils/constants"; +import type { WithResponse } from "./utils/utils.common"; import { appendToURLPath, setURLParameter, @@ -121,7 +124,6 @@ import { EscapePath, ConvertInternalResponseOfListFiles, ConvertInternalResponseOfListHandles, - WithResponse, assertResponse, removeEmptyString, asSharePermission, @@ -130,50 +132,57 @@ import { Credential } from "../../storage-blob/src/credentials/Credential"; import { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; import { AnonymousCredential } from "../../storage-blob/src/credentials/AnonymousCredential"; import { tracingClient } from "./utils/tracing"; -import { StorageClient, CommonOptions } from "./StorageClient"; -import { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { CommonOptions } from "./StorageClient"; +import { StorageClient } from "./StorageClient"; +import type { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; import { FileSystemAttributes } from "./FileSystemAttributes"; import { FileDownloadResponse } from "./FileDownloadResponse"; -import { Range, rangeToString } from "./Range"; -import { +import type { Range } from "./Range"; +import { rangeToString } from "./Range"; +import type { CloseHandlesInfo, FileAndDirectoryCreateCommonOptions, FileAndDirectorySetPropertiesCommonOptions, + FileHttpHeaders, + Metadata, + ShareProtocols, + HttpAuthorization, + ShareClientOptions, + ShareClientConfig, +} from "./models"; +import { fileAttributesToString, fileCreationTimeToString, - FileHttpHeaders, fileLastWriteTimeToString, - Metadata, validateAndSetDefaultsForFileAndDirectoryCreateCommonOptions, validateAndSetDefaultsForFileAndDirectorySetPropertiesCommonOptions, - ShareProtocols, toShareProtocolsString, toShareProtocols, - HttpAuthorization, fileChangeTimeToString, - ShareClientOptions, - ShareClientConfig, } from "./models"; import { Batch } from "./utils/Batch"; import { BufferScheduler } from "./utils/BufferScheduler"; -import { Readable } from "stream"; +import type { Readable } from "stream"; import { fsStat, fsCreateReadStream, readStreamToLocalFile, streamToBuffer, } from "./utils/utils.node"; -import { FileSetHttpHeadersHeaders, StorageClient as StorageClientContext } from "./generated/src/"; +import type { + FileSetHttpHeadersHeaders, + StorageClient as StorageClientContext, +} from "./generated/src/"; import { randomUUID } from "@azure/core-util"; import { generateFileSASQueryParameters, generateFileSASQueryParametersInternal, } from "./FileSASSignatureValues"; -import { ShareSASPermissions } from "./ShareSASPermissions"; -import { SASProtocol } from "./SASQueryParameters"; -import { SasIPRange } from "./SasIPRange"; -import { FileSASPermissions } from "./FileSASPermissions"; -import { ListFilesIncludeType } from "./generated/src"; +import type { ShareSASPermissions } from "./ShareSASPermissions"; +import type { SASProtocol } from "./SASQueryParameters"; +import type { SasIPRange } from "./SasIPRange"; +import type { FileSASPermissions } from "./FileSASPermissions"; +import type { ListFilesIncludeType } from "./generated/src"; export { ShareClientOptions, ShareClientConfig } from "./models"; @@ -654,7 +663,7 @@ export class ShareClient extends StorageClient { * @param options - Optional. Options to configure the HTTP pipeline. */ // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line. - /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */ + constructor(connectionString: string, name: string, options?: ShareClientOptions); /** * Creates an instance of ShareClient. @@ -671,7 +680,7 @@ export class ShareClient extends StorageClient { url: string, credential?: Credential | TokenCredential, // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line. - /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */ + options?: ShareClientOptions, ); /** @@ -689,7 +698,7 @@ export class ShareClient extends StorageClient { urlOrConnectionString: string, credentialOrPipelineOrShareName?: Credential | TokenCredential | PipelineLike | string, // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line. - /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */ + options?: ShareClientOptions, ) { let pipeline: Pipeline; diff --git a/sdk/storage/storage-file-share/src/FileDownloadResponse.ts b/sdk/storage/storage-file-share/src/FileDownloadResponse.ts index 7ee1e0566947..62c515b82bbd 100644 --- a/sdk/storage/storage-file-share/src/FileDownloadResponse.ts +++ b/sdk/storage/storage-file-share/src/FileDownloadResponse.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { isNode } from "@azure/core-util"; -import { +import type { CopyStatusType, FileDownloadHeaders, FileDownloadResponseModel, @@ -10,13 +10,14 @@ import { LeaseStateType, LeaseStatusType, } from "./generatedModels"; -import { Metadata } from "./models"; -import { +import type { Metadata } from "./models"; +import type { ReadableStreamGetter, - RetriableReadableStream, RetriableReadableStreamOptions, } from "./utils/RetriableReadableStream"; -import { HttpResponse, WithResponse, assertResponse } from "./utils/utils.common"; +import { RetriableReadableStream } from "./utils/RetriableReadableStream"; +import type { HttpResponse, WithResponse } from "./utils/utils.common"; +import { assertResponse } from "./utils/utils.common"; /** * ONLY AVAILABLE IN NODE.JS RUNTIME. diff --git a/sdk/storage/storage-file-share/src/FileSASSignatureValues.ts b/sdk/storage/storage-file-share/src/FileSASSignatureValues.ts index a6bd5bb419c3..2f1ae701d532 100644 --- a/sdk/storage/storage-file-share/src/FileSASSignatureValues.ts +++ b/sdk/storage/storage-file-share/src/FileSASSignatureValues.ts @@ -1,10 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; +import type { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; import { FileSASPermissions } from "./FileSASPermissions"; -import { SasIPRange, ipRangeToString } from "./SasIPRange"; -import { SASProtocol, SASQueryParameters } from "./SASQueryParameters"; +import type { SasIPRange } from "./SasIPRange"; +import { ipRangeToString } from "./SasIPRange"; +import type { SASProtocol } from "./SASQueryParameters"; +import { SASQueryParameters } from "./SASQueryParameters"; import { ShareSASPermissions } from "./ShareSASPermissions"; import { SERVICE_VERSION } from "./utils/constants"; import { truncatedISO8061Date } from "./utils/utils.common"; diff --git a/sdk/storage/storage-file-share/src/Pipeline.ts b/sdk/storage/storage-file-share/src/Pipeline.ts index 0abfee4da44d..8011bb23eb07 100644 --- a/sdk/storage/storage-file-share/src/Pipeline.ts +++ b/sdk/storage/storage-file-share/src/Pipeline.ts @@ -1,6 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { + KeepAliveOptions, + ExtendedServiceClientOptions, + HttpPipelineLogLevel, +} from "@azure/core-http-compat"; import { CompatResponse as HttpOperationResponse, RequestPolicy as IHttpClient, @@ -9,31 +14,32 @@ import { RequestPolicyFactory, RequestPolicyOptionsLike as RequestPolicyOptions, WebResourceLike as WebResource, - KeepAliveOptions, - ExtendedServiceClientOptions, convertHttpClient, createRequestPolicyFactoryPolicy, - HttpPipelineLogLevel, } from "@azure/core-http-compat"; -import { - RequestBodyType as HttpRequestBody, +import type { ProxySettings as ProxyOptions, UserAgentPolicyOptions as UserAgentOptions, - bearerTokenAuthenticationPolicy, Pipeline as CorePipeline, - decompressResponsePolicyName, PipelinePolicy, HttpClient, } from "@azure/core-rest-pipeline"; +import { + RequestBodyType as HttpRequestBody, + bearerTokenAuthenticationPolicy, + decompressResponsePolicyName, +} from "@azure/core-rest-pipeline"; import { authorizeRequestOnTenantChallenge, createClientPipeline } from "@azure/core-client"; import { parseXML, stringifyXML } from "@azure/core-xml"; -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { logger } from "./log"; -import { StorageRetryOptions, StorageRetryPolicyFactory } from "./StorageRetryPolicyFactory"; +import type { StorageRetryOptions } from "./StorageRetryPolicyFactory"; +import { StorageRetryPolicyFactory } from "./StorageRetryPolicyFactory"; import { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; import { AnonymousCredential } from "../../storage-blob/src/credentials/AnonymousCredential"; -import { Credential } from "../../storage-blob/src/credentials/Credential"; +import type { Credential } from "../../storage-blob/src/credentials/Credential"; import { StorageOAuthScopes, StorageFileLoggingAllowedHeaderNames, @@ -45,7 +51,7 @@ import { storageBrowserPolicy } from "../../storage-blob/src/policies/StorageBro import { storageRetryPolicy } from "./policies/StorageRetryPolicyV2"; import { storageSharedKeyCredentialPolicy } from "../../storage-blob/src/policies/StorageSharedKeyCredentialPolicyV2"; import { StorageBrowserPolicyFactory } from "../../storage-blob/src/StorageBrowserPolicyFactory"; -import { ShareTokenIntent } from "./generatedModels"; +import type { ShareTokenIntent } from "./generatedModels"; import { storageCorrectContentLengthPolicy } from "../../storage-blob/src/policies/StorageCorrectContentLengthPolicy"; // Export following interfaces and types for customers who want to implement their diff --git a/sdk/storage/storage-file-share/src/SASQueryParameters.ts b/sdk/storage/storage-file-share/src/SASQueryParameters.ts index 3f4ba34969f6..d939b434efb1 100644 --- a/sdk/storage/storage-file-share/src/SASQueryParameters.ts +++ b/sdk/storage/storage-file-share/src/SASQueryParameters.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { SasIPRange, ipRangeToString } from "./SasIPRange"; +import type { SasIPRange } from "./SasIPRange"; +import { ipRangeToString } from "./SasIPRange"; import { truncatedISO8061Date } from "./utils/utils.common"; /** diff --git a/sdk/storage/storage-file-share/src/ShareClientInternal.ts b/sdk/storage/storage-file-share/src/ShareClientInternal.ts index 9cf5e9ad4815..9314a9b6a5d0 100644 --- a/sdk/storage/storage-file-share/src/ShareClientInternal.ts +++ b/sdk/storage/storage-file-share/src/ShareClientInternal.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Pipeline } from "./Pipeline"; +import type { Pipeline } from "./Pipeline"; import { StorageClient } from "./StorageClient"; -import { ShareRestoreOptionalParams, ShareRestoreResponse } from "./generated/src/models"; -import { Share } from "./generated/src/operationsInterfaces"; +import type { ShareRestoreOptionalParams, ShareRestoreResponse } from "./generated/src/models"; +import type { Share } from "./generated/src/operationsInterfaces"; /** * ShareClientInternal is the thin wrapper for Share which contains internal helper methods. diff --git a/sdk/storage/storage-file-share/src/ShareServiceClient.ts b/sdk/storage/storage-file-share/src/ShareServiceClient.ts index de23a12bdb73..d62a285533bd 100644 --- a/sdk/storage/storage-file-share/src/ShareServiceClient.ts +++ b/sdk/storage/storage-file-share/src/ShareServiceClient.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { FileServiceProperties, ListSharesIncludeType, ShareCreateResponse, @@ -15,13 +15,16 @@ import { ServiceSetPropertiesHeaders, ServiceGetPropertiesHeaders, } from "./generatedModels"; -import { Service } from "./generated/src/operationsInterfaces"; -import { isPipelineLike, newPipeline, Pipeline } from "./Pipeline"; -import { StorageClient, CommonOptions } from "./StorageClient"; +import type { Service } from "./generated/src/operationsInterfaces"; +import type { Pipeline } from "./Pipeline"; +import { isPipelineLike, newPipeline } from "./Pipeline"; +import type { CommonOptions } from "./StorageClient"; +import { StorageClient } from "./StorageClient"; import { ShareClientInternal } from "./ShareClientInternal"; -import { ShareClient, ShareCreateOptions, ShareDeleteMethodOptions } from "./Clients"; +import type { ShareCreateOptions, ShareDeleteMethodOptions } from "./Clients"; +import { ShareClient } from "./Clients"; +import type { WithResponse } from "./utils/utils.common"; import { - WithResponse, appendToURLPath, extractConnectionStringParts, assertResponse, @@ -30,20 +33,22 @@ import { import { Credential } from "../../storage-blob/src/credentials/Credential"; import { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; import { AnonymousCredential } from "../../storage-blob/src/credentials/AnonymousCredential"; -import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import type { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; import { isNode } from "@azure/core-util"; import { tracingClient } from "./utils/tracing"; -import { ShareClientConfig, ShareClientOptions, ShareProtocols, toShareProtocols } from "./models"; +import type { ShareClientConfig, ShareClientOptions, ShareProtocols } from "./models"; +import { toShareProtocols } from "./models"; import { AccountSASPermissions } from "./AccountSASPermissions"; import { generateAccountSASQueryParameters, generateAccountSASQueryParametersInternal, } from "./AccountSASSignatureValues"; import { AccountSASServices } from "./AccountSASServices"; -import { SASProtocol } from "./SASQueryParameters"; -import { SasIPRange } from "./SasIPRange"; +import type { SASProtocol } from "./SASQueryParameters"; +import type { SasIPRange } from "./SasIPRange"; import { appendToURLQuery } from "./utils/utils.common"; -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; /** * Options to configure Share - List Shares Segment operations. diff --git a/sdk/storage/storage-file-share/src/StorageClient.ts b/sdk/storage/storage-file-share/src/StorageClient.ts index de3416f18144..a3815f48c199 100644 --- a/sdk/storage/storage-file-share/src/StorageClient.ts +++ b/sdk/storage/storage-file-share/src/StorageClient.ts @@ -1,14 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { StorageClient as StorageClientContext } from "./generated/src/"; +import type { StorageClient as StorageClientContext } from "./generated/src/"; import { StorageContextClient } from "./StorageContextClient"; -import { Pipeline, getCoreClientOptions, getCredentialFromPipeline } from "./Pipeline"; +import type { Pipeline } from "./Pipeline"; +import { getCoreClientOptions, getCredentialFromPipeline } from "./Pipeline"; import { escapeURLPath, getAccountNameFromUrl } from "./utils/utils.common"; -import { OperationTracingOptions } from "@azure/core-tracing"; -import { AnonymousCredential } from "../../storage-blob/src/credentials/AnonymousCredential"; -import { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; -import { TokenCredential } from "@azure/core-auth"; +import type { OperationTracingOptions } from "@azure/core-tracing"; +import type { AnonymousCredential } from "../../storage-blob/src/credentials/AnonymousCredential"; +import type { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; +import type { TokenCredential } from "@azure/core-auth"; /** * An interface for options common to every remote operation. diff --git a/sdk/storage/storage-file-share/src/StorageContextClient.ts b/sdk/storage/storage-file-share/src/StorageContextClient.ts index 332a5156e93a..6d4d9f12c102 100644 --- a/sdk/storage/storage-file-share/src/StorageContextClient.ts +++ b/sdk/storage/storage-file-share/src/StorageContextClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationArguments, OperationSpec } from "@azure/core-client"; +import type { OperationArguments, OperationSpec } from "@azure/core-client"; import { StorageClient } from "./generated/src"; /** diff --git a/sdk/storage/storage-file-share/src/StorageRetryPolicyFactory.ts b/sdk/storage/storage-file-share/src/StorageRetryPolicyFactory.ts index 65be85a75f34..8986bbda8d5b 100644 --- a/sdk/storage/storage-file-share/src/StorageRetryPolicyFactory.ts +++ b/sdk/storage/storage-file-share/src/StorageRetryPolicyFactory.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { RequestPolicy, RequestPolicyOptionsLike as RequestPolicyOptions, RequestPolicyFactory, diff --git a/sdk/storage/storage-file-share/src/generatedModels.ts b/sdk/storage/storage-file-share/src/generatedModels.ts index 7c2872bee24a..b69f00fda832 100644 --- a/sdk/storage/storage-file-share/src/generatedModels.ts +++ b/sdk/storage/storage-file-share/src/generatedModels.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { DirectoryCreateHeaders, DirectoryDeleteHeaders, DirectoryGetPropertiesHeaders, @@ -287,8 +287,8 @@ export { FileDownloadResponse as RawFileDownloadResponse, } from "./generated/src/models"; -import { ShareSetPropertiesHeaders } from "./generated/src/models"; -import { WithResponse } from "./utils/utils.common"; +import type { ShareSetPropertiesHeaders } from "./generated/src/models"; +import type { WithResponse } from "./utils/utils.common"; /** Known values of {@link ShareTokenIntent} that the service accepts. */ export enum KnownShareTokenIntent { diff --git a/sdk/storage/storage-file-share/src/models.ts b/sdk/storage/storage-file-share/src/models.ts index 6039c1c59634..6682056ddcef 100644 --- a/sdk/storage/storage-file-share/src/models.ts +++ b/sdk/storage/storage-file-share/src/models.ts @@ -3,8 +3,8 @@ import { FileSystemAttributes } from "./FileSystemAttributes"; import { truncatedISO8061Date } from "./utils/utils.common"; import { logger } from "./log"; -import { FilePermissionFormat, ShareTokenIntent } from "./generatedModels"; -import { StoragePipelineOptions } from "./Pipeline"; +import type { FilePermissionFormat, ShareTokenIntent } from "./generatedModels"; +import type { StoragePipelineOptions } from "./Pipeline"; export interface Metadata { [propertyName: string]: string; diff --git a/sdk/storage/storage-file-share/src/policies/StorageRetryPolicy.ts b/sdk/storage/storage-file-share/src/policies/StorageRetryPolicy.ts index 19d41ce66100..ec267bd3ff42 100644 --- a/sdk/storage/storage-file-share/src/policies/StorageRetryPolicy.ts +++ b/sdk/storage/storage-file-share/src/policies/StorageRetryPolicy.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; -import { +import type { RequestPolicy, RequestPolicyOptionsLike as RequestPolicyOptions, RequestPolicyFactory, @@ -11,9 +12,9 @@ import { CompatResponse as HttpOperationResponse, } from "@azure/core-http-compat"; import { BaseRequestPolicy } from "../../../storage-blob/src/policies/RequestPolicy"; -import { RestError } from "@azure/core-rest-pipeline"; +import type { RestError } from "@azure/core-rest-pipeline"; -import { StorageRetryOptions } from "../StorageRetryPolicyFactory"; +import type { StorageRetryOptions } from "../StorageRetryPolicyFactory"; import { URLConstants } from "../utils/constants"; import { delay, setURLParameter } from "../utils/utils.common"; import { logger } from "../log"; diff --git a/sdk/storage/storage-file-share/src/policies/StorageRetryPolicyV2.ts b/sdk/storage/storage-file-share/src/policies/StorageRetryPolicyV2.ts index 908345724bd0..1536680cc699 100644 --- a/sdk/storage/storage-file-share/src/policies/StorageRetryPolicyV2.ts +++ b/sdk/storage/storage-file-share/src/policies/StorageRetryPolicyV2.ts @@ -2,16 +2,15 @@ // Licensed under the MIT License. import { AbortError } from "@azure/abort-controller"; -import { +import type { PipelinePolicy, PipelineRequest, SendRequest, PipelineResponse, - isRestError, - RestError, } from "@azure/core-rest-pipeline"; +import { isRestError, RestError } from "@azure/core-rest-pipeline"; import { getErrorMessage } from "@azure/core-util"; -import { StorageRetryOptions } from "../StorageRetryPolicyFactory"; +import type { StorageRetryOptions } from "../StorageRetryPolicyFactory"; import { URLConstants } from "../utils/constants"; import { delay, setURLParameter } from "../utils/utils.common"; import { logger } from "../log"; diff --git a/sdk/storage/storage-file-share/src/utils/BufferScheduler.ts b/sdk/storage/storage-file-share/src/utils/BufferScheduler.ts index f3238e59cad3..6eb7766168c1 100644 --- a/sdk/storage/storage-file-share/src/utils/BufferScheduler.ts +++ b/sdk/storage/storage-file-share/src/utils/BufferScheduler.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { EventEmitter } from "events"; -import { Readable } from "stream"; +import type { Readable } from "stream"; /** * OutgoingHandler is an async function triggered by BufferScheduler. diff --git a/sdk/storage/storage-file-share/src/utils/RetriableReadableStream.ts b/sdk/storage/storage-file-share/src/utils/RetriableReadableStream.ts index b594fb768c26..726a389afff6 100644 --- a/sdk/storage/storage-file-share/src/utils/RetriableReadableStream.ts +++ b/sdk/storage/storage-file-share/src/utils/RetriableReadableStream.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { AbortError } from "@azure/abort-controller"; -import { TransferProgressEvent } from "@azure/core-rest-pipeline"; +import type { TransferProgressEvent } from "@azure/core-rest-pipeline"; import { Readable } from "stream"; export type ReadableStreamGetter = (offset: number) => Promise; diff --git a/sdk/storage/storage-file-share/src/utils/utils.common.ts b/sdk/storage/storage-file-share/src/utils/utils.common.ts index 42ca08bd7fdb..7dd07138b051 100644 --- a/sdk/storage/storage-file-share/src/utils/utils.common.ts +++ b/sdk/storage/storage-file-share/src/utils/utils.common.ts @@ -1,25 +1,26 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { HttpHeaders, createHttpHeaders } from "@azure/core-rest-pipeline"; -import { +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { HttpHeaders } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; +import type { ListFilesAndDirectoriesSegmentResponse as ListFilesAndDirectoriesSegmentResponseInternal, ListHandlesResponse as ListHandlesResponseInternal, SharePermission, StringEncoded, } from "../generated/src/models"; -import { +import type { DirectoryItem, FileItem, HandleItem, ListFilesAndDirectoriesSegmentResponse, ListHandlesResponse, } from "../generatedModels"; -import { HttpAuthorization } from "../models"; +import type { HttpAuthorization } from "../models"; import { HeaderConstants, PathStylePorts, URLConstants } from "./constants"; import { isNode } from "@azure/core-util"; -import { HttpHeadersLike, WebResourceLike } from "@azure/core-http-compat"; +import type { HttpHeadersLike, WebResourceLike } from "@azure/core-http-compat"; /** * Reserved URL characters must be properly escaped for Storage services like Blob or File. @@ -413,7 +414,6 @@ export async function delay( resolve(); }; - /* eslint-disable-next-line prefer-const */ timeout = setTimeout(resolveHandler, timeInMs); if (aborter !== undefined) { aborter.addEventListener("abort", abortHandler); diff --git a/sdk/storage/storage-file-share/test/aborter.spec.ts b/sdk/storage/storage-file-share/test/aborter.spec.ts index c3dd4946f357..b7cab0ce2d1c 100644 --- a/sdk/storage/storage-file-share/test/aborter.spec.ts +++ b/sdk/storage/storage-file-share/test/aborter.spec.ts @@ -5,8 +5,8 @@ import { assert } from "chai"; import { getBSU, recorderEnvSetup, getUniqueName, uriSanitizers } from "./utils"; import { Recorder } from "@azure-tools/test-recorder"; -import { ShareClient } from "../src"; -import { Context } from "mocha"; +import type { ShareClient } from "../src"; +import type { Context } from "mocha"; describe("Aborter", () => { let shareName: string; diff --git a/sdk/storage/storage-file-share/test/directoryclient.spec.ts b/sdk/storage/storage-file-share/test/directoryclient.spec.ts index 18dd6906a29c..871343204eca 100644 --- a/sdk/storage/storage-file-share/test/directoryclient.spec.ts +++ b/sdk/storage/storage-file-share/test/directoryclient.spec.ts @@ -2,13 +2,14 @@ // Licensed under the MIT License. import { getBSU, getTokenBSU, getUniqueName, recorderEnvSetup, uriSanitizers } from "./utils"; -import { ShareClient, ShareDirectoryClient, FileSystemAttributes } from "../src"; +import type { ShareClient } from "../src"; +import { ShareDirectoryClient, FileSystemAttributes } from "../src"; import { Recorder, isLiveMode } from "@azure-tools/test-recorder"; -import { DirectoryCreateResponse } from "../src/generated/src/models"; +import type { DirectoryCreateResponse } from "../src/generated/src/models"; import { truncatedISO8061Date } from "../src/utils/utils.common"; import { assert, getYieldedValue } from "@azure-tools/test-utils"; import { isBrowser } from "@azure/core-util"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("DirectoryClient", () => { let shareName: string; diff --git a/sdk/storage/storage-file-share/test/fileclient.spec.ts b/sdk/storage/storage-file-share/test/fileclient.spec.ts index a48c727987ba..8b46e9c0e51c 100644 --- a/sdk/storage/storage-file-share/test/fileclient.spec.ts +++ b/sdk/storage/storage-file-share/test/fileclient.spec.ts @@ -3,18 +3,18 @@ import { isNode, isBrowser } from "@azure/core-util"; import { delay, isLiveMode, Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { assert } from "@azure-tools/test-utils"; -import { +import type { FileStartCopyOptions, ShareClient, ShareDirectoryClient, - ShareFileClient, ShareServiceClient, } from "../src"; +import { ShareFileClient } from "../src"; import { FileSystemAttributes } from "../src/FileSystemAttributes"; -import { DirectoryCreateResponse } from "../src/generated/src/models"; +import type { DirectoryCreateResponse } from "../src/generated/src/models"; import { FILE_MAX_SIZE_BYTES } from "../src/utils/constants"; import { truncatedISO8061Date } from "../src/utils/utils.common"; import { diff --git a/sdk/storage/storage-file-share/test/fileserviceclient.spec.ts b/sdk/storage/storage-file-share/test/fileserviceclient.spec.ts index 7ed798ad6d6a..1f7aa105dcba 100644 --- a/sdk/storage/storage-file-share/test/fileserviceclient.spec.ts +++ b/sdk/storage/storage-file-share/test/fileserviceclient.spec.ts @@ -14,8 +14,9 @@ import { uriSanitizers, } from "./utils"; import { delay, Recorder } from "@azure-tools/test-recorder"; -import { ShareServiceClient, ShareItem, ShareRootSquash } from "../src"; -import { Context } from "mocha"; +import type { ShareItem, ShareRootSquash } from "../src"; +import { ShareServiceClient } from "../src"; +import type { Context } from "mocha"; import { getYieldedValue } from "@azure-tools/test-utils"; describe("FileServiceClient", () => { diff --git a/sdk/storage/storage-file-share/test/leaseclient.spec.ts b/sdk/storage/storage-file-share/test/leaseclient.spec.ts index cbcf9d9f46f0..57734cfdd620 100644 --- a/sdk/storage/storage-file-share/test/leaseclient.spec.ts +++ b/sdk/storage/storage-file-share/test/leaseclient.spec.ts @@ -4,8 +4,8 @@ import { assert } from "chai"; import { getBSU, recorderEnvSetup, bodyToString, uriSanitizers, getUniqueName } from "./utils"; import { Recorder } from "@azure-tools/test-recorder"; -import { ShareClient, ShareDirectoryClient, ShareFileClient, SignedIdentifier } from "../src"; -import { Context } from "mocha"; +import type { ShareClient, ShareDirectoryClient, ShareFileClient, SignedIdentifier } from "../src"; +import type { Context } from "mocha"; import { isNode } from "@azure/core-util"; // for file diff --git a/sdk/storage/storage-file-share/test/node/directoryclient.spec.ts b/sdk/storage/storage-file-share/test/node/directoryclient.spec.ts index e5f60c1922e9..c429a2a4e568 100644 --- a/sdk/storage/storage-file-share/test/node/directoryclient.spec.ts +++ b/sdk/storage/storage-file-share/test/node/directoryclient.spec.ts @@ -11,15 +11,10 @@ import { recorderEnvSetup, uriSanitizers, } from "../utils"; -import { - newPipeline, - ShareDirectoryClient, - StorageSharedKeyCredential, - ShareClient, - getFileServiceAccountAudience, -} from "../../src"; +import type { StorageSharedKeyCredential, ShareClient } from "../../src"; +import { newPipeline, ShareDirectoryClient, getFileServiceAccountAudience } from "../../src"; import { Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createTestCredential } from "@azure-tools/test-credential"; describe("DirectoryClient Node.js only", () => { diff --git a/sdk/storage/storage-file-share/test/node/fileclient.spec.ts b/sdk/storage/storage-file-share/test/node/fileclient.spec.ts index 0d8592d5d289..3bde97f36f53 100644 --- a/sdk/storage/storage-file-share/test/node/fileclient.spec.ts +++ b/sdk/storage/storage-file-share/test/node/fileclient.spec.ts @@ -4,22 +4,20 @@ import { assert } from "chai"; import { Buffer } from "buffer"; import * as fs from "fs"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import * as path from "path"; import { Duplex } from "stream"; import * as zlib from "zlib"; import { isLiveMode, Recorder } from "@azure-tools/test-recorder"; +import type { ShareClient, ShareDirectoryClient, StorageSharedKeyCredential } from "../../src"; import { FileSASPermissions, generateFileSASQueryParameters, getFileServiceAccountAudience, newPipeline, - ShareClient, - ShareDirectoryClient, ShareFileClient, - StorageSharedKeyCredential, } from "../../src"; import { readStreamToLocalFileWithLogs } from "../../test/utils/testutils.node"; import { diff --git a/sdk/storage/storage-file-share/test/node/fileserviceclient.spec.ts b/sdk/storage/storage-file-share/test/node/fileserviceclient.spec.ts index 5fba8d7e2994..fe987be7c6e7 100644 --- a/sdk/storage/storage-file-share/test/node/fileserviceclient.spec.ts +++ b/sdk/storage/storage-file-share/test/node/fileserviceclient.spec.ts @@ -12,9 +12,10 @@ import { recorderEnvSetup, uriSanitizers, } from "../utils"; -import { ShareServiceClient, newPipeline, StorageSharedKeyCredential, ShareItem } from "../../src"; +import type { StorageSharedKeyCredential, ShareItem } from "../../src"; +import { ShareServiceClient, newPipeline } from "../../src"; import { delay, Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("FileServiceClient Node.js only", () => { let recorder: Recorder; diff --git a/sdk/storage/storage-file-share/test/node/highlevel.node.spec.ts b/sdk/storage/storage-file-share/test/node/highlevel.node.spec.ts index c6a8387d65f9..1adf8ae23cfe 100644 --- a/sdk/storage/storage-file-share/test/node/highlevel.node.spec.ts +++ b/sdk/storage/storage-file-share/test/node/highlevel.node.spec.ts @@ -13,11 +13,11 @@ import { recorderEnvSetup, uriSanitizers, } from "../utils"; -import { RetriableReadableStreamOptions } from "../../src/utils/RetriableReadableStream"; -import { ShareClient, ShareDirectoryClient, ShareFileClient } from "../../src"; +import type { RetriableReadableStreamOptions } from "../../src/utils/RetriableReadableStream"; +import type { ShareClient, ShareDirectoryClient, ShareFileClient } from "../../src"; import { readStreamToLocalFileWithLogs } from "../../test/utils/testutils.node"; import { Recorder, isLiveMode } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Highlevel Node.js only", () => { let shareName: string; diff --git a/sdk/storage/storage-file-share/test/node/leaseClient.spec.ts b/sdk/storage/storage-file-share/test/node/leaseClient.spec.ts index b852964046b5..ec5c93888926 100644 --- a/sdk/storage/storage-file-share/test/node/leaseClient.spec.ts +++ b/sdk/storage/storage-file-share/test/node/leaseClient.spec.ts @@ -10,8 +10,8 @@ import { bodyToString, } from "../utils"; import { Recorder } from "@azure-tools/test-recorder"; -import { ShareClient, ShareDirectoryClient, ShareFileClient } from "../../src"; -import { Context } from "mocha"; +import type { ShareClient, ShareDirectoryClient, ShareFileClient } from "../../src"; +import type { Context } from "mocha"; // for file describe("LeaseClient Node.js only - OAuth", () => { diff --git a/sdk/storage/storage-file-share/test/node/sas.spec.ts b/sdk/storage/storage-file-share/test/node/sas.spec.ts index 893eb5ffd89c..4ebe1ec27f16 100644 --- a/sdk/storage/storage-file-share/test/node/sas.spec.ts +++ b/sdk/storage/storage-file-share/test/node/sas.spec.ts @@ -14,7 +14,7 @@ import { ShareServiceClient, } from "../../src"; import { AnonymousCredential } from "../../../storage-blob/src/credentials/AnonymousCredential"; -import { StorageSharedKeyCredential } from "../../../storage-blob/src/credentials/StorageSharedKeyCredential"; +import type { StorageSharedKeyCredential } from "../../../storage-blob/src/credentials/StorageSharedKeyCredential"; import { FileSASPermissions } from "../../src/FileSASPermissions"; import { generateFileSASQueryParameters } from "../../src/FileSASSignatureValues"; import { newPipeline } from "../../src/Pipeline"; @@ -27,7 +27,7 @@ import { uriSanitizers, } from "../utils"; import { delay, Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Shared Access Signature (SAS) generation Node.js only", () => { let recorder: Recorder; diff --git a/sdk/storage/storage-file-share/test/node/shareclient.spec.ts b/sdk/storage/storage-file-share/test/node/shareclient.spec.ts index 1f27f15553e9..585b0850a535 100644 --- a/sdk/storage/storage-file-share/test/node/shareclient.spec.ts +++ b/sdk/storage/storage-file-share/test/node/shareclient.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { Recorder } from "@azure-tools/test-recorder"; @@ -17,14 +17,8 @@ import { SimpleTokenCredential, getTokenBSUWithDefaultCredential, } from "../utils"; -import { - getFileServiceAccountAudience, - newPipeline, - ShareClient, - ShareServiceClient, - SignedIdentifier, - StorageSharedKeyCredential, -} from "../../src"; +import type { ShareServiceClient, SignedIdentifier, StorageSharedKeyCredential } from "../../src"; +import { getFileServiceAccountAudience, newPipeline, ShareClient } from "../../src"; import { createTestCredential } from "@azure-tools/test-credential"; describe("ShareClient Node.js only", () => { diff --git a/sdk/storage/storage-file-share/test/node/sharedkeycredentialpolicy.spec.ts b/sdk/storage/storage-file-share/test/node/sharedkeycredentialpolicy.spec.ts index d03168797458..039818d492af 100644 --- a/sdk/storage/storage-file-share/test/node/sharedkeycredentialpolicy.spec.ts +++ b/sdk/storage/storage-file-share/test/node/sharedkeycredentialpolicy.spec.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; +import type { Context } from "mocha"; import { Recorder } from "@azure-tools/test-recorder"; -import { ShareClient } from "../../src"; +import type { ShareClient } from "../../src"; import { getBSU, getUniqueName, recorderEnvSetup, uriSanitizers } from "../utils"; describe("StorageSharedKeyCredentialPolicy Node.js only", () => { diff --git a/sdk/storage/storage-file-share/test/retrypolicy.spec.ts b/sdk/storage/storage-file-share/test/retrypolicy.spec.ts index 6051914fcb5b..4701b6903fac 100644 --- a/sdk/storage/storage-file-share/test/retrypolicy.spec.ts +++ b/sdk/storage/storage-file-share/test/retrypolicy.spec.ts @@ -2,13 +2,14 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Pipeline } from "@azure/core-rest-pipeline"; +import type { Pipeline } from "@azure/core-rest-pipeline"; -import { ShareClient, RestError, ShareServiceClient } from "../src"; +import type { ShareClient, ShareServiceClient } from "../src"; +import { RestError } from "../src"; import { getBSU, getUniqueName, recorderEnvSetup, uriSanitizers } from "./utils"; import { injectorPolicy, injectorPolicyName } from "./utils/InjectorPolicy"; import { Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("RetryPolicy", () => { let shareServiceClient: ShareServiceClient; diff --git a/sdk/storage/storage-file-share/test/shareclient.spec.ts b/sdk/storage/storage-file-share/test/shareclient.spec.ts index 6fc578eaa477..6d76ba47f00e 100644 --- a/sdk/storage/storage-file-share/test/shareclient.spec.ts +++ b/sdk/storage/storage-file-share/test/shareclient.spec.ts @@ -11,9 +11,10 @@ import { recorderEnvSetup, uriSanitizers, } from "./utils"; -import { ShareClient, ShareItem, ShareServiceClient } from "../src"; +import type { ShareItem, ShareServiceClient } from "../src"; +import { ShareClient } from "../src"; import { delay, Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { configureStorageClient } from "./utils"; describe("ShareClient", () => { diff --git a/sdk/storage/storage-file-share/test/specialnaming.spec.ts b/sdk/storage/storage-file-share/test/specialnaming.spec.ts index 3a30b1e9f0b0..96298b3a92ae 100644 --- a/sdk/storage/storage-file-share/test/specialnaming.spec.ts +++ b/sdk/storage/storage-file-share/test/specialnaming.spec.ts @@ -1,12 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ShareClient, ShareDirectoryClient, ShareFileClient } from "../src"; +import type { ShareClient } from "../src"; +import { ShareDirectoryClient, ShareFileClient } from "../src"; import { getBSU, getUniqueName, recorderEnvSetup, uriSanitizers } from "./utils/index"; import { assert } from "chai"; import { appendToURLPath } from "../src/utils/utils.common"; import { Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Special Naming Tests", () => { let shareName: string; diff --git a/sdk/storage/storage-file-share/test/utils/InjectorPolicy.ts b/sdk/storage/storage-file-share/test/utils/InjectorPolicy.ts index a4288244ce14..db9d059215b5 100644 --- a/sdk/storage/storage-file-share/test/utils/InjectorPolicy.ts +++ b/sdk/storage/storage-file-share/test/utils/InjectorPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelineRequest, PipelineResponse, SendRequest, diff --git a/sdk/storage/storage-file-share/test/utils/index.browser.ts b/sdk/storage/storage-file-share/test/utils/index.browser.ts index 0921668cee9a..0c56a9d66649 100644 --- a/sdk/storage/storage-file-share/test/utils/index.browser.ts +++ b/sdk/storage/storage-file-share/test/utils/index.browser.ts @@ -1,13 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { AnonymousCredential } from "../../../storage-blob/src/credentials/AnonymousCredential"; import { newPipeline } from "../../src/Pipeline"; -import { ShareClientConfig, ShareClientOptions } from "../../src/models"; +import type { ShareClientConfig, ShareClientOptions } from "../../src/models"; import { ShareServiceClient } from "../../src/ShareServiceClient"; import { configureStorageClient, SimpleTokenCredential } from "./testutils.common"; -import { env, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; export * from "./testutils.common"; diff --git a/sdk/storage/storage-file-share/test/utils/index.ts b/sdk/storage/storage-file-share/test/utils/index.ts index 4094232c03ad..e14535a5f563 100644 --- a/sdk/storage/storage-file-share/test/utils/index.ts +++ b/sdk/storage/storage-file-share/test/utils/index.ts @@ -4,27 +4,27 @@ import { randomBytes } from "crypto"; import * as fs from "fs"; import * as path from "path"; -import { env, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { createTestCredential } from "@azure-tools/test-credential"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { BlobServiceClient } from "@azure/storage-blob"; +import type { ShareClientConfig, ShareClientOptions } from "../../src"; import { AccountSASPermissions, AccountSASResourceTypes, AccountSASServices, generateAccountSASQueryParameters, SASProtocol, - ShareClientConfig, - ShareClientOptions, } from "../../src"; import { StorageSharedKeyCredential } from "../../../storage-blob/src/credentials/StorageSharedKeyCredential"; import { newPipeline } from "../../src/Pipeline"; import { ShareServiceClient } from "../../src/ShareServiceClient"; import { extractConnectionStringParts } from "../../src/utils/utils.common"; import { getUniqueName, configureStorageClient } from "./testutils.common"; -import { StorageClient } from "../../src/StorageClient"; +import type { StorageClient } from "../../src/StorageClient"; export * from "./testutils.common"; diff --git a/sdk/storage/storage-file-share/test/utils/testutils.common.ts b/sdk/storage/storage-file-share/test/utils/testutils.common.ts index 3b33fd994c24..fb4f840c23f4 100644 --- a/sdk/storage/storage-file-share/test/utils/testutils.common.ts +++ b/sdk/storage/storage-file-share/test/utils/testutils.common.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; -import { Pipeline } from "@azure/core-rest-pipeline"; +import type { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { Pipeline } from "@azure/core-rest-pipeline"; import { isBrowser } from "@azure/core-util"; -import { StorageClient } from "../../src/StorageClient"; -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { StorageClient } from "../../src/StorageClient"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; type UriSanitizers = Required["sanitizerOptions"]["uriSanitizers"]; diff --git a/sdk/storage/storage-internal-avro/review/storage-internal-avro.api.md b/sdk/storage/storage-internal-avro/review/storage-internal-avro.api.md index 4a9c9018cc3a..344098afcc5f 100644 --- a/sdk/storage/storage-internal-avro/review/storage-internal-avro.api.md +++ b/sdk/storage/storage-internal-avro/review/storage-internal-avro.api.md @@ -4,7 +4,7 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; +import type { AbortSignalLike } from '@azure/abort-controller'; // @public (undocumented) export abstract class AvroReadable { diff --git a/sdk/storage/storage-internal-avro/src/AvroParser.ts b/sdk/storage/storage-internal-avro/src/AvroParser.ts index f8663faca544..9bbdf50e7684 100644 --- a/sdk/storage/storage-internal-avro/src/AvroParser.ts +++ b/sdk/storage/storage-internal-avro/src/AvroParser.ts @@ -4,9 +4,9 @@ // TODO: Do a review of the Object usage and non-interfaces /* eslint-disable @azure/azure-sdk/ts-use-interface-parameters */ -import { AbortSignalLike } from "@azure/abort-controller"; -import { AvroReadable } from "./AvroReadable"; -import { KeyValuePair } from "./utils/utils.common"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { AvroReadable } from "./AvroReadable"; +import type { KeyValuePair } from "./utils/utils.common"; /** * Options to configure the AvroParser read methods. @@ -306,7 +306,7 @@ export abstract class AvroType { try { return AvroType.fromStringSchema(type); } catch { - // eslint-disable-line no-empty + // no-op } switch (type) { diff --git a/sdk/storage/storage-internal-avro/src/AvroReadable.ts b/sdk/storage/storage-internal-avro/src/AvroReadable.ts index 5d4ddf45d3de..dee7d24d7536 100644 --- a/sdk/storage/storage-internal-avro/src/AvroReadable.ts +++ b/sdk/storage/storage-internal-avro/src/AvroReadable.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; /** * Options to configure the {@link AvroReadable.read} operation. diff --git a/sdk/storage/storage-internal-avro/src/AvroReadableFromBlob.ts b/sdk/storage/storage-internal-avro/src/AvroReadableFromBlob.ts index f3f91d65e60a..30e82621d251 100644 --- a/sdk/storage/storage-internal-avro/src/AvroReadableFromBlob.ts +++ b/sdk/storage/storage-internal-avro/src/AvroReadableFromBlob.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AvroReadable, AvroReadableReadOptions } from "./AvroReadable"; +import type { AvroReadableReadOptions } from "./AvroReadable"; +import { AvroReadable } from "./AvroReadable"; import { AbortError } from "@azure/abort-controller"; const ABORT_ERROR = new AbortError("Reading from the avro blob was aborted."); diff --git a/sdk/storage/storage-internal-avro/src/AvroReadableFromStream.ts b/sdk/storage/storage-internal-avro/src/AvroReadableFromStream.ts index 4bfc2159a732..da166b3badbf 100644 --- a/sdk/storage/storage-internal-avro/src/AvroReadableFromStream.ts +++ b/sdk/storage/storage-internal-avro/src/AvroReadableFromStream.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AvroReadable, AvroReadableReadOptions } from "./AvroReadable"; +import type { AvroReadableReadOptions } from "./AvroReadable"; +import { AvroReadable } from "./AvroReadable"; import { AbortError } from "@azure/abort-controller"; const ABORT_ERROR = new AbortError("Reading from the avro stream was aborted."); diff --git a/sdk/storage/storage-internal-avro/src/AvroReader.ts b/sdk/storage/storage-internal-avro/src/AvroReader.ts index efeed3125c3e..6e1cb5a6cc73 100644 --- a/sdk/storage/storage-internal-avro/src/AvroReader.ts +++ b/sdk/storage/storage-internal-avro/src/AvroReader.ts @@ -11,8 +11,8 @@ import { AVRO_SYNC_MARKER_SIZE, } from "./AvroConstants"; import { AvroParser, AvroType } from "./AvroParser"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { AvroReadable } from "./AvroReadable"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { AvroReadable } from "./AvroReadable"; import { arraysEqual } from "./utils/utils.common"; /** diff --git a/sdk/storage/storage-internal-avro/src/utils/utils.common.ts b/sdk/storage/storage-internal-avro/src/utils/utils.common.ts index 0ba3bf2eaf26..72ea2d7d46ba 100644 --- a/sdk/storage/storage-internal-avro/src/utils/utils.common.ts +++ b/sdk/storage/storage-internal-avro/src/utils/utils.common.ts @@ -8,7 +8,7 @@ export interface KeyValuePair { export function arraysEqual(a: Uint8Array, b: Uint8Array): boolean { if (a === b) return true; - // eslint-disable-next-line eqeqeq + if (a == null || b == null) return false; if (a.length !== b.length) return false; diff --git a/sdk/storage/storage-internal-avro/test/node/avroreadable.spec.ts b/sdk/storage/storage-internal-avro/test/node/avroreadable.spec.ts index 3f335bbc7b34..8d3c0c1c21a9 100644 --- a/sdk/storage/storage-internal-avro/test/node/avroreadable.spec.ts +++ b/sdk/storage/storage-internal-avro/test/node/avroreadable.spec.ts @@ -28,7 +28,6 @@ describe("AvroReadableFromStream", () => { }); it("abort read should work", async () => { - // eslint-disable-next-line @typescript-eslint/no-empty-function const delayedReadable = new Readable({ read() {} }); const rfs = new AvroReadableFromStream(delayedReadable); diff --git a/sdk/storage/storage-internal-avro/test/node/avroreader.spec.ts b/sdk/storage/storage-internal-avro/test/node/avroreader.spec.ts index 887110dac89c..46a38b904793 100644 --- a/sdk/storage/storage-internal-avro/test/node/avroreader.spec.ts +++ b/sdk/storage/storage-internal-avro/test/node/avroreader.spec.ts @@ -64,7 +64,6 @@ describe("AvroReader", () => { }); it("aborter", async () => { - // eslint-disable-next-line @typescript-eslint/no-empty-function const delayedReadable = new Readable({ read() {} }); const rfs = new AvroReadableFromStream(delayedReadable); const avroReader = new AvroReader(rfs); diff --git a/sdk/storage/storage-queue/review/storage-queue.api.md b/sdk/storage/storage-queue/review/storage-queue.api.md index a6e63810a60e..2dd5d84bc75f 100644 --- a/sdk/storage/storage-queue/review/storage-queue.api.md +++ b/sdk/storage/storage-queue/review/storage-queue.api.md @@ -4,24 +4,24 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; +import type { AbortSignalLike } from '@azure/abort-controller'; import { AzureLogger } from '@azure/logger'; import * as coreClient from '@azure/core-client'; import * as coreHttpCompat from '@azure/core-http-compat'; import { HttpHeadersLike as HttpHeaders } from '@azure/core-http-compat'; import { CompatResponse as HttpOperationResponse } from '@azure/core-http-compat'; -import { HttpPipelineLogLevel } from '@azure/core-http-compat'; +import type { HttpPipelineLogLevel } from '@azure/core-http-compat'; import { RequestBodyType as HttpRequestBody } from '@azure/core-rest-pipeline'; -import { KeepAliveOptions } from '@azure/core-http-compat'; -import { OperationTracingOptions } from '@azure/core-tracing'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { ProxySettings } from '@azure/core-rest-pipeline'; +import type { KeepAliveOptions } from '@azure/core-http-compat'; +import type { OperationTracingOptions } from '@azure/core-tracing'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { ProxySettings } from '@azure/core-rest-pipeline'; import { RequestPolicy } from '@azure/core-http-compat'; import { RequestPolicyFactory } from '@azure/core-http-compat'; import { RequestPolicyOptionsLike as RequestPolicyOptions } from '@azure/core-http-compat'; import { RestError } from '@azure/core-rest-pipeline'; -import { TokenCredential } from '@azure/core-auth'; -import { UserAgentPolicyOptions } from '@azure/core-rest-pipeline'; +import type { TokenCredential } from '@azure/core-auth'; +import type { UserAgentPolicyOptions } from '@azure/core-rest-pipeline'; import { WebResourceLike as WebResource } from '@azure/core-http-compat'; // @public diff --git a/sdk/storage/storage-queue/src/AccountSASSignatureValues.ts b/sdk/storage/storage-queue/src/AccountSASSignatureValues.ts index 6dbd9670d66f..cff1f6397c32 100644 --- a/sdk/storage/storage-queue/src/AccountSASSignatureValues.ts +++ b/sdk/storage/storage-queue/src/AccountSASSignatureValues.ts @@ -4,9 +4,11 @@ import { AccountSASPermissions } from "./AccountSASPermissions"; import { AccountSASResourceTypes } from "./AccountSASResourceTypes"; import { AccountSASServices } from "./AccountSASServices"; -import { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; -import { SasIPRange, ipRangeToString } from "./SasIPRange"; -import { SASProtocol, SASQueryParameters } from "./SASQueryParameters"; +import type { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; +import type { SasIPRange } from "./SasIPRange"; +import { ipRangeToString } from "./SasIPRange"; +import type { SASProtocol } from "./SASQueryParameters"; +import { SASQueryParameters } from "./SASQueryParameters"; import { SERVICE_VERSION } from "./utils/constants"; import { truncatedISO8061Date } from "./utils/utils.common"; diff --git a/sdk/storage/storage-queue/src/Pipeline.ts b/sdk/storage/storage-queue/src/Pipeline.ts index 8e218ad5693b..b92e0eda3751 100644 --- a/sdk/storage/storage-queue/src/Pipeline.ts +++ b/sdk/storage/storage-queue/src/Pipeline.ts @@ -1,6 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { + KeepAliveOptions, + ExtendedServiceClientOptions, + HttpPipelineLogLevel, +} from "@azure/core-http-compat"; import { CompatResponse as HttpOperationResponse, RequestPolicy as IHttpClient, @@ -9,31 +14,29 @@ import { RequestPolicyFactory, RequestPolicyOptionsLike as RequestPolicyOptions, WebResourceLike as WebResource, - KeepAliveOptions, - ExtendedServiceClientOptions, convertHttpClient, createRequestPolicyFactoryPolicy, - HttpPipelineLogLevel, } from "@azure/core-http-compat"; -import { - RequestBodyType as HttpRequestBody, +import type { ProxySettings as ProxyOptions, UserAgentPolicyOptions as UserAgentOptions, - bearerTokenAuthenticationPolicy, Pipeline as CorePipeline, - decompressResponsePolicyName, PipelinePolicy, HttpClient, } from "@azure/core-rest-pipeline"; +import { + RequestBodyType as HttpRequestBody, + bearerTokenAuthenticationPolicy, + decompressResponsePolicyName, +} from "@azure/core-rest-pipeline"; import { authorizeRequestOnTenantChallenge, createClientPipeline } from "@azure/core-client"; import { parseXML, stringifyXML } from "@azure/core-xml"; -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { logger } from "./log"; -import { - StorageRetryOptions, - StorageRetryPolicyFactory, -} from "../../storage-blob/src/StorageRetryPolicyFactory"; +import type { StorageRetryOptions } from "../../storage-blob/src/StorageRetryPolicyFactory"; +import { StorageRetryPolicyFactory } from "../../storage-blob/src/StorageRetryPolicyFactory"; import { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; import { AnonymousCredential } from "../../storage-blob/src/credentials/AnonymousCredential"; import { diff --git a/sdk/storage/storage-queue/src/QueueClient.ts b/sdk/storage/storage-queue/src/QueueClient.ts index e0b3518cc29a..017d8c5e763e 100644 --- a/sdk/storage/storage-queue/src/QueueClient.ts +++ b/sdk/storage/storage-queue/src/QueueClient.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { isNode } from "@azure/core-util"; -import { +import type { EnqueuedMessage, DequeuedMessageItem, MessagesDequeueHeaders, @@ -29,30 +30,32 @@ import { MessageIdDeleteHeaders, MessageIdUpdateHeaders, } from "./generatedModels"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { Messages, MessageId, Queue } from "./generated/src/operationsInterfaces"; -import { newPipeline, StoragePipelineOptions, Pipeline, isPipelineLike } from "./Pipeline"; -import { StorageClient, CommonOptions, getStorageClientContext } from "./StorageClient"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { Messages, MessageId, Queue } from "./generated/src/operationsInterfaces"; +import type { StoragePipelineOptions, Pipeline } from "./Pipeline"; +import { newPipeline, isPipelineLike } from "./Pipeline"; +import type { CommonOptions } from "./StorageClient"; +import { StorageClient, getStorageClientContext } from "./StorageClient"; +import type { WithResponse } from "./utils/utils.common"; import { appendToURLPath, extractConnectionStringParts, isIpEndpointStyle, truncatedISO8061Date, appendToURLQuery, - WithResponse, assertResponse, } from "./utils/utils.common"; import { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; import { AnonymousCredential } from "../../storage-blob/src/credentials/AnonymousCredential"; import { tracingClient } from "./utils/tracing"; -import { Metadata } from "./models"; +import type { Metadata } from "./models"; import { generateQueueSASQueryParameters, generateQueueSASQueryParametersInternal, } from "./QueueSASSignatureValues"; -import { SasIPRange } from "./SasIPRange"; -import { QueueSASPermissions } from "./QueueSASPermissions"; -import { SASProtocol } from "./SASQueryParameters"; +import type { SasIPRange } from "./SasIPRange"; +import type { QueueSASPermissions } from "./QueueSASPermissions"; +import type { SASProtocol } from "./SASQueryParameters"; import { getDefaultProxySettings } from "@azure/core-rest-pipeline"; /** diff --git a/sdk/storage/storage-queue/src/QueueSASSignatureValues.ts b/sdk/storage/storage-queue/src/QueueSASSignatureValues.ts index 54f1c5e8b4e1..d60fee2eaf30 100644 --- a/sdk/storage/storage-queue/src/QueueSASSignatureValues.ts +++ b/sdk/storage/storage-queue/src/QueueSASSignatureValues.ts @@ -2,9 +2,10 @@ // Licensed under the MIT License. import { QueueSASPermissions } from "./QueueSASPermissions"; -import { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; -import { SasIPRange, ipRangeToString } from "./SasIPRange"; -import { SASProtocol } from "./SASQueryParameters"; +import type { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; +import type { SasIPRange } from "./SasIPRange"; +import { ipRangeToString } from "./SasIPRange"; +import type { SASProtocol } from "./SASQueryParameters"; import { SASQueryParameters } from "./SASQueryParameters"; import { SERVICE_VERSION } from "./utils/constants"; import { truncatedISO8061Date } from "./utils/utils.common"; diff --git a/sdk/storage/storage-queue/src/QueueServiceClient.ts b/sdk/storage/storage-queue/src/QueueServiceClient.ts index a5502961df47..2dba395f3ffc 100644 --- a/sdk/storage/storage-queue/src/QueueServiceClient.ts +++ b/sdk/storage/storage-queue/src/QueueServiceClient.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { isNode } from "@azure/core-util"; -import { +import type { QueueCreateResponse, QueueDeleteResponse, QueueItem, @@ -19,11 +20,13 @@ import { ServiceGetStatisticsHeaders, QueueServiceStatistics, } from "./generatedModels"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { Service } from "./generated/src/operationsInterfaces"; -import { newPipeline, StoragePipelineOptions, Pipeline, isPipelineLike } from "./Pipeline"; -import { StorageClient, CommonOptions } from "./StorageClient"; -import { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { Service } from "./generated/src/operationsInterfaces"; +import type { StoragePipelineOptions, Pipeline } from "./Pipeline"; +import { newPipeline, isPipelineLike } from "./Pipeline"; +import type { CommonOptions } from "./StorageClient"; +import { StorageClient } from "./StorageClient"; +import type { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; import { appendToURLPath, appendToURLQuery, @@ -33,15 +36,16 @@ import { import { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; import { AnonymousCredential } from "../../storage-blob/src/credentials/AnonymousCredential"; import { tracingClient } from "./utils/tracing"; -import { QueueClient, QueueCreateOptions, QueueDeleteOptions } from "./QueueClient"; +import type { QueueCreateOptions, QueueDeleteOptions } from "./QueueClient"; +import { QueueClient } from "./QueueClient"; import { AccountSASPermissions } from "./AccountSASPermissions"; import { generateAccountSASQueryParameters, generateAccountSASQueryParametersInternal, } from "./AccountSASSignatureValues"; import { AccountSASServices } from "./AccountSASServices"; -import { SASProtocol } from "./SASQueryParameters"; -import { SasIPRange } from "./SasIPRange"; +import type { SASProtocol } from "./SASQueryParameters"; +import type { SasIPRange } from "./SasIPRange"; import { getDefaultProxySettings } from "@azure/core-rest-pipeline"; /** diff --git a/sdk/storage/storage-queue/src/SASQueryParameters.ts b/sdk/storage/storage-queue/src/SASQueryParameters.ts index 68d751f1b46b..f4344a3819a0 100644 --- a/sdk/storage/storage-queue/src/SASQueryParameters.ts +++ b/sdk/storage/storage-queue/src/SASQueryParameters.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { SasIPRange, ipRangeToString } from "./SasIPRange"; +import type { SasIPRange } from "./SasIPRange"; +import { ipRangeToString } from "./SasIPRange"; import { truncatedISO8061Date } from "./utils/utils.common"; /** diff --git a/sdk/storage/storage-queue/src/StorageClient.ts b/sdk/storage/storage-queue/src/StorageClient.ts index dec9b493afb8..8305192794d0 100644 --- a/sdk/storage/storage-queue/src/StorageClient.ts +++ b/sdk/storage/storage-queue/src/StorageClient.ts @@ -1,19 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { StorageClient as StorageClientContext } from "./generated/src/"; +import type { StorageClient as StorageClientContext } from "./generated/src/"; import { StorageContextClient } from "./StorageContextClient"; -import { - Pipeline, - StoragePipelineOptions, - getCoreClientOptions, - getCredentialFromPipeline, -} from "./Pipeline"; +import type { Pipeline, StoragePipelineOptions } from "./Pipeline"; +import { getCoreClientOptions, getCredentialFromPipeline } from "./Pipeline"; import { getAccountNameFromUrl } from "./utils/utils.common"; -import { OperationTracingOptions } from "@azure/core-tracing"; -import { AnonymousCredential } from "../../storage-blob/src/credentials/AnonymousCredential"; -import { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; -import { TokenCredential } from "@azure/core-auth"; +import type { OperationTracingOptions } from "@azure/core-tracing"; +import type { AnonymousCredential } from "../../storage-blob/src/credentials/AnonymousCredential"; +import type { StorageSharedKeyCredential } from "../../storage-blob/src/credentials/StorageSharedKeyCredential"; +import type { TokenCredential } from "@azure/core-auth"; /** * An interface for options common to every remote operation. diff --git a/sdk/storage/storage-queue/src/StorageContextClient.ts b/sdk/storage/storage-queue/src/StorageContextClient.ts index e539ef745e70..0dc983a0eda3 100644 --- a/sdk/storage/storage-queue/src/StorageContextClient.ts +++ b/sdk/storage/storage-queue/src/StorageContextClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationArguments, OperationSpec } from "@azure/core-client"; +import type { OperationArguments, OperationSpec } from "@azure/core-client"; import { StorageClient } from "./generated/src"; /** diff --git a/sdk/storage/storage-queue/src/generatedModels.ts b/sdk/storage/storage-queue/src/generatedModels.ts index 78b958118468..76f92bc0da3f 100644 --- a/sdk/storage/storage-queue/src/generatedModels.ts +++ b/sdk/storage/storage-queue/src/generatedModels.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { WithResponse } from "./utils/utils.common"; -import { +import type { WithResponse } from "./utils/utils.common"; +import type { ListQueuesSegmentResponse, MessageIdDeleteHeaders, MessageIdUpdateHeaders, diff --git a/sdk/storage/storage-queue/src/utils/utils.common.ts b/sdk/storage/storage-queue/src/utils/utils.common.ts index bfe517987480..c5f2fdc43b1f 100644 --- a/sdk/storage/storage-queue/src/utils/utils.common.ts +++ b/sdk/storage/storage-queue/src/utils/utils.common.ts @@ -1,14 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { HttpHeaders, createHttpHeaders } from "@azure/core-rest-pipeline"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { HttpHeaders } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; import { HeaderConstants, URLConstants, DevelopmentConnectionString, PathStylePorts, } from "./constants"; -import { HttpHeadersLike, WebResourceLike } from "@azure/core-http-compat"; +import type { HttpHeadersLike, WebResourceLike } from "@azure/core-http-compat"; /** * Append a string to URL path. Will remove duplicated "/" in front of the string diff --git a/sdk/storage/storage-queue/test/aborter.spec.ts b/sdk/storage/storage-queue/test/aborter.spec.ts index 7519fec6219a..d82e38cdbf4c 100644 --- a/sdk/storage/storage-queue/test/aborter.spec.ts +++ b/sdk/storage/storage-queue/test/aborter.spec.ts @@ -3,11 +3,11 @@ import { assert } from "chai"; -import { QueueClient } from "../src/QueueClient"; +import type { QueueClient } from "../src/QueueClient"; import { getQSU } from "./utils"; import { getUniqueName, recorderEnvSetup, uriSanitizers } from "./utils/testutils.common"; import { Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Aborter", () => { let queueName: string; diff --git a/sdk/storage/storage-queue/test/messageidclient.spec.ts b/sdk/storage/storage-queue/test/messageidclient.spec.ts index a8afc2f26879..9eddb79fdb2a 100644 --- a/sdk/storage/storage-queue/test/messageidclient.spec.ts +++ b/sdk/storage/storage-queue/test/messageidclient.spec.ts @@ -7,7 +7,7 @@ import { QueueClient } from "../src/QueueClient"; import { delay, Recorder } from "@azure-tools/test-recorder"; import { extractConnectionStringParts } from "../src/utils/utils.common"; import { getUniqueName, recorderEnvSetup } from "./utils/index.browser"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("QueueClient messageId methods", () => { let queueName: string; diff --git a/sdk/storage/storage-queue/test/node/emulator-tests.spec.ts b/sdk/storage/storage-queue/test/node/emulator-tests.spec.ts index 2c3b3281f298..7614137e146f 100644 --- a/sdk/storage/storage-queue/test/node/emulator-tests.spec.ts +++ b/sdk/storage/storage-queue/test/node/emulator-tests.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { QueueClient, QueueServiceClient } from "../../src"; import { getConnectionStringFromEnvironment, diff --git a/sdk/storage/storage-queue/test/node/messageidclient.spec.ts b/sdk/storage/storage-queue/test/node/messageidclient.spec.ts index 2845547d0e82..b4dd77e1086e 100644 --- a/sdk/storage/storage-queue/test/node/messageidclient.spec.ts +++ b/sdk/storage/storage-queue/test/node/messageidclient.spec.ts @@ -12,7 +12,7 @@ import { } from "../utils"; import { Recorder } from "@azure-tools/test-recorder"; import { QueueClient } from "../../src/QueueClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("QueueClient messageId methods, Node.js only", () => { let queueName: string; diff --git a/sdk/storage/storage-queue/test/node/messagesclient.spec.ts b/sdk/storage/storage-queue/test/node/messagesclient.spec.ts index 1f759e64f49c..c7b5054eedb7 100644 --- a/sdk/storage/storage-queue/test/node/messagesclient.spec.ts +++ b/sdk/storage/storage-queue/test/node/messagesclient.spec.ts @@ -11,10 +11,10 @@ import { } from "../utils"; import { Recorder } from "@azure-tools/test-recorder"; import { QueueClient } from "../../src/QueueClient"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { assertClientUsesTokenCredential } from "../utils/assert"; import { newPipeline } from "../../src"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("QueueClient message methods, Node.js only", () => { let queueName: string; diff --git a/sdk/storage/storage-queue/test/node/queueclient.spec.ts b/sdk/storage/storage-queue/test/node/queueclient.spec.ts index 7e12c58438d3..219f98d93e97 100644 --- a/sdk/storage/storage-queue/test/node/queueclient.spec.ts +++ b/sdk/storage/storage-queue/test/node/queueclient.spec.ts @@ -11,15 +11,11 @@ import { SimpleTokenCredential, } from "../utils"; import { Recorder } from "@azure-tools/test-recorder"; -import { - getQueueServiceAccountAudience, - newPipeline, - QueueClient, - QueueServiceClient, -} from "../../src"; -import { TokenCredential } from "@azure/core-auth"; +import type { QueueServiceClient } from "../../src"; +import { getQueueServiceAccountAudience, newPipeline, QueueClient } from "../../src"; +import type { TokenCredential } from "@azure/core-auth"; import { assertClientUsesTokenCredential } from "../utils/assert"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createTestCredential } from "@azure-tools/test-credential"; describe("QueueClient Node.js only", () => { diff --git a/sdk/storage/storage-queue/test/node/queueserviceclient.spec.ts b/sdk/storage/storage-queue/test/node/queueserviceclient.spec.ts index d13a051583fa..456c79de04e9 100644 --- a/sdk/storage/storage-queue/test/node/queueserviceclient.spec.ts +++ b/sdk/storage/storage-queue/test/node/queueserviceclient.spec.ts @@ -11,9 +11,9 @@ import { import { Recorder } from "@azure-tools/test-recorder"; import { QueueServiceClient } from "../../src/QueueServiceClient"; import { newPipeline } from "../../src"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { assertClientUsesTokenCredential } from "../utils/assert"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("QueueServiceClient Node.js only", () => { let recorder: Recorder; diff --git a/sdk/storage/storage-queue/test/node/sas.spec.ts b/sdk/storage/storage-queue/test/node/sas.spec.ts index dacac0a95ffc..32af36f1e14c 100644 --- a/sdk/storage/storage-queue/test/node/sas.spec.ts +++ b/sdk/storage/storage-queue/test/node/sas.spec.ts @@ -3,6 +3,7 @@ import { assert } from "chai"; +import type { StorageSharedKeyCredential } from "../../src"; import { AccountSASPermissions, AccountSASResourceTypes, @@ -13,7 +14,6 @@ import { generateAccountSASQueryParameters, generateQueueSASQueryParameters, QueueServiceClient, - StorageSharedKeyCredential, newPipeline, } from "../../src"; import { SASProtocol } from "../../src/SASQueryParameters"; @@ -25,7 +25,7 @@ import { uriSanitizers, } from "../utils"; import { delay, Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Shared Access Signature (SAS) generation Node.js only", () => { let queueServiceClient: QueueServiceClient; diff --git a/sdk/storage/storage-queue/test/node/utils.spec.ts b/sdk/storage/storage-queue/test/node/utils.spec.ts index bac6f191c68f..7d69e0cfb334 100644 --- a/sdk/storage/storage-queue/test/node/utils.spec.ts +++ b/sdk/storage/storage-queue/test/node/utils.spec.ts @@ -5,7 +5,7 @@ import { assert } from "chai"; import { extractConnectionStringParts } from "../../src/utils/utils.common"; import { Recorder } from "@azure-tools/test-recorder"; import { recorderEnvSetup } from "../utils"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Utility Helpers Node.js only", () => { let recorder: Recorder; diff --git a/sdk/storage/storage-queue/test/queueclient.spec.ts b/sdk/storage/storage-queue/test/queueclient.spec.ts index 5532c1ca8e71..16358a6116ef 100644 --- a/sdk/storage/storage-queue/test/queueclient.spec.ts +++ b/sdk/storage/storage-queue/test/queueclient.spec.ts @@ -9,11 +9,12 @@ import { recorderEnvSetup, uriSanitizers, } from "./utils"; -import { QueueClient, QueueServiceClient } from "../src"; +import type { QueueServiceClient } from "../src"; +import { QueueClient } from "../src"; import { assert } from "@azure-tools/test-utils"; -import { RestError } from "@azure/core-rest-pipeline"; +import type { RestError } from "@azure/core-rest-pipeline"; import { Recorder } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("QueueClient", () => { let queueServiceClient: QueueServiceClient; diff --git a/sdk/storage/storage-queue/test/queueclientmessages.spec.ts b/sdk/storage/storage-queue/test/queueclientmessages.spec.ts index 8b91871c4992..d7c421162d6d 100644 --- a/sdk/storage/storage-queue/test/queueclientmessages.spec.ts +++ b/sdk/storage/storage-queue/test/queueclientmessages.spec.ts @@ -12,7 +12,7 @@ import { recorderEnvSetup, uriSanitizers, } from "./utils/testutils.common"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("QueueClient message methods", () => { let queueName: string; diff --git a/sdk/storage/storage-queue/test/queueserviceclient.spec.ts b/sdk/storage/storage-queue/test/queueserviceclient.spec.ts index dbf4f003a02d..07498d0dcbd7 100644 --- a/sdk/storage/storage-queue/test/queueserviceclient.spec.ts +++ b/sdk/storage/storage-queue/test/queueserviceclient.spec.ts @@ -12,7 +12,7 @@ import { import { delay, Recorder } from "@azure-tools/test-recorder"; import { getYieldedValue } from "@azure-tools/test-utils"; import { configureStorageClient, getUniqueName, recorderEnvSetup } from "./utils/index.browser"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("QueueServiceClient", () => { let recorder: Recorder; diff --git a/sdk/storage/storage-queue/test/utils.spec.ts b/sdk/storage/storage-queue/test/utils.spec.ts index b361083f5b1e..f829e783ce55 100644 --- a/sdk/storage/storage-queue/test/utils.spec.ts +++ b/sdk/storage/storage-queue/test/utils.spec.ts @@ -11,7 +11,7 @@ import { import { Recorder } from "@azure-tools/test-recorder"; import { recorderEnvSetup } from "./utils/testutils.common"; import { createHttpHeaders } from "@azure/core-rest-pipeline"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Utility Helpers", () => { let recorder: Recorder; diff --git a/sdk/storage/storage-queue/test/utils/assert.ts b/sdk/storage/storage-queue/test/utils/assert.ts index 29777e5d756f..191ff0932730 100644 --- a/sdk/storage/storage-queue/test/utils/assert.ts +++ b/sdk/storage/storage-queue/test/utils/assert.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { StorageClient } from "../../src/StorageClient"; +import type { StorageClient } from "../../src/StorageClient"; import { isTokenCredential } from "@azure/core-auth"; export function assertClientUsesTokenCredential(client: StorageClient): void { diff --git a/sdk/storage/storage-queue/test/utils/index.browser.ts b/sdk/storage/storage-queue/test/utils/index.browser.ts index 1f45cbbdf987..e37831b1a598 100644 --- a/sdk/storage/storage-queue/test/utils/index.browser.ts +++ b/sdk/storage/storage-queue/test/utils/index.browser.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, env } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { AnonymousCredential } from "../../../storage-blob/src/credentials/AnonymousCredential"; import { newPipeline } from "../../src/Pipeline"; import { QueueServiceClient } from "../../src/QueueServiceClient"; diff --git a/sdk/storage/storage-queue/test/utils/index.ts b/sdk/storage/storage-queue/test/utils/index.ts index 8063280b80b6..d6f61d690ba3 100644 --- a/sdk/storage/storage-queue/test/utils/index.ts +++ b/sdk/storage/storage-queue/test/utils/index.ts @@ -12,7 +12,8 @@ import { AccountSASServices, } from "../../src"; import { extractConnectionStringParts } from "../../src/utils/utils.common"; -import { env, Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; import { configureStorageClient } from "./testutils.common"; export * from "./testutils.common"; diff --git a/sdk/storage/storage-queue/test/utils/testutils.common.ts b/sdk/storage/storage-queue/test/utils/testutils.common.ts index 0a3b0e33db47..25c5b9688cad 100644 --- a/sdk/storage/storage-queue/test/utils/testutils.common.ts +++ b/sdk/storage/storage-queue/test/utils/testutils.common.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; -import { Pipeline } from "@azure/core-rest-pipeline"; -import { StorageClient } from "../../src/StorageClient"; -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; +import type { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { Pipeline } from "@azure/core-rest-pipeline"; +import type { StorageClient } from "../../src/StorageClient"; +import type { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; type UriSanitizers = Required["sanitizerOptions"]["uriSanitizers"]; diff --git a/sdk/tables/data-tables/review/data-tables.api.md b/sdk/tables/data-tables/review/data-tables.api.md index 3276f7ffe268..4327ff7e5559 100644 --- a/sdk/tables/data-tables/review/data-tables.api.md +++ b/sdk/tables/data-tables/review/data-tables.api.md @@ -6,15 +6,15 @@ import { AzureNamedKeyCredential } from '@azure/core-auth'; import { AzureSASCredential } from '@azure/core-auth'; -import { CommonClientOptions } from '@azure/core-client'; +import type { CommonClientOptions } from '@azure/core-client'; import * as coreClient from '@azure/core-client'; import { NamedKeyCredential } from '@azure/core-auth'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { Pipeline } from '@azure/core-rest-pipeline'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { Pipeline } from '@azure/core-rest-pipeline'; import { RestError } from '@azure/core-rest-pipeline'; -import { SASCredential } from '@azure/core-auth'; -import { TokenCredential } from '@azure/core-auth'; +import type { SASCredential } from '@azure/core-auth'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AccessPolicy { diff --git a/sdk/tables/data-tables/src/TableClient.ts b/sdk/tables/data-tables/src/TableClient.ts index 61606c929333..adaba5f49e76 100644 --- a/sdk/tables/data-tables/src/TableClient.ts +++ b/sdk/tables/data-tables/src/TableClient.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CreateTableEntityResponse, DeleteTableEntityOptions, GetAccessPolicyResponse, @@ -19,28 +19,23 @@ import { UpdateMode, UpdateTableEntityOptions, } from "./models"; -import { +import type { DeleteTableEntityResponse, SetAccessPolicyResponse, UpdateEntityResponse, UpsertEntityResponse, } from "./generatedModels"; -import { +import type { FullOperationResponse, InternalClientPipelineOptions, OperationOptions, ServiceClient, ServiceClientOptions, } from "@azure/core-client"; -import { GeneratedClient, TableDeleteEntityOptionalParams } from "./generated"; -import { - NamedKeyCredential, - SASCredential, - TokenCredential, - isNamedKeyCredential, - isSASCredential, - isTokenCredential, -} from "@azure/core-auth"; +import type { TableDeleteEntityOptionalParams } from "./generated"; +import { GeneratedClient } from "./generated"; +import type { NamedKeyCredential, SASCredential, TokenCredential } from "@azure/core-auth"; +import { isNamedKeyCredential, isSASCredential, isTokenCredential } from "@azure/core-auth"; import { COSMOS_SCOPE, STORAGE_SCOPE, TablesLoggingAllowedHeaderNames } from "./utils/constants"; import { decodeContinuationToken, encodeContinuationToken } from "./utils/continuationToken"; import { @@ -54,11 +49,11 @@ import { import { parseXML, stringifyXML } from "@azure/core-xml"; import { InternalTableTransaction } from "./TableTransaction"; -import { ListEntitiesResponse } from "./utils/internalModels"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { Pipeline } from "@azure/core-rest-pipeline"; -import { Table } from "./generated/operationsInterfaces"; -import { TableQueryEntitiesOptionalParams } from "./generated/models"; +import type { ListEntitiesResponse } from "./utils/internalModels"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { Pipeline } from "@azure/core-rest-pipeline"; +import type { Table } from "./generated/operationsInterfaces"; +import type { TableQueryEntitiesOptionalParams } from "./generated/models"; import { Uuid } from "./utils/uuid"; import { apiVersionPolicy } from "./utils/apiVersionPolicy"; import { cosmosPatchPolicy } from "./cosmosPathPolicy"; diff --git a/sdk/tables/data-tables/src/TablePolicies.ts b/sdk/tables/data-tables/src/TablePolicies.ts index 213998a3a561..c4290c7e1808 100644 --- a/sdk/tables/data-tables/src/TablePolicies.ts +++ b/sdk/tables/data-tables/src/TablePolicies.ts @@ -6,14 +6,13 @@ import { TRANSACTION_HTTP_LINE_ENDING, TRANSACTION_HTTP_VERSION_1_1, } from "./utils/constants"; -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, SendRequest, - createHttpHeaders, - createPipelineRequest, } from "@azure/core-rest-pipeline"; +import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; import { getChangeSetBoundary } from "./utils/transactionHelpers"; export const transactionRequestAssemblePolicyName = "transactionRequestAssemblePolicy"; diff --git a/sdk/tables/data-tables/src/TableServiceClient.ts b/sdk/tables/data-tables/src/TableServiceClient.ts index ec746b562f73..91df3435a68e 100644 --- a/sdk/tables/data-tables/src/TableServiceClient.ts +++ b/sdk/tables/data-tables/src/TableServiceClient.ts @@ -1,34 +1,28 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { GetPropertiesResponse, GetStatisticsResponse, ServiceProperties, SetPropertiesOptions, SetPropertiesResponse, } from "./generatedModels"; -import { +import type { InternalClientPipelineOptions, OperationOptions, ServiceClientOptions, } from "@azure/core-client"; -import { +import type { ListTableItemsOptions, TableItem, TableQueryOptions, TableServiceClientOptions, } from "./models"; -import { - NamedKeyCredential, - SASCredential, - TokenCredential, - isNamedKeyCredential, - isSASCredential, - isTokenCredential, -} from "@azure/core-auth"; +import type { NamedKeyCredential, SASCredential, TokenCredential } from "@azure/core-auth"; +import { isNamedKeyCredential, isSASCredential, isTokenCredential } from "@azure/core-auth"; import { COSMOS_SCOPE, STORAGE_SCOPE, TablesLoggingAllowedHeaderNames } from "./utils/constants"; -import { Service, Table } from "./generated"; +import type { Service, Table } from "./generated"; import { injectSecondaryEndpointHeader, tablesSecondaryEndpointPolicy, @@ -36,9 +30,9 @@ import { import { parseXML, stringifyXML } from "@azure/core-xml"; import { GeneratedClient } from "./generated/generatedClient"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { Pipeline } from "@azure/core-rest-pipeline"; -import { TableItemResultPage } from "./models"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { Pipeline } from "@azure/core-rest-pipeline"; +import type { TableItemResultPage } from "./models"; import { apiVersionPolicy } from "./utils/apiVersionPolicy"; import { getClientParamsFromConnectionString } from "./utils/connectionString"; import { handleTableAlreadyExists } from "./utils/errorHelpers"; diff --git a/sdk/tables/data-tables/src/TableTransaction.ts b/sdk/tables/data-tables/src/TableTransaction.ts index e9dbe3f5b73b..1d59ae1179bc 100644 --- a/sdk/tables/data-tables/src/TableTransaction.ts +++ b/sdk/tables/data-tables/src/TableTransaction.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { DeleteTableEntityOptions, TableEntity, TableTransactionEntityResponse, @@ -10,21 +10,11 @@ import { UpdateMode, UpdateTableEntityOptions, } from "./models"; -import { NamedKeyCredential, SASCredential, TokenCredential } from "@azure/core-auth"; -import { - OperationOptions, - ServiceClient, - serializationPolicy, - serializationPolicyName, -} from "@azure/core-client"; -import { - Pipeline, - PipelineRequest, - PipelineResponse, - RestError, - createHttpHeaders, - createPipelineRequest, -} from "@azure/core-rest-pipeline"; +import type { NamedKeyCredential, SASCredential, TokenCredential } from "@azure/core-auth"; +import type { OperationOptions, ServiceClient } from "@azure/core-client"; +import { serializationPolicy, serializationPolicyName } from "@azure/core-client"; +import type { Pipeline, PipelineRequest, PipelineResponse } from "@azure/core-rest-pipeline"; +import { RestError, createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; import { getInitialTransactionBody, getTransactionHttpRequestBody, @@ -36,8 +26,8 @@ import { transactionRequestAssemblePolicyName, } from "./TablePolicies"; -import { TableClientLike } from "./utils/internalModels"; -import { TableServiceErrorOdataError } from "./generated"; +import type { TableClientLike } from "./utils/internalModels"; +import type { TableServiceErrorOdataError } from "./generated"; import { cosmosPatchPolicy } from "./cosmosPathPolicy"; import { getTransactionHeaders } from "./utils/transactionHeaders"; import { isCosmosEndpoint } from "./utils/isCosmosEndpoint"; diff --git a/sdk/tables/data-tables/src/cosmosPathPolicy.ts b/sdk/tables/data-tables/src/cosmosPathPolicy.ts index 2ccc8176f349..0ecd49ef0b6c 100644 --- a/sdk/tables/data-tables/src/cosmosPathPolicy.ts +++ b/sdk/tables/data-tables/src/cosmosPathPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelinePolicy } from "@azure/core-rest-pipeline"; +import type { PipelinePolicy } from "@azure/core-rest-pipeline"; const cosmosPatchPolicyName = "cosmosPatchPolicy"; diff --git a/sdk/tables/data-tables/src/logger.ts b/sdk/tables/data-tables/src/logger.ts index 0905a62d03c7..e061997ab877 100644 --- a/sdk/tables/data-tables/src/logger.ts +++ b/sdk/tables/data-tables/src/logger.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureLogger, createClientLogger } from "@azure/logger"; +import type { AzureLogger } from "@azure/logger"; +import { createClientLogger } from "@azure/logger"; /** * The \@azure/logger configuration for this package. diff --git a/sdk/tables/data-tables/src/models.ts b/sdk/tables/data-tables/src/models.ts index af3ea6f0023d..f96dc06f94a4 100644 --- a/sdk/tables/data-tables/src/models.ts +++ b/sdk/tables/data-tables/src/models.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions, OperationOptions } from "@azure/core-client"; -import { TableGetAccessPolicyHeaders, TableInsertEntityHeaders } from "./generated/models"; +import type { CommonClientOptions, OperationOptions } from "@azure/core-client"; +import type { TableGetAccessPolicyHeaders, TableInsertEntityHeaders } from "./generated/models"; /** * Represents the Create or Delete Entity operation to be included in a Transaction request diff --git a/sdk/tables/data-tables/src/sas/accountSasSignatureValues.ts b/sdk/tables/data-tables/src/sas/accountSasSignatureValues.ts index 0386ac65c5ba..54d5273a5bf3 100644 --- a/sdk/tables/data-tables/src/sas/accountSasSignatureValues.ts +++ b/sdk/tables/data-tables/src/sas/accountSasSignatureValues.ts @@ -1,15 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccountSasPermissions, accountSasPermissionsToString } from "./accountSasPermissions"; -import { SasIPRange, ipRangeToString } from "./sasIPRange"; -import { SasProtocol, SasQueryParameters } from "./sasQueryParameters"; +import type { AccountSasPermissions } from "./accountSasPermissions"; +import { accountSasPermissionsToString } from "./accountSasPermissions"; +import type { SasIPRange } from "./sasIPRange"; +import { ipRangeToString } from "./sasIPRange"; +import type { SasProtocol } from "./sasQueryParameters"; +import { SasQueryParameters } from "./sasQueryParameters"; import { accountSasResourceTypesFromString, accountSasResourceTypesToString, } from "./accountSasResourceTypes"; import { accountSasServicesFromString, accountSasServicesToString } from "./accountSasServices"; -import { NamedKeyCredential } from "@azure/core-auth"; +import type { NamedKeyCredential } from "@azure/core-auth"; import { SERVICE_VERSION } from "../utils/constants"; import { computeHMACSHA256 } from "../utils/computeHMACSHA256"; import { truncatedISO8061Date } from "../utils/truncateISO8061Date"; diff --git a/sdk/tables/data-tables/src/sas/generateAccountSas.ts b/sdk/tables/data-tables/src/sas/generateAccountSas.ts index 1ff565475036..c81615bc3fef 100644 --- a/sdk/tables/data-tables/src/sas/generateAccountSas.ts +++ b/sdk/tables/data-tables/src/sas/generateAccountSas.ts @@ -1,15 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AccountSasPermissions, accountSasPermissionsFromString } from "./accountSasPermissions"; -import { - AccountSasServices, - accountSasServicesFromString, - accountSasServicesToString, -} from "./accountSasServices"; -import { NamedKeyCredential, isNamedKeyCredential } from "@azure/core-auth"; -import { SasIPRange } from "./sasIPRange"; -import { SasProtocol } from "./sasQueryParameters"; +import type { AccountSasPermissions } from "./accountSasPermissions"; +import { accountSasPermissionsFromString } from "./accountSasPermissions"; +import type { AccountSasServices } from "./accountSasServices"; +import { accountSasServicesFromString, accountSasServicesToString } from "./accountSasServices"; +import type { NamedKeyCredential } from "@azure/core-auth"; +import { isNamedKeyCredential } from "@azure/core-auth"; +import type { SasIPRange } from "./sasIPRange"; +import type { SasProtocol } from "./sasQueryParameters"; import { generateAccountSasQueryParameters } from "./accountSasSignatureValues"; /** diff --git a/sdk/tables/data-tables/src/sas/generateTableSas.ts b/sdk/tables/data-tables/src/sas/generateTableSas.ts index 4ecffa4e58cc..cb3de95576bc 100644 --- a/sdk/tables/data-tables/src/sas/generateTableSas.ts +++ b/sdk/tables/data-tables/src/sas/generateTableSas.ts @@ -1,11 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { NamedKeyCredential, isNamedKeyCredential } from "@azure/core-auth"; -import { - TableSasSignatureValues, - generateTableSasQueryParameters, -} from "./tableSasSignatureValues"; +import type { NamedKeyCredential } from "@azure/core-auth"; +import { isNamedKeyCredential } from "@azure/core-auth"; +import type { TableSasSignatureValues } from "./tableSasSignatureValues"; +import { generateTableSasQueryParameters } from "./tableSasSignatureValues"; import { tableSasPermissionsFromString } from "./tableSasPermisions"; /** diff --git a/sdk/tables/data-tables/src/sas/sasQueryParameters.ts b/sdk/tables/data-tables/src/sas/sasQueryParameters.ts index e3d4d3082ac0..046b56949746 100644 --- a/sdk/tables/data-tables/src/sas/sasQueryParameters.ts +++ b/sdk/tables/data-tables/src/sas/sasQueryParameters.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { SasIPRange, ipRangeToString } from "./sasIPRange"; -import { UserDelegationKey } from "./models"; +import type { SasIPRange } from "./sasIPRange"; +import { ipRangeToString } from "./sasIPRange"; +import type { UserDelegationKey } from "./models"; import { truncatedISO8061Date } from "../utils/truncateISO8061Date"; /** diff --git a/sdk/tables/data-tables/src/sas/tableSasSignatureValues.ts b/sdk/tables/data-tables/src/sas/tableSasSignatureValues.ts index 72aab9f92246..59cfc79c2521 100644 --- a/sdk/tables/data-tables/src/sas/tableSasSignatureValues.ts +++ b/sdk/tables/data-tables/src/sas/tableSasSignatureValues.ts @@ -7,10 +7,13 @@ * TableSASSignatureValues is used to help generating SAS tokens for tables. */ -import { SasIPRange, ipRangeToString } from "./sasIPRange"; -import { SasProtocol, SasQueryParameters } from "./sasQueryParameters"; -import { TableSasPermissions, tableSasPermissionsToString } from "./tableSasPermisions"; -import { NamedKeyCredential } from "@azure/core-auth"; +import type { SasIPRange } from "./sasIPRange"; +import { ipRangeToString } from "./sasIPRange"; +import type { SasProtocol } from "./sasQueryParameters"; +import { SasQueryParameters } from "./sasQueryParameters"; +import type { TableSasPermissions } from "./tableSasPermisions"; +import { tableSasPermissionsToString } from "./tableSasPermisions"; +import type { NamedKeyCredential } from "@azure/core-auth"; import { SERVICE_VERSION } from "../utils/constants"; import { computeHMACSHA256 } from "../utils/computeHMACSHA256"; import { truncatedISO8061Date } from "../utils/truncateISO8061Date"; diff --git a/sdk/tables/data-tables/src/secondaryEndpointPolicy.ts b/sdk/tables/data-tables/src/secondaryEndpointPolicy.ts index 101087976378..f54072dc7ef4 100644 --- a/sdk/tables/data-tables/src/secondaryEndpointPolicy.ts +++ b/sdk/tables/data-tables/src/secondaryEndpointPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; -import { PipelinePolicy } from "@azure/core-rest-pipeline"; +import type { OperationOptions } from "@azure/core-client"; +import type { PipelinePolicy } from "@azure/core-rest-pipeline"; /** * The programmatic identifier of the tablesSecondaryEndpointPolicy. diff --git a/sdk/tables/data-tables/src/serialization.ts b/sdk/tables/data-tables/src/serialization.ts index 175ea9ab7fa2..daa58f0aff87 100644 --- a/sdk/tables/data-tables/src/serialization.ts +++ b/sdk/tables/data-tables/src/serialization.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { EdmTypes, SignedIdentifier, TableEntityQueryOptions } from "./models"; -import { +import type { EdmTypes, SignedIdentifier, TableEntityQueryOptions } from "./models"; +import type { QueryOptions as GeneratedQueryOptions, SignedIdentifier as GeneratedSignedIdentifier, } from "./generated/models"; diff --git a/sdk/tables/data-tables/src/tablesNamedCredentialPolicy.browser.ts b/sdk/tables/data-tables/src/tablesNamedCredentialPolicy.browser.ts index d7dc2004830f..05e2b12a3686 100644 --- a/sdk/tables/data-tables/src/tablesNamedCredentialPolicy.browser.ts +++ b/sdk/tables/data-tables/src/tablesNamedCredentialPolicy.browser.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { NamedKeyCredential } from "@azure/core-auth"; -import { PipelineRequest } from "@azure/core-rest-pipeline"; +import type { NamedKeyCredential } from "@azure/core-auth"; +import type { PipelineRequest } from "@azure/core-rest-pipeline"; export function tablesNamedKeyCredentialPolicy(_credential: NamedKeyCredential): never { throw new Error("Shared Access Key authentication is not supported in the browser"); diff --git a/sdk/tables/data-tables/src/tablesNamedCredentialPolicy.ts b/sdk/tables/data-tables/src/tablesNamedCredentialPolicy.ts index 3aa0821f25dc..b31ffa465488 100644 --- a/sdk/tables/data-tables/src/tablesNamedCredentialPolicy.ts +++ b/sdk/tables/data-tables/src/tablesNamedCredentialPolicy.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, SendRequest, } from "@azure/core-rest-pipeline"; import { HeaderConstants } from "./utils/constants"; -import { NamedKeyCredential } from "@azure/core-auth"; +import type { NamedKeyCredential } from "@azure/core-auth"; import { computeHMACSHA256 } from "./utils/computeHMACSHA256"; /** diff --git a/sdk/tables/data-tables/src/tablesSASTokenPolicy.ts b/sdk/tables/data-tables/src/tablesSASTokenPolicy.ts index a939e3383d30..67065455b02b 100644 --- a/sdk/tables/data-tables/src/tablesSASTokenPolicy.ts +++ b/sdk/tables/data-tables/src/tablesSASTokenPolicy.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelinePolicy, PipelineRequest, PipelineResponse, SendRequest, } from "@azure/core-rest-pipeline"; -import { SASCredential } from "@azure/core-auth"; +import type { SASCredential } from "@azure/core-auth"; /** * The programmatic identifier of the tablesSASTokenPolicy. diff --git a/sdk/tables/data-tables/src/utils/accountConnectionString.browser.ts b/sdk/tables/data-tables/src/utils/accountConnectionString.browser.ts index b49778eab545..69104114cad4 100644 --- a/sdk/tables/data-tables/src/utils/accountConnectionString.browser.ts +++ b/sdk/tables/data-tables/src/utils/accountConnectionString.browser.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ConnectionString } from "./internalModels"; -import { TableServiceClientOptions } from ".."; +import type { ConnectionString } from "./internalModels"; +import type { TableServiceClientOptions } from ".."; /** * Gets client parameters from an Account Connection String diff --git a/sdk/tables/data-tables/src/utils/accountConnectionString.ts b/sdk/tables/data-tables/src/utils/accountConnectionString.ts index f88ff54aea64..d4671ddad54b 100644 --- a/sdk/tables/data-tables/src/utils/accountConnectionString.ts +++ b/sdk/tables/data-tables/src/utils/accountConnectionString.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientParamsFromConnectionString, ConnectionString } from "./internalModels"; +import type { ClientParamsFromConnectionString, ConnectionString } from "./internalModels"; import { AzureNamedKeyCredential } from "@azure/core-auth"; -import { TableServiceClientOptions } from ".."; +import type { TableServiceClientOptions } from ".."; /** * Gets client parameters from an Account Connection String diff --git a/sdk/tables/data-tables/src/utils/apiVersionPolicy.ts b/sdk/tables/data-tables/src/utils/apiVersionPolicy.ts index 44e592016d6a..b521180dca5f 100644 --- a/sdk/tables/data-tables/src/utils/apiVersionPolicy.ts +++ b/sdk/tables/data-tables/src/utils/apiVersionPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PipelinePolicy } from "@azure/core-rest-pipeline"; +import type { PipelinePolicy } from "@azure/core-rest-pipeline"; /** * Name of the apiVersion Policy diff --git a/sdk/tables/data-tables/src/utils/baseTransactionHeaders.ts b/sdk/tables/data-tables/src/utils/baseTransactionHeaders.ts index 72fa1dbd1bb5..5c0cab9e1e9a 100644 --- a/sdk/tables/data-tables/src/utils/baseTransactionHeaders.ts +++ b/sdk/tables/data-tables/src/utils/baseTransactionHeaders.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; /** * @internal diff --git a/sdk/tables/data-tables/src/utils/challengeAuthenticationUtils.ts b/sdk/tables/data-tables/src/utils/challengeAuthenticationUtils.ts index d3c1a81c4493..e1d71c70df41 100644 --- a/sdk/tables/data-tables/src/utils/challengeAuthenticationUtils.ts +++ b/sdk/tables/data-tables/src/utils/challengeAuthenticationUtils.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Pipeline, bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; +import type { Pipeline } from "@azure/core-rest-pipeline"; +import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { authorizeRequestOnTenantChallenge } from "@azure/core-client"; /** diff --git a/sdk/tables/data-tables/src/utils/connectionString.ts b/sdk/tables/data-tables/src/utils/connectionString.ts index 17c24bc3e706..752e644063d0 100644 --- a/sdk/tables/data-tables/src/utils/connectionString.ts +++ b/sdk/tables/data-tables/src/utils/connectionString.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ClientParamsFromConnectionString, ConnectionString } from "./internalModels"; +import type { ClientParamsFromConnectionString, ConnectionString } from "./internalModels"; import { fromAccountConnectionString, getAccountConnectionString } from "./accountConnectionString"; -import { TableServiceClientOptions } from "../models"; +import type { TableServiceClientOptions } from "../models"; const DevelopmentConnectionString = "DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;TableEndpoint=http://127.0.0.1:10002/devstoreaccount1"; diff --git a/sdk/tables/data-tables/src/utils/errorHelpers.ts b/sdk/tables/data-tables/src/utils/errorHelpers.ts index 2a945d555c0f..034d66b30f5a 100644 --- a/sdk/tables/data-tables/src/utils/errorHelpers.ts +++ b/sdk/tables/data-tables/src/utils/errorHelpers.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions, OperationRequest } from "@azure/core-client"; -import { PipelineResponse, RestError } from "@azure/core-rest-pipeline"; -import { AzureLogger } from "@azure/logger"; -import { TableServiceError } from "../generated"; +import type { OperationOptions, OperationRequest } from "@azure/core-client"; +import type { PipelineResponse, RestError } from "@azure/core-rest-pipeline"; +import type { AzureLogger } from "@azure/logger"; +import type { TableServiceError } from "../generated"; export type TableServiceErrorResponse = PipelineResponse & { /** diff --git a/sdk/tables/data-tables/src/utils/internalModels.ts b/sdk/tables/data-tables/src/utils/internalModels.ts index 1207de557428..8afa5778b65b 100644 --- a/sdk/tables/data-tables/src/utils/internalModels.ts +++ b/sdk/tables/data-tables/src/utils/internalModels.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { CreateTableEntityResponse, DeleteTableEntityOptions, GetTableEntityOptions, @@ -16,11 +16,11 @@ import { UpdateMode, UpdateTableEntityOptions, } from "../models"; -import { DeleteTableEntityResponse, UpdateEntityResponse, UpsertEntityResponse } from ".."; -import { Pipeline, PipelineRequest } from "@azure/core-rest-pipeline"; -import { NamedKeyCredential } from "@azure/core-auth"; -import { OperationOptions } from "@azure/core-client"; -import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { DeleteTableEntityResponse, UpdateEntityResponse, UpsertEntityResponse } from ".."; +import type { Pipeline, PipelineRequest } from "@azure/core-rest-pipeline"; +import type { NamedKeyCredential } from "@azure/core-auth"; +import type { OperationOptions } from "@azure/core-client"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; export interface ConnectionString { kind: "AccountConnString" | "SASConnString"; diff --git a/sdk/tables/data-tables/src/utils/isCredential.ts b/sdk/tables/data-tables/src/utils/isCredential.ts index 1b29c38cf0d3..3031819af154 100644 --- a/sdk/tables/data-tables/src/utils/isCredential.ts +++ b/sdk/tables/data-tables/src/utils/isCredential.ts @@ -1,14 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - NamedKeyCredential, - SASCredential, - TokenCredential, - isNamedKeyCredential, - isSASCredential, - isTokenCredential, -} from "@azure/core-auth"; +import type { NamedKeyCredential, SASCredential, TokenCredential } from "@azure/core-auth"; +import { isNamedKeyCredential, isSASCredential, isTokenCredential } from "@azure/core-auth"; export function isCredential( credential: unknown, diff --git a/sdk/tables/data-tables/src/utils/transactionHeaders.ts b/sdk/tables/data-tables/src/utils/transactionHeaders.ts index a974d21e841d..d39bd793d1c5 100644 --- a/sdk/tables/data-tables/src/utils/transactionHeaders.ts +++ b/sdk/tables/data-tables/src/utils/transactionHeaders.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; import { getBaseTransactionHeaders } from "./baseTransactionHeaders"; /** diff --git a/sdk/tables/data-tables/test/internal/apiVersionPolicy.spec.ts b/sdk/tables/data-tables/test/internal/apiVersionPolicy.spec.ts index 4a6ad690a1ef..46d69ba44ff2 100644 --- a/sdk/tables/data-tables/test/internal/apiVersionPolicy.spec.ts +++ b/sdk/tables/data-tables/test/internal/apiVersionPolicy.spec.ts @@ -1,12 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - HttpClient, - PipelineRequest, - createEmptyPipeline, - createHttpHeaders, -} from "@azure/core-rest-pipeline"; +import type { HttpClient, PipelineRequest } from "@azure/core-rest-pipeline"; +import { createEmptyPipeline, createHttpHeaders } from "@azure/core-rest-pipeline"; import { apiVersionPolicy } from "../../src/utils/apiVersionPolicy"; import { assert } from "chai"; diff --git a/sdk/tables/data-tables/test/internal/errorHandling.spec.ts b/sdk/tables/data-tables/test/internal/errorHandling.spec.ts index 2a283f0458a1..344c35c9ec44 100644 --- a/sdk/tables/data-tables/test/internal/errorHandling.spec.ts +++ b/sdk/tables/data-tables/test/internal/errorHandling.spec.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { HttpClient, PipelineResponse, createHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpClient, PipelineResponse } from "@azure/core-rest-pipeline"; +import { createHttpHeaders } from "@azure/core-rest-pipeline"; import { TableClient, TableServiceClient } from "../../src"; import { assert } from "chai"; diff --git a/sdk/tables/data-tables/test/internal/serialization.spec.ts b/sdk/tables/data-tables/test/internal/serialization.spec.ts index 06aa64f9e80e..a87bcb083bf9 100644 --- a/sdk/tables/data-tables/test/internal/serialization.spec.ts +++ b/sdk/tables/data-tables/test/internal/serialization.spec.ts @@ -8,7 +8,7 @@ import { serializeSignedIdentifiers, } from "../../src/serialization"; -import { Edm } from "../../src"; +import type { Edm } from "../../src"; import { assert } from "chai"; interface Entity { diff --git a/sdk/tables/data-tables/test/internal/sharedKeyCredential.spec.ts b/sdk/tables/data-tables/test/internal/sharedKeyCredential.spec.ts index 23f01e95ebdb..febd1f53cc9f 100644 --- a/sdk/tables/data-tables/test/internal/sharedKeyCredential.spec.ts +++ b/sdk/tables/data-tables/test/internal/sharedKeyCredential.spec.ts @@ -1,15 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - PipelineRequest, - PipelineResponse, - SendRequest, - createHttpHeaders, - createPipelineRequest, -} from "@azure/core-rest-pipeline"; +import type { PipelineRequest, PipelineResponse, SendRequest } from "@azure/core-rest-pipeline"; +import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; import { AzureNamedKeyCredential } from "@azure/core-auth"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { assert } from "chai"; import { expectedSharedKeyLiteHeader } from "./fakeTestSecrets"; import { isNodeLike } from "@azure/core-util"; diff --git a/sdk/tables/data-tables/test/internal/tableTransaction.spec.ts b/sdk/tables/data-tables/test/internal/tableTransaction.spec.ts index 0be74956d610..e22dfea1fba1 100644 --- a/sdk/tables/data-tables/test/internal/tableTransaction.spec.ts +++ b/sdk/tables/data-tables/test/internal/tableTransaction.spec.ts @@ -1,12 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { - HttpClient, - PipelineResponse, - createHttpHeaders, - createPipelineRequest, -} from "@azure/core-rest-pipeline"; +import type { HttpClient, PipelineResponse } from "@azure/core-rest-pipeline"; +import { createHttpHeaders, createPipelineRequest } from "@azure/core-rest-pipeline"; import { TableTransaction, parseTransactionResponse } from "../../src/TableTransaction"; import { TableClient } from "../../src/TableClient"; import { assert } from "chai"; diff --git a/sdk/tables/data-tables/test/internal/utils.spec.ts b/sdk/tables/data-tables/test/internal/utils.spec.ts index 93d21de667e4..e6d0df5c5c06 100644 --- a/sdk/tables/data-tables/test/internal/utils.spec.ts +++ b/sdk/tables/data-tables/test/internal/utils.spec.ts @@ -3,8 +3,8 @@ import { base64Decode, base64Encode } from "../../src/utils/bufferSerializer"; -import { ConnectionString } from "../../src/utils/internalModels"; -import { Context } from "mocha"; +import type { ConnectionString } from "../../src/utils/internalModels"; +import type { Context } from "mocha"; import { assert } from "chai"; import { extractConnectionStringParts } from "../../src/utils/connectionString"; import { isNodeLike } from "@azure/core-util"; diff --git a/sdk/tables/data-tables/test/public/accessPolicy.spec.ts b/sdk/tables/data-tables/test/public/accessPolicy.spec.ts index bb258681cda5..4afb17fcbe71 100644 --- a/sdk/tables/data-tables/test/public/accessPolicy.spec.ts +++ b/sdk/tables/data-tables/test/public/accessPolicy.spec.ts @@ -3,8 +3,8 @@ import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; -import { TableClient } from "../../src"; +import type { Context } from "mocha"; +import type { TableClient } from "../../src"; import { assert } from "chai"; import { createTableClient } from "./utils/recordedClient"; import { isNodeLike } from "@azure/core-util"; diff --git a/sdk/tables/data-tables/test/public/authStrategies.spec.ts b/sdk/tables/data-tables/test/public/authStrategies.spec.ts index b0ee201d28f8..8d571427a14c 100644 --- a/sdk/tables/data-tables/test/public/authStrategies.spec.ts +++ b/sdk/tables/data-tables/test/public/authStrategies.spec.ts @@ -3,10 +3,10 @@ import { createTableClient, createTableServiceClient } from "./utils/recordedClient"; -import { Context } from "mocha"; -import { CreateClientMode } from "./utils/recordedClient"; -import { TableClient } from "../../src/TableClient"; -import { TableServiceClient } from "../../src/TableServiceClient"; +import type { Context } from "mocha"; +import type { CreateClientMode } from "./utils/recordedClient"; +import type { TableClient } from "../../src/TableClient"; +import type { TableServiceClient } from "../../src/TableServiceClient"; import { assert } from "chai"; import { isLiveMode } from "@azure-tools/test-recorder"; import { isNodeLike } from "@azure/core-util"; diff --git a/sdk/tables/data-tables/test/public/createTable.spec.ts b/sdk/tables/data-tables/test/public/createTable.spec.ts index 3fea0133e030..2354f9e3adbc 100644 --- a/sdk/tables/data-tables/test/public/createTable.spec.ts +++ b/sdk/tables/data-tables/test/public/createTable.spec.ts @@ -3,7 +3,7 @@ import { RestError, TableClient, TableServiceClient } from "../../src"; -import { TableServiceErrorResponse } from "../../src/utils/errorHelpers"; +import type { TableServiceErrorResponse } from "../../src/utils/errorHelpers"; import { assert } from "chai"; import { createHttpHeaders } from "@azure/core-rest-pipeline"; diff --git a/sdk/tables/data-tables/test/public/endpoint.spec.ts b/sdk/tables/data-tables/test/public/endpoint.spec.ts index 030113c8bab5..43b5c165e1b5 100644 --- a/sdk/tables/data-tables/test/public/endpoint.spec.ts +++ b/sdk/tables/data-tables/test/public/endpoint.spec.ts @@ -4,7 +4,7 @@ import { TableClient } from "../../src/TableClient"; import { TableServiceClient } from "../../src/TableServiceClient"; import { assert } from "chai"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { COSMOS_SCOPE } from "../../src/utils/constants"; export class FakeCredential implements TokenCredential { diff --git a/sdk/tables/data-tables/test/public/specialCharacters.spec.ts b/sdk/tables/data-tables/test/public/specialCharacters.spec.ts index 5cef4ca3857e..b9bc4db6f7e0 100644 --- a/sdk/tables/data-tables/test/public/specialCharacters.spec.ts +++ b/sdk/tables/data-tables/test/public/specialCharacters.spec.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TableClient, TableEntityResult, TransactionAction, odata } from "../../src"; +import type { TableClient, TableEntityResult, TransactionAction } from "../../src"; +import { odata } from "../../src"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { assert } from "chai"; import { createTableClient } from "./utils/recordedClient"; import { isLiveMode } from "@azure-tools/test-recorder"; diff --git a/sdk/tables/data-tables/test/public/tableclient.spec.ts b/sdk/tables/data-tables/test/public/tableclient.spec.ts index a0262d26ae13..871fcb241130 100644 --- a/sdk/tables/data-tables/test/public/tableclient.spec.ts +++ b/sdk/tables/data-tables/test/public/tableclient.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Edm, TableClient, TableEntity, TableEntityResult, odata } from "../../src"; +import type { Edm, TableClient, TableEntity, TableEntityResult } from "../../src"; +import { odata } from "../../src"; import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; import { isNodeLike } from "@azure/core-util"; -import { Context } from "mocha"; -import { FullOperationResponse, OperationOptions } from "@azure/core-client"; +import type { Context } from "mocha"; +import type { FullOperationResponse, OperationOptions } from "@azure/core-client"; import { assert } from "@azure-tools/test-utils"; import { createTableClient } from "./utils/recordedClient"; diff --git a/sdk/tables/data-tables/test/public/tableserviceclient.spec.ts b/sdk/tables/data-tables/test/public/tableserviceclient.spec.ts index d58f069c165e..921263fecf2c 100644 --- a/sdk/tables/data-tables/test/public/tableserviceclient.spec.ts +++ b/sdk/tables/data-tables/test/public/tableserviceclient.spec.ts @@ -2,9 +2,10 @@ // Licensed under the MIT License. import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; -import { TableItem, TableItemResultPage, TableServiceClient, odata } from "../../src"; -import { Context } from "mocha"; -import { FullOperationResponse, OperationOptions } from "@azure/core-client"; +import type { TableItem, TableItemResultPage, TableServiceClient } from "../../src"; +import { odata } from "../../src"; +import type { Context } from "mocha"; +import type { FullOperationResponse, OperationOptions } from "@azure/core-client"; import { createTableServiceClient } from "./utils/recordedClient"; import { assert } from "@azure-tools/test-utils"; import { isNodeLike } from "@azure/core-util"; diff --git a/sdk/tables/data-tables/test/public/transaction.spec.ts b/sdk/tables/data-tables/test/public/transaction.spec.ts index 57e58f89264c..c2e2abba8681 100644 --- a/sdk/tables/data-tables/test/public/transaction.spec.ts +++ b/sdk/tables/data-tables/test/public/transaction.spec.ts @@ -3,8 +3,9 @@ import * as sinon from "sinon"; import { Recorder, isPlaybackMode, isLiveMode } from "@azure-tools/test-recorder"; -import { TableClient, TableTransaction, TransactionAction, odata } from "../../src"; -import { Context } from "mocha"; +import type { TableClient, TransactionAction } from "../../src"; +import { TableTransaction, odata } from "../../src"; +import type { Context } from "mocha"; import { Uuid } from "../../src/utils/uuid"; import { assert } from "chai"; import { createTableClient } from "./utils/recordedClient"; diff --git a/sdk/tables/data-tables/test/public/utils/recordedClient.ts b/sdk/tables/data-tables/test/public/utils/recordedClient.ts index babbf662dd53..115328582bfd 100644 --- a/sdk/tables/data-tables/test/public/utils/recordedClient.ts +++ b/sdk/tables/data-tables/test/public/utils/recordedClient.ts @@ -2,8 +2,10 @@ // Licensed under the MIT License. import { AzureNamedKeyCredential, AzureSASCredential } from "@azure/core-auth"; -import { Recorder, RecorderStartOptions, SanitizerOptions, env } from "@azure-tools/test-recorder"; -import { TableClient, TableServiceClient, TableServiceClientOptions } from "../../../src"; +import type { Recorder, RecorderStartOptions, SanitizerOptions } from "@azure-tools/test-recorder"; +import { env } from "@azure-tools/test-recorder"; +import type { TableServiceClientOptions } from "../../../src"; +import { TableClient, TableServiceClient } from "../../../src"; import { createTestCredential } from "@azure-tools/test-credential"; diff --git a/sdk/template/template-dpg/review/template-dpg-api.api.md b/sdk/template/template-dpg/review/template-dpg-api.api.md index 32b468667046..637efd5a65ec 100644 --- a/sdk/template/template-dpg/review/template-dpg-api.api.md +++ b/sdk/template/template-dpg/review/template-dpg-api.api.md @@ -4,13 +4,13 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface AnalyzeResult { diff --git a/sdk/template/template-dpg/review/template-dpg-rest.api.md b/sdk/template/template-dpg/review/template-dpg-rest.api.md index 401de8c6a02c..485025473ab6 100644 --- a/sdk/template/template-dpg/review/template-dpg-rest.api.md +++ b/sdk/template/template-dpg/review/template-dpg-rest.api.md @@ -4,12 +4,12 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface AnalyzeResultOutput { diff --git a/sdk/template/template-dpg/review/template-dpg.api.md b/sdk/template/template-dpg/review/template-dpg.api.md index 887223b9e04d..4cf81e10a116 100644 --- a/sdk/template/template-dpg/review/template-dpg.api.md +++ b/sdk/template/template-dpg/review/template-dpg.api.md @@ -4,9 +4,9 @@ ```ts -import { ClientOptions } from '@azure-rest/core-client'; -import { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; -import { TokenCredential } from '@azure/core-auth'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface AnalyzeResult { diff --git a/sdk/template/template-dpg/src/WidgetServiceClient.ts b/sdk/template/template-dpg/src/WidgetServiceClient.ts index 855cdf0d9f4b..1e9858407c68 100644 --- a/sdk/template/template-dpg/src/WidgetServiceClient.ts +++ b/sdk/template/template-dpg/src/WidgetServiceClient.ts @@ -9,9 +9,11 @@ * If you need to make changes, please do so in the original source file, \{project-root\}/sources/custom */ -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { WidgetServiceClientOptions, createWidgetService } from "./api/WidgetServiceContext.js"; -import { +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { WidgetServiceClientOptions } from "./api/WidgetServiceContext.js"; +import { createWidgetService } from "./api/WidgetServiceContext.js"; +import type { AnalyzeResult, AnalyzeWidgetOptions, ColorType, @@ -21,6 +23,8 @@ import { ListWidgetsOptions, UpdateWidgetOptions, Widget, +} from "./api/index.js"; +import { analyzeWidget, createWidget, deleteWidget, @@ -28,7 +32,7 @@ import { listWidgets, updateWidget, } from "./api/index.js"; -import { WidgetServiceContext } from "./rest/clientDefinitions.js"; +import type { WidgetServiceContext } from "./rest/clientDefinitions.js"; export { WidgetServiceClientOptions } from "./api/WidgetServiceContext.js"; diff --git a/sdk/template/template-dpg/src/api/WidgetServiceContext.ts b/sdk/template/template-dpg/src/api/WidgetServiceContext.ts index 69c50c145e4f..fa8ae9076e3d 100644 --- a/sdk/template/template-dpg/src/api/WidgetServiceContext.ts +++ b/sdk/template/template-dpg/src/api/WidgetServiceContext.ts @@ -9,9 +9,10 @@ * If you need to make changes, please do so in the original source file, \{project-root\}/sources/custom */ -import { ClientOptions } from "@azure-rest/core-client"; -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; -import { WidgetServiceContext } from "../rest/index.js"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; +import type { WidgetServiceContext } from "../rest/index.js"; import getClient from "../rest/widgetServiceClient.js"; export { WidgetServiceContext } from "../rest/index.js"; diff --git a/sdk/template/template-dpg/src/api/operations.ts b/sdk/template/template-dpg/src/api/operations.ts index 29523e56a90a..23f4381bd07c 100644 --- a/sdk/template/template-dpg/src/api/operations.ts +++ b/sdk/template/template-dpg/src/api/operations.ts @@ -9,11 +9,11 @@ * If you need to make changes, please do so in the original source file, \{project-root\}/sources/custom */ -import { StreamableMethod } from "@azure-rest/core-client"; +import type { StreamableMethod } from "@azure-rest/core-client"; import { RestError } from "@azure/core-rest-pipeline"; -import { RequestOptions } from "../common/interfaces.js"; -import { WidgetServiceContext as Client } from "../rest/clientDefinitions.js"; -import { +import type { RequestOptions } from "../common/interfaces.js"; +import type { WidgetServiceContext as Client } from "../rest/clientDefinitions.js"; +import type { AnalyzeWidget200Response, AnalyzeWidgetDefaultResponse, CreateWidget201Response, @@ -26,10 +26,10 @@ import { ListWidgetsDefaultResponse, UpdateWidget200Response, UpdateWidgetDefaultResponse, - isUnexpected, } from "../rest/index.js"; +import { isUnexpected } from "../rest/index.js"; import { foo } from "./foo.js"; -import { AnalyzeResult, ColorType, Widget } from "./models.js"; +import type { AnalyzeResult, ColorType, Widget } from "./models.js"; export interface ListWidgetsOptions extends RequestOptions {} diff --git a/sdk/template/template-dpg/src/common/interfaces.ts b/sdk/template/template-dpg/src/common/interfaces.ts index c38f6c3a5365..30114347aa20 100644 --- a/sdk/template/template-dpg/src/common/interfaces.ts +++ b/sdk/template/template-dpg/src/common/interfaces.ts @@ -9,7 +9,7 @@ * If you need to make changes, please do so in the original source file, \{project-root\}/sources/custom */ -import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; export interface RequestOptions { requestOptions?: { diff --git a/sdk/template/template-dpg/src/rest/clientDefinitions.ts b/sdk/template/template-dpg/src/rest/clientDefinitions.ts index 6fa0c490edb1..7bbc5caa8fcd 100644 --- a/sdk/template/template-dpg/src/rest/clientDefinitions.ts +++ b/sdk/template/template-dpg/src/rest/clientDefinitions.ts @@ -9,7 +9,7 @@ * If you need to make changes, please do so in the original source file, \{project-root\}/sources/custom */ -import { +import type { ListWidgetsParameters, CreateWidgetParameters, GetWidgetParameters, @@ -17,7 +17,7 @@ import { DeleteWidgetParameters, AnalyzeWidgetParameters, } from "./parameters.js"; -import { +import type { ListWidgets200Response, ListWidgetsDefaultResponse, CreateWidget201Response, @@ -31,7 +31,7 @@ import { AnalyzeWidget200Response, AnalyzeWidgetDefaultResponse, } from "./responses.js"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface ListWidgets { /** diff --git a/sdk/template/template-dpg/src/rest/isUnexpected.ts b/sdk/template/template-dpg/src/rest/isUnexpected.ts index 7c352cb916f6..995e308335b0 100644 --- a/sdk/template/template-dpg/src/rest/isUnexpected.ts +++ b/sdk/template/template-dpg/src/rest/isUnexpected.ts @@ -9,7 +9,7 @@ * If you need to make changes, please do so in the original source file, \{project-root\}/sources/custom */ -import { +import type { ListWidgets200Response, ListWidgetsDefaultResponse, CreateWidget201Response, diff --git a/sdk/template/template-dpg/src/rest/parameters.ts b/sdk/template/template-dpg/src/rest/parameters.ts index fe9733babd3f..86c6ad3a396b 100644 --- a/sdk/template/template-dpg/src/rest/parameters.ts +++ b/sdk/template/template-dpg/src/rest/parameters.ts @@ -9,8 +9,8 @@ * If you need to make changes, please do so in the original source file, \{project-root\}/sources/custom */ -import { RequestParameters } from "@azure-rest/core-client"; -import { CreateWidget, UpdateWidget } from "./models.js"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { CreateWidget, UpdateWidget } from "./models.js"; export type ListWidgetsParameters = RequestParameters; export type GetWidgetParameters = RequestParameters; diff --git a/sdk/template/template-dpg/src/rest/responses.ts b/sdk/template/template-dpg/src/rest/responses.ts index 5bed95f6cb95..d2b2b8e8cce8 100644 --- a/sdk/template/template-dpg/src/rest/responses.ts +++ b/sdk/template/template-dpg/src/rest/responses.ts @@ -9,8 +9,8 @@ * If you need to make changes, please do so in the original source file, \{project-root\}/sources/custom */ -import { HttpResponse } from "@azure-rest/core-client"; -import { WidgetOutput, WidgetErrorOutput, AnalyzeResultOutput } from "./outputModels.js"; +import type { HttpResponse } from "@azure-rest/core-client"; +import type { WidgetOutput, WidgetErrorOutput, AnalyzeResultOutput } from "./outputModels.js"; /** The request has succeeded. */ export interface ListWidgets200Response extends HttpResponse { diff --git a/sdk/template/template-dpg/src/rest/widgetServiceClient.ts b/sdk/template/template-dpg/src/rest/widgetServiceClient.ts index 8e1eaf8fc654..12f139ed270b 100644 --- a/sdk/template/template-dpg/src/rest/widgetServiceClient.ts +++ b/sdk/template/template-dpg/src/rest/widgetServiceClient.ts @@ -9,10 +9,12 @@ * If you need to make changes, please do so in the original source file, \{project-root\}/sources/custom */ -import { ClientOptions, addCredentialPipelinePolicy, getClient } from "@azure-rest/core-client"; -import { TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { addCredentialPipelinePolicy, getClient } from "@azure-rest/core-client"; +import type { TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { logger } from "../logger.js"; -import { WidgetServiceContext } from "./clientDefinitions.js"; +import type { WidgetServiceContext } from "./clientDefinitions.js"; /** * This customization adds credential support to the client. And overloads for when it is optional diff --git a/sdk/template/template/review/template.api.md b/sdk/template/template/review/template.api.md index b96b677cb654..4b66975ead55 100644 --- a/sdk/template/template/review/template.api.md +++ b/sdk/template/template/review/template.api.md @@ -4,9 +4,9 @@ ```ts -import { CommonClientOptions } from '@azure/core-client'; -import { OperationOptions } from '@azure/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { OperationOptions } from '@azure/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export class ConfigurationClient { diff --git a/sdk/template/template/src/configurationClient.ts b/sdk/template/template/src/configurationClient.ts index 184787014512..f610f6bbeda3 100644 --- a/sdk/template/template/src/configurationClient.ts +++ b/sdk/template/template/src/configurationClient.ts @@ -2,14 +2,15 @@ // Licensed under the MIT License. import { GeneratedClient, ConfigurationSetting } from "./generated/index.js"; -import { +import type { CommonClientOptions, OperationOptions, InternalClientPipelineOptions, } from "@azure/core-client"; import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; -import { TokenCredential } from "@azure/core-auth"; -import { TracingClient, createTracingClient } from "@azure/core-tracing"; +import type { TokenCredential } from "@azure/core-auth"; +import type { TracingClient } from "@azure/core-tracing"; +import { createTracingClient } from "@azure/core-tracing"; import { SDK_VERSION } from "./constants.js"; import { logger } from "./logger.js"; import { quoteETag } from "./util.js"; diff --git a/sdk/test-utils/perf/src/managerProgram.ts b/sdk/test-utils/perf/src/managerProgram.ts index 0ec189ed9216..ee73ba44a103 100644 --- a/sdk/test-utils/perf/src/managerProgram.ts +++ b/sdk/test-utils/perf/src/managerProgram.ts @@ -1,3 +1,6 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + import { exec } from "child_process"; import os from "os"; import { performStage } from "./barrier"; diff --git a/sdk/test-utils/perf/src/messages.ts b/sdk/test-utils/perf/src/messages.ts index 336c651638e9..05e451719876 100644 --- a/sdk/test-utils/perf/src/messages.ts +++ b/sdk/test-utils/perf/src/messages.ts @@ -1,3 +1,6 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + import type { BarrierMessage } from "./barrier"; import { Snapshot } from "./snapshot"; diff --git a/sdk/test-utils/perf/src/multicore.ts b/sdk/test-utils/perf/src/multicore.ts index f46799384eef..2585323eaefc 100644 --- a/sdk/test-utils/perf/src/multicore.ts +++ b/sdk/test-utils/perf/src/multicore.ts @@ -1,3 +1,6 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + import { ChildProcess, fork } from "child_process"; import workerThreads from "worker_threads"; import { diff --git a/sdk/test-utils/perf/src/utils/profiling.ts b/sdk/test-utils/perf/src/utils/profiling.ts index 2b46092b4730..5813bd9a8669 100644 --- a/sdk/test-utils/perf/src/utils/profiling.ts +++ b/sdk/test-utils/perf/src/utils/profiling.ts @@ -1,3 +1,6 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + import { Session } from "node:inspector"; import * as fs from "fs-extra"; diff --git a/sdk/test-utils/perf/src/workerProgram.ts b/sdk/test-utils/perf/src/workerProgram.ts index cf78b2ede843..0734605fb609 100644 --- a/sdk/test-utils/perf/src/workerProgram.ts +++ b/sdk/test-utils/perf/src/workerProgram.ts @@ -1,3 +1,6 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + import { enterStage, exitStage } from "./barrier"; import { multicoreUtils, WorkerData, WorkerMulticoreUtils } from "./multicore"; import { PerfTestBase, PerfTestConstructor } from "./perfTestBase"; diff --git a/sdk/test-utils/recorder/src/log.ts b/sdk/test-utils/recorder/src/log.ts index 98e1ef976752..66c10317c781 100644 --- a/sdk/test-utils/recorder/src/log.ts +++ b/sdk/test-utils/recorder/src/log.ts @@ -1,3 +1,6 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + import { createClientLogger } from "@azure/logger"; export const logger = createClientLogger("test-recorder"); diff --git a/sdk/textanalytics/ai-text-analytics/review/ai-text-analytics.api.md b/sdk/textanalytics/ai-text-analytics/review/ai-text-analytics.api.md index 377ad4dfa0ae..8ebc4d40f59c 100644 --- a/sdk/textanalytics/ai-text-analytics/review/ai-text-analytics.api.md +++ b/sdk/textanalytics/ai-text-analytics/review/ai-text-analytics.api.md @@ -4,16 +4,16 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; +import type { AbortSignalLike } from '@azure/abort-controller'; import { AzureKeyCredential } from '@azure/core-auth'; -import { CancelOnProgress } from '@azure/core-lro'; -import { CommonClientOptions } from '@azure/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationOptions } from '@azure/core-client'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; -import { TokenCredential } from '@azure/core-auth'; +import type { CancelOnProgress } from '@azure/core-lro'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationOptions } from '@azure/core-client'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PollerLike } from '@azure/core-lro'; +import type { PollOperationState } from '@azure/core-lro'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface AnalysisPollOperationState extends PollOperationState, OperationMetadata { diff --git a/sdk/textanalytics/ai-text-analytics/src/analyzeActionsResult.ts b/sdk/textanalytics/ai-text-analytics/src/analyzeActionsResult.ts index c09ef112892b..9557bcd90dae 100644 --- a/sdk/textanalytics/ai-text-analytics/src/analyzeActionsResult.ts +++ b/sdk/textanalytics/ai-text-analytics/src/analyzeActionsResult.ts @@ -1,29 +1,20 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { - AnalyzeSentimentResultArray, - makeAnalyzeSentimentResultArray, -} from "./analyzeSentimentResultArray"; -import { - ExtractKeyPhrasesResultArray, - makeExtractKeyPhrasesResultArray, -} from "./extractKeyPhrasesResultArray"; -import { AnalyzeJobState as GeneratedResponse, TextDocumentInput } from "./generated/models"; -import { - RecognizeCategorizedEntitiesResultArray, - makeRecognizeCategorizedEntitiesResultArray, -} from "./recognizeCategorizedEntitiesResultArray"; -import { - RecognizeLinkedEntitiesResultArray, - makeRecognizeLinkedEntitiesResultArray, -} from "./recognizeLinkedEntitiesResultArray"; -import { - RecognizePiiEntitiesResultArray, - makeRecognizePiiEntitiesResultArray, -} from "./recognizePiiEntitiesResultArray"; -import { ErrorCode, TextAnalyticsError, intoTextAnalyticsError } from "./textAnalyticsResult"; +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { AnalyzeSentimentResultArray } from "./analyzeSentimentResultArray"; +import { makeAnalyzeSentimentResultArray } from "./analyzeSentimentResultArray"; +import type { ExtractKeyPhrasesResultArray } from "./extractKeyPhrasesResultArray"; +import { makeExtractKeyPhrasesResultArray } from "./extractKeyPhrasesResultArray"; +import type { AnalyzeJobState as GeneratedResponse, TextDocumentInput } from "./generated/models"; +import type { RecognizeCategorizedEntitiesResultArray } from "./recognizeCategorizedEntitiesResultArray"; +import { makeRecognizeCategorizedEntitiesResultArray } from "./recognizeCategorizedEntitiesResultArray"; +import type { RecognizeLinkedEntitiesResultArray } from "./recognizeLinkedEntitiesResultArray"; +import { makeRecognizeLinkedEntitiesResultArray } from "./recognizeLinkedEntitiesResultArray"; +import type { RecognizePiiEntitiesResultArray } from "./recognizePiiEntitiesResultArray"; +import { makeRecognizePiiEntitiesResultArray } from "./recognizePiiEntitiesResultArray"; +import type { ErrorCode, TextAnalyticsError } from "./textAnalyticsResult"; +import { intoTextAnalyticsError } from "./textAnalyticsResult"; /** * The results of an analyze Actions operation. diff --git a/sdk/textanalytics/ai-text-analytics/src/analyzeHealthcareEntitiesResult.ts b/sdk/textanalytics/ai-text-analytics/src/analyzeHealthcareEntitiesResult.ts index d7d02d756707..0ff2d18ec332 100644 --- a/sdk/textanalytics/ai-text-analytics/src/analyzeHealthcareEntitiesResult.ts +++ b/sdk/textanalytics/ai-text-analytics/src/analyzeHealthcareEntitiesResult.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { +import type { PagedAsyncIterableIterator } from "@azure/core-paging"; +import type { DocumentHealthcareEntities, Entity, HealthcareEntity as GeneratedHealthcareEntity, @@ -14,9 +14,8 @@ import { TextAnalyticsError, TextDocumentBatchStatistics, } from "./generated/models"; +import type { TextAnalyticsErrorResult, TextAnalyticsSuccessResult } from "./textAnalyticsResult"; import { - TextAnalyticsErrorResult, - TextAnalyticsSuccessResult, makeTextAnalyticsErrorResult, makeTextAnalyticsSuccessResult, } from "./textAnalyticsResult"; diff --git a/sdk/textanalytics/ai-text-analytics/src/analyzeSentimentResult.ts b/sdk/textanalytics/ai-text-analytics/src/analyzeSentimentResult.ts index ec69906746f9..f4118cdcc954 100644 --- a/sdk/textanalytics/ai-text-analytics/src/analyzeSentimentResult.ts +++ b/sdk/textanalytics/ai-text-analytics/src/analyzeSentimentResult.ts @@ -1,13 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { TextAnalyticsErrorResult, TextAnalyticsSuccessResult } from "./textAnalyticsResult"; import { - TextAnalyticsErrorResult, - TextAnalyticsSuccessResult, makeTextAnalyticsErrorResult, makeTextAnalyticsSuccessResult, } from "./textAnalyticsResult"; -import { +import type { DocumentSentiment, DocumentSentimentLabel, SentenceSentiment as GeneratedSentenceSentiment, @@ -20,7 +19,8 @@ import { TargetRelation, TextAnalyticsError, } from "./generated/models"; -import { AssessmentIndex, parseAssessmentIndex } from "./util"; +import type { AssessmentIndex } from "./util"; +import { parseAssessmentIndex } from "./util"; /** * The result of the analyze sentiment operation on a single document. diff --git a/sdk/textanalytics/ai-text-analytics/src/analyzeSentimentResultArray.ts b/sdk/textanalytics/ai-text-analytics/src/analyzeSentimentResultArray.ts index 5d645f5f28e3..8cfe2fee4e62 100644 --- a/sdk/textanalytics/ai-text-analytics/src/analyzeSentimentResultArray.ts +++ b/sdk/textanalytics/ai-text-analytics/src/analyzeSentimentResultArray.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { SentimentResponse, TextDocumentBatchStatistics, TextDocumentInput, } from "./generated/models"; +import type { AnalyzeSentimentResult } from "./analyzeSentimentResult"; import { - AnalyzeSentimentResult, makeAnalyzeSentimentErrorResult, makeAnalyzeSentimentResult, } from "./analyzeSentimentResult"; diff --git a/sdk/textanalytics/ai-text-analytics/src/azureKeyCredentialPolicy.ts b/sdk/textanalytics/ai-text-analytics/src/azureKeyCredentialPolicy.ts index 1c5733250ac9..9c86d30c0e66 100644 --- a/sdk/textanalytics/ai-text-analytics/src/azureKeyCredentialPolicy.ts +++ b/sdk/textanalytics/ai-text-analytics/src/azureKeyCredentialPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyCredential } from "@azure/core-auth"; -import { +import type { KeyCredential } from "@azure/core-auth"; +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/textanalytics/ai-text-analytics/src/detectLanguageResult.ts b/sdk/textanalytics/ai-text-analytics/src/detectLanguageResult.ts index 3a7427cebc7c..e764de630fb4 100644 --- a/sdk/textanalytics/ai-text-analytics/src/detectLanguageResult.ts +++ b/sdk/textanalytics/ai-text-analytics/src/detectLanguageResult.ts @@ -1,13 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { TextAnalyticsErrorResult, TextAnalyticsSuccessResult } from "./textAnalyticsResult"; import { - TextAnalyticsErrorResult, - TextAnalyticsSuccessResult, makeTextAnalyticsErrorResult, makeTextAnalyticsSuccessResult, } from "./textAnalyticsResult"; -import { DetectedLanguage, DocumentLanguage, TextAnalyticsError } from "./generated/models"; +import type { DetectedLanguage, DocumentLanguage, TextAnalyticsError } from "./generated/models"; /** * The result of the detect language operation on a single document. diff --git a/sdk/textanalytics/ai-text-analytics/src/detectLanguageResultArray.ts b/sdk/textanalytics/ai-text-analytics/src/detectLanguageResultArray.ts index 84c8dec858a2..dfbd2515d038 100644 --- a/sdk/textanalytics/ai-text-analytics/src/detectLanguageResultArray.ts +++ b/sdk/textanalytics/ai-text-analytics/src/detectLanguageResultArray.ts @@ -1,12 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { LanguageResult, TextDocumentBatchStatistics, TextDocumentInput } from "./generated/models"; -import { - DetectLanguageResult, - makeDetectLanguageErrorResult, - makeDetectLanguageResult, -} from "./detectLanguageResult"; +import type { + LanguageResult, + TextDocumentBatchStatistics, + TextDocumentInput, +} from "./generated/models"; +import type { DetectLanguageResult } from "./detectLanguageResult"; +import { makeDetectLanguageErrorResult, makeDetectLanguageResult } from "./detectLanguageResult"; import { combineSuccessfulAndErroneousDocumentsWithStatisticsAndModelVersion } from "./textAnalyticsResult"; /** diff --git a/sdk/textanalytics/ai-text-analytics/src/extractKeyPhrasesResult.ts b/sdk/textanalytics/ai-text-analytics/src/extractKeyPhrasesResult.ts index 9b0c668f7770..d59de1a2f56c 100644 --- a/sdk/textanalytics/ai-text-analytics/src/extractKeyPhrasesResult.ts +++ b/sdk/textanalytics/ai-text-analytics/src/extractKeyPhrasesResult.ts @@ -1,13 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { TextAnalyticsErrorResult, TextAnalyticsSuccessResult } from "./textAnalyticsResult"; import { - TextAnalyticsErrorResult, - TextAnalyticsSuccessResult, makeTextAnalyticsErrorResult, makeTextAnalyticsSuccessResult, } from "./textAnalyticsResult"; -import { DocumentKeyPhrases, TextAnalyticsError } from "./generated/models"; +import type { DocumentKeyPhrases, TextAnalyticsError } from "./generated/models"; /** * The result of the extract key phrases operation on a single document. diff --git a/sdk/textanalytics/ai-text-analytics/src/extractKeyPhrasesResultArray.ts b/sdk/textanalytics/ai-text-analytics/src/extractKeyPhrasesResultArray.ts index cd5585e9d49e..ca748b57508a 100644 --- a/sdk/textanalytics/ai-text-analytics/src/extractKeyPhrasesResultArray.ts +++ b/sdk/textanalytics/ai-text-analytics/src/extractKeyPhrasesResultArray.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { KeyPhraseResult, TextDocumentBatchStatistics, TextDocumentInput, } from "./generated/models"; +import type { ExtractKeyPhrasesResult } from "./extractKeyPhrasesResult"; import { - ExtractKeyPhrasesResult, makeExtractKeyPhrasesErrorResult, makeExtractKeyPhrasesResult, } from "./extractKeyPhrasesResult"; diff --git a/sdk/textanalytics/ai-text-analytics/src/lro/analyze/operation.ts b/sdk/textanalytics/ai-text-analytics/src/lro/analyze/operation.ts index 56725db0e2be..84936efca963 100644 --- a/sdk/textanalytics/ai-text-analytics/src/lro/analyze/operation.ts +++ b/sdk/textanalytics/ai-text-analytics/src/lro/analyze/operation.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; -import { +import type { AnalyzeStatusOptionalParams as AnalyzeActionsOperationStatusOptions, AnalyzeJobState, AnalyzeResponse as BeginAnalyzeResponse, @@ -13,18 +13,19 @@ import { TextDocumentBatchStatistics, TextDocumentInput, } from "../../generated/models"; -import { +import type { AnalyzeActionsResult, PagedAnalyzeActionsResult, PagedAsyncIterableAnalyzeActionsResult, - createAnalyzeActionsResult, } from "../../analyzeActionsResult"; -import { PageSettings } from "@azure/core-paging"; +import { createAnalyzeActionsResult } from "../../analyzeActionsResult"; +import type { PageSettings } from "@azure/core-paging"; import { getOperationId, nextLinkToTopAndSkip, throwError } from "../../util"; -import { AnalysisPollOperation, AnalysisPollOperationState, OperationMetadata } from "../poller"; -import { GeneratedClient as Client } from "../../generated"; +import type { AnalysisPollOperationState, OperationMetadata } from "../poller"; +import { AnalysisPollOperation } from "../poller"; +import type { GeneratedClient as Client } from "../../generated"; import { logger } from "../../logger"; -import { TracingClient } from "@azure/core-tracing"; +import type { TracingClient } from "@azure/core-tracing"; /** * @internal diff --git a/sdk/textanalytics/ai-text-analytics/src/lro/analyze/poller.ts b/sdk/textanalytics/ai-text-analytics/src/lro/analyze/poller.ts index 852e2df89588..4d7d1c59e0cb 100644 --- a/sdk/textanalytics/ai-text-analytics/src/lro/analyze/poller.ts +++ b/sdk/textanalytics/ai-text-analytics/src/lro/analyze/poller.ts @@ -1,17 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PollerLike } from "@azure/core-lro"; -import { PagedAnalyzeActionsResult } from "../../analyzeActionsResult"; -import { JobManifestTasks as GeneratedActions } from "../../generated/models"; +import type { PollerLike } from "@azure/core-lro"; +import type { PagedAnalyzeActionsResult } from "../../analyzeActionsResult"; +import type { JobManifestTasks as GeneratedActions } from "../../generated/models"; import { delay } from "../../util"; -import { AnalysisPoller, AnalysisPollerOptions } from "../poller"; -import { - AnalyzeActionsOperationState, - BeginAnalyzeActionsOptions, - BeginAnalyzeActionsPollerOperation, -} from "./operation"; +import type { AnalysisPollerOptions } from "../poller"; +import { AnalysisPoller } from "../poller"; +import type { AnalyzeActionsOperationState, BeginAnalyzeActionsOptions } from "./operation"; +import { BeginAnalyzeActionsPollerOperation } from "./operation"; /** * @internal diff --git a/sdk/textanalytics/ai-text-analytics/src/lro/health/operation.ts b/sdk/textanalytics/ai-text-analytics/src/lro/health/operation.ts index 3a72ecaa1d0e..d05470188601 100644 --- a/sdk/textanalytics/ai-text-analytics/src/lro/health/operation.ts +++ b/sdk/textanalytics/ai-text-analytics/src/lro/health/operation.ts @@ -1,41 +1,38 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { OperationOptions } from "@azure/core-client"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { OperationOptions } from "@azure/core-client"; -import { +import type { HealthResponse as BeginAnalyzeHealthcareResponse, HealthcareJobState, HealthStatusOptionalParams as HealthcareJobStatusOptions, TextDocumentBatchStatistics, TextDocumentInput, } from "../../generated/models"; -import { +import type { AnalyzeHealthcareEntitiesResult, AnalyzeHealthcareEntitiesResultArray, PagedAnalyzeHealthcareEntitiesResult, PagedAsyncIterableAnalyzeHealthcareEntitiesResult, +} from "../../analyzeHealthcareEntitiesResult"; +import { makeHealthcareEntitiesErrorResult, makeHealthcareEntitiesResult, } from "../../analyzeHealthcareEntitiesResult"; -import { PageSettings } from "@azure/core-paging"; -import { - StringIndexType, - addStrEncodingParam, - getOperationId, - nextLinkToTopAndSkip, - throwError, -} from "../../util"; -import { - AnalysisPollOperation, +import type { PageSettings } from "@azure/core-paging"; +import type { StringIndexType } from "../../util"; +import { addStrEncodingParam, getOperationId, nextLinkToTopAndSkip, throwError } from "../../util"; +import type { AnalysisPollOperationState, OperationMetadata as AnalyzeHealthcareEntitiesOperationMetadata, } from "../poller"; -import { GeneratedClient as Client } from "../../generated"; +import { AnalysisPollOperation } from "../poller"; +import type { GeneratedClient as Client } from "../../generated"; import { processAndCombineSuccessfulAndErroneousDocuments } from "../../textAnalyticsResult"; -import { TextAnalyticsOperationOptions } from "../../textAnalyticsOperationOptions"; -import { TracingClient } from "@azure/core-tracing"; +import type { TextAnalyticsOperationOptions } from "../../textAnalyticsOperationOptions"; +import type { TracingClient } from "@azure/core-tracing"; /** * @internal diff --git a/sdk/textanalytics/ai-text-analytics/src/lro/health/poller.ts b/sdk/textanalytics/ai-text-analytics/src/lro/health/poller.ts index d84f694559fe..f0abcfb9e331 100644 --- a/sdk/textanalytics/ai-text-analytics/src/lro/health/poller.ts +++ b/sdk/textanalytics/ai-text-analytics/src/lro/health/poller.ts @@ -1,17 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { CancelOnProgress, PollOperationState } from "@azure/core-lro"; -import { PagedAnalyzeHealthcareEntitiesResult } from "../../analyzeHealthcareEntitiesResult"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { CancelOnProgress, PollOperationState } from "@azure/core-lro"; +import type { PagedAnalyzeHealthcareEntitiesResult } from "../../analyzeHealthcareEntitiesResult"; import { delay } from "../../util"; -import { AnalysisPoller, AnalysisPollerOptions } from "../poller"; -import { +import type { AnalysisPollerOptions } from "../poller"; +import { AnalysisPoller } from "../poller"; +import type { AnalyzeHealthcareOperationState, BeginAnalyzeHealthcareEntitiesOptions, - BeginAnalyzeHealthcarePollerOperation, } from "./operation"; +import { BeginAnalyzeHealthcarePollerOperation } from "./operation"; /** * Abstract representation of a poller, intended to expose just the minimal API that the user needs to work with. diff --git a/sdk/textanalytics/ai-text-analytics/src/lro/poller.ts b/sdk/textanalytics/ai-text-analytics/src/lro/poller.ts index aaeff890ac15..b77de1fe18f6 100644 --- a/sdk/textanalytics/ai-text-analytics/src/lro/poller.ts +++ b/sdk/textanalytics/ai-text-analytics/src/lro/poller.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PollOperation, PollOperationState, Poller } from "@azure/core-lro"; -import { TracingClient } from "@azure/core-tracing"; -import { GeneratedClient } from "../generated/generatedClient"; -import { State, TextDocumentInput } from "../generated/models"; +import type { PollOperation, PollOperationState } from "@azure/core-lro"; +import { Poller } from "@azure/core-lro"; +import type { TracingClient } from "@azure/core-tracing"; +import type { GeneratedClient } from "../generated/generatedClient"; +import type { State, TextDocumentInput } from "../generated/models"; import { delay } from "../util"; /** diff --git a/sdk/textanalytics/ai-text-analytics/src/recognizeCategorizedEntitiesResult.ts b/sdk/textanalytics/ai-text-analytics/src/recognizeCategorizedEntitiesResult.ts index a7675f106268..35c91b3aed41 100644 --- a/sdk/textanalytics/ai-text-analytics/src/recognizeCategorizedEntitiesResult.ts +++ b/sdk/textanalytics/ai-text-analytics/src/recognizeCategorizedEntitiesResult.ts @@ -1,13 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { TextAnalyticsErrorResult, TextAnalyticsSuccessResult } from "./textAnalyticsResult"; import { - TextAnalyticsErrorResult, - TextAnalyticsSuccessResult, makeTextAnalyticsErrorResult, makeTextAnalyticsSuccessResult, } from "./textAnalyticsResult"; -import { DocumentEntities, Entity, TextAnalyticsError } from "./generated/models"; +import type { DocumentEntities, Entity, TextAnalyticsError } from "./generated/models"; /** * An entity from text analysis with information about its categorical diff --git a/sdk/textanalytics/ai-text-analytics/src/recognizeCategorizedEntitiesResultArray.ts b/sdk/textanalytics/ai-text-analytics/src/recognizeCategorizedEntitiesResultArray.ts index 61612280ff27..21915a29a72b 100644 --- a/sdk/textanalytics/ai-text-analytics/src/recognizeCategorizedEntitiesResultArray.ts +++ b/sdk/textanalytics/ai-text-analytics/src/recognizeCategorizedEntitiesResultArray.ts @@ -1,9 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { EntitiesResult, TextDocumentBatchStatistics, TextDocumentInput } from "./generated/models"; +import type { + EntitiesResult, + TextDocumentBatchStatistics, + TextDocumentInput, +} from "./generated/models"; +import type { RecognizeCategorizedEntitiesResult } from "./recognizeCategorizedEntitiesResult"; import { - RecognizeCategorizedEntitiesResult, makeRecognizeCategorizedEntitiesErrorResult, makeRecognizeCategorizedEntitiesResult, } from "./recognizeCategorizedEntitiesResult"; diff --git a/sdk/textanalytics/ai-text-analytics/src/recognizeLinkedEntitiesResult.ts b/sdk/textanalytics/ai-text-analytics/src/recognizeLinkedEntitiesResult.ts index d975d3ffc244..7d8435eacd25 100644 --- a/sdk/textanalytics/ai-text-analytics/src/recognizeLinkedEntitiesResult.ts +++ b/sdk/textanalytics/ai-text-analytics/src/recognizeLinkedEntitiesResult.ts @@ -1,13 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { TextAnalyticsErrorResult, TextAnalyticsSuccessResult } from "./textAnalyticsResult"; import { - TextAnalyticsErrorResult, - TextAnalyticsSuccessResult, makeTextAnalyticsErrorResult, makeTextAnalyticsSuccessResult, } from "./textAnalyticsResult"; -import { DocumentLinkedEntities, LinkedEntity, TextAnalyticsError } from "./generated/models"; +import type { DocumentLinkedEntities, LinkedEntity, TextAnalyticsError } from "./generated/models"; /** * The result of the recognize linked entities operation on a single document. diff --git a/sdk/textanalytics/ai-text-analytics/src/recognizeLinkedEntitiesResultArray.ts b/sdk/textanalytics/ai-text-analytics/src/recognizeLinkedEntitiesResultArray.ts index 747f18c352e6..de4dcca2c064 100644 --- a/sdk/textanalytics/ai-text-analytics/src/recognizeLinkedEntitiesResultArray.ts +++ b/sdk/textanalytics/ai-text-analytics/src/recognizeLinkedEntitiesResultArray.ts @@ -1,13 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { EntityLinkingResult, TextDocumentBatchStatistics, TextDocumentInput, } from "./generated/models"; +import type { RecognizeLinkedEntitiesResult } from "./recognizeLinkedEntitiesResult"; import { - RecognizeLinkedEntitiesResult, makeRecognizeLinkedEntitiesErrorResult, makeRecognizeLinkedEntitiesResult, } from "./recognizeLinkedEntitiesResult"; diff --git a/sdk/textanalytics/ai-text-analytics/src/recognizePiiEntitiesResult.ts b/sdk/textanalytics/ai-text-analytics/src/recognizePiiEntitiesResult.ts index 489130691f6b..204c7f79565e 100644 --- a/sdk/textanalytics/ai-text-analytics/src/recognizePiiEntitiesResult.ts +++ b/sdk/textanalytics/ai-text-analytics/src/recognizePiiEntitiesResult.ts @@ -1,13 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. +import type { TextAnalyticsErrorResult, TextAnalyticsSuccessResult } from "./textAnalyticsResult"; import { - TextAnalyticsErrorResult, - TextAnalyticsSuccessResult, makeTextAnalyticsErrorResult, makeTextAnalyticsSuccessResult, } from "./textAnalyticsResult"; -import { Entity, PiiDocumentEntities, TextAnalyticsError } from "./generated/models"; +import type { Entity, PiiDocumentEntities, TextAnalyticsError } from "./generated/models"; /** * An entity from PII recognition with information about the kind of PII diff --git a/sdk/textanalytics/ai-text-analytics/src/recognizePiiEntitiesResultArray.ts b/sdk/textanalytics/ai-text-analytics/src/recognizePiiEntitiesResultArray.ts index ccf282066736..7f0af0d0c3f7 100644 --- a/sdk/textanalytics/ai-text-analytics/src/recognizePiiEntitiesResultArray.ts +++ b/sdk/textanalytics/ai-text-analytics/src/recognizePiiEntitiesResultArray.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { PiiResult, TextDocumentBatchStatistics, TextDocumentInput } from "./generated/models"; +import type { PiiResult, TextDocumentBatchStatistics, TextDocumentInput } from "./generated/models"; +import type { RecognizePiiEntitiesResult } from "./recognizePiiEntitiesResult"; import { - RecognizePiiEntitiesResult, makeRecognizePiiEntitiesErrorResult, makeRecognizePiiEntitiesResult, } from "./recognizePiiEntitiesResult"; diff --git a/sdk/textanalytics/ai-text-analytics/src/textAnalyticsClient.ts b/sdk/textanalytics/ai-text-analytics/src/textAnalyticsClient.ts index 86de0617249d..f312062d7514 100644 --- a/sdk/textanalytics/ai-text-analytics/src/textAnalyticsClient.ts +++ b/sdk/textanalytics/ai-text-analytics/src/textAnalyticsClient.ts @@ -1,16 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions } from "@azure/core-client"; -import { - InternalPipelineOptions, - bearerTokenAuthenticationPolicy, -} from "@azure/core-rest-pipeline"; -import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; +import type { CommonClientOptions } from "@azure/core-client"; +import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import { bearerTokenAuthenticationPolicy } from "@azure/core-rest-pipeline"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { SDK_VERSION } from "./constants"; import { GeneratedClient } from "./generated/generatedClient"; import { logger } from "./logger"; -import { +import type { DetectLanguageInput, JobManifestTasks as GeneratedActions, SentimentOptionalParams as GeneratedAnalyzeSentimentOptions, @@ -22,31 +21,20 @@ import { PiiCategory, TextDocumentInput, } from "./generated/models"; -import { - DetectLanguageResultArray, - makeDetectLanguageResultArray, -} from "./detectLanguageResultArray"; -import { - RecognizeCategorizedEntitiesResultArray, - makeRecognizeCategorizedEntitiesResultArray, -} from "./recognizeCategorizedEntitiesResultArray"; -import { - AnalyzeSentimentResultArray, - makeAnalyzeSentimentResultArray, -} from "./analyzeSentimentResultArray"; -import { - ExtractKeyPhrasesResultArray, - makeExtractKeyPhrasesResultArray, -} from "./extractKeyPhrasesResultArray"; -import { - RecognizePiiEntitiesResultArray, - makeRecognizePiiEntitiesResultArray, -} from "./recognizePiiEntitiesResultArray"; -import { - RecognizeLinkedEntitiesResultArray, - makeRecognizeLinkedEntitiesResultArray, -} from "./recognizeLinkedEntitiesResultArray"; -import { TracingClient, createTracingClient } from "@azure/core-tracing"; +import type { DetectLanguageResultArray } from "./detectLanguageResultArray"; +import { makeDetectLanguageResultArray } from "./detectLanguageResultArray"; +import type { RecognizeCategorizedEntitiesResultArray } from "./recognizeCategorizedEntitiesResultArray"; +import { makeRecognizeCategorizedEntitiesResultArray } from "./recognizeCategorizedEntitiesResultArray"; +import type { AnalyzeSentimentResultArray } from "./analyzeSentimentResultArray"; +import { makeAnalyzeSentimentResultArray } from "./analyzeSentimentResultArray"; +import type { ExtractKeyPhrasesResultArray } from "./extractKeyPhrasesResultArray"; +import { makeExtractKeyPhrasesResultArray } from "./extractKeyPhrasesResultArray"; +import type { RecognizePiiEntitiesResultArray } from "./recognizePiiEntitiesResultArray"; +import { makeRecognizePiiEntitiesResultArray } from "./recognizePiiEntitiesResultArray"; +import type { RecognizeLinkedEntitiesResultArray } from "./recognizeLinkedEntitiesResultArray"; +import { makeRecognizeLinkedEntitiesResultArray } from "./recognizeLinkedEntitiesResultArray"; +import type { TracingClient } from "@azure/core-tracing"; +import { createTracingClient } from "@azure/core-tracing"; import { textAnalyticsAzureKeyCredentialPolicy } from "./azureKeyCredentialPolicy"; import { StringIndexType, @@ -67,7 +55,7 @@ import { AnalyzeHealthcareOperationState, BeginAnalyzeHealthcareEntitiesOptions, } from "./lro/health/operation"; -import { TextAnalyticsOperationOptions } from "./textAnalyticsOperationOptions"; +import type { TextAnalyticsOperationOptions } from "./textAnalyticsOperationOptions"; import { AnalyzeActionsPollerLike, BeginAnalyzeActionsPoller } from "./lro/analyze/poller"; import { AnalyzeActionsOperationMetadata, @@ -75,7 +63,7 @@ import { BeginAnalyzeActionsOptions, } from "./lro/analyze/operation"; import { AnalysisPollOperationState, OperationMetadata } from "./lro/poller"; -import { TextAnalyticsAction } from "./textAnalyticsAction"; +import type { TextAnalyticsAction } from "./textAnalyticsAction"; export { BeginAnalyzeActionsOptions, diff --git a/sdk/textanalytics/ai-text-analytics/src/textAnalyticsOperationOptions.ts b/sdk/textanalytics/ai-text-analytics/src/textAnalyticsOperationOptions.ts index fa0924dff532..0d64f2af4dd2 100644 --- a/sdk/textanalytics/ai-text-analytics/src/textAnalyticsOperationOptions.ts +++ b/sdk/textanalytics/ai-text-analytics/src/textAnalyticsOperationOptions.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { OperationOptions } from "@azure/core-client"; +import type { OperationOptions } from "@azure/core-client"; /** * Options common to all text analytics operations. diff --git a/sdk/textanalytics/ai-text-analytics/src/textAnalyticsResult.ts b/sdk/textanalytics/ai-text-analytics/src/textAnalyticsResult.ts index 549ffe50e730..a55387191ce9 100644 --- a/sdk/textanalytics/ai-text-analytics/src/textAnalyticsResult.ts +++ b/sdk/textanalytics/ai-text-analytics/src/textAnalyticsResult.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { DocumentError, ErrorCodeValue, TextAnalyticsError as GeneratedTextAnalyticsErrorModel, diff --git a/sdk/textanalytics/ai-text-analytics/src/util.ts b/sdk/textanalytics/ai-text-analytics/src/util.ts index 01c6a3a92efe..abb7ef89373f 100644 --- a/sdk/textanalytics/ai-text-analytics/src/util.ts +++ b/sdk/textanalytics/ai-text-analytics/src/util.ts @@ -3,13 +3,13 @@ import { RestError } from "@azure/core-rest-pipeline"; import { logger } from "./logger"; -import { +import type { ErrorResponse, StringIndexType as GeneratedStringIndexType, InnerError, TextAnalyticsError, } from "./generated"; -import { TextAnalyticsAction } from "./textAnalyticsAction"; +import type { TextAnalyticsAction } from "./textAnalyticsAction"; /** * @internal diff --git a/sdk/textanalytics/ai-text-analytics/test/internal/collections.spec.ts b/sdk/textanalytics/ai-text-analytics/test/internal/collections.spec.ts index 430aa3e001a4..e12873f736fa 100644 --- a/sdk/textanalytics/ai-text-analytics/test/internal/collections.spec.ts +++ b/sdk/textanalytics/ai-text-analytics/test/internal/collections.spec.ts @@ -8,7 +8,7 @@ import { makeDetectLanguageResultArray } from "../../src/detectLanguageResultArr import { makeExtractKeyPhrasesResultArray } from "../../src/extractKeyPhrasesResultArray"; import { makeRecognizeLinkedEntitiesResultArray } from "../../src/recognizeLinkedEntitiesResultArray"; import { makeRecognizeCategorizedEntitiesResultArray } from "../../src/recognizeCategorizedEntitiesResultArray"; -import { DetectLanguageInput, TextDocumentInput } from "../../src"; +import type { DetectLanguageInput, TextDocumentInput } from "../../src"; import { makeRecognizePiiEntitiesResultArray } from "../../src/recognizePiiEntitiesResultArray"; describe("SentimentResultArray", () => { diff --git a/sdk/textanalytics/ai-text-analytics/test/public/textAnalyticsClient.spec.ts b/sdk/textanalytics/ai-text-analytics/test/public/textAnalyticsClient.spec.ts index 2d8827d6b902..c565cf2d48d2 100644 --- a/sdk/textanalytics/ai-text-analytics/test/public/textAnalyticsClient.spec.ts +++ b/sdk/textanalytics/ai-text-analytics/test/public/textAnalyticsClient.spec.ts @@ -4,26 +4,28 @@ /* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ import { assert, use as chaiUse } from "chai"; -import { Context, Suite } from "mocha"; +import type { Context, Suite } from "mocha"; import chaiPromises from "chai-as-promised"; chaiUse(chaiPromises); import { matrix } from "@azure-tools/test-utils"; -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; -import { AuthMethod, createClient, startRecorder } from "./utils/recordedClient"; -import { +import type { AuthMethod } from "./utils/recordedClient"; +import { createClient, startRecorder } from "./utils/recordedClient"; +import type { AnalyzeSentimentResultArray, AnalyzeSentimentSuccessResult, AssessmentSentiment, DetectLanguageInput, DetectLanguageSuccessResult, Opinion, - PiiEntityDomain, SentenceSentiment, TextAnalyticsClient, TextDocumentInput, } from "../../src"; +import { PiiEntityDomain } from "../../src"; import { assertAllSuccess, assertRestError, isSuccess } from "./utils/resultHelper"; import { checkEntityTextOffset, checkOffsetAndLength } from "./utils/stringIndexTypeHelpers"; diff --git a/sdk/textanalytics/ai-text-analytics/test/public/utils/recordedClient.ts b/sdk/textanalytics/ai-text-analytics/test/public/utils/recordedClient.ts index 2057beb82987..aa67f34e3ef3 100644 --- a/sdk/textanalytics/ai-text-analytics/test/public/utils/recordedClient.ts +++ b/sdk/textanalytics/ai-text-analytics/test/public/utils/recordedClient.ts @@ -1,16 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Test } from "mocha"; +import type { Test } from "mocha"; -import { - Recorder, - RecorderStartOptions, - assertEnvironmentVariable, - env, -} from "@azure-tools/test-recorder"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, assertEnvironmentVariable, env } from "@azure-tools/test-recorder"; -import { AzureKeyCredential, TextAnalyticsClient, TextAnalyticsClientOptions } from "../../../src/"; +import type { TextAnalyticsClientOptions } from "../../../src/"; +import { AzureKeyCredential, TextAnalyticsClient } from "../../../src/"; import { createTestCredential } from "@azure-tools/test-credential"; const envSetupForPlayback: { [k: string]: string } = { diff --git a/sdk/textanalytics/ai-text-analytics/test/public/utils/resultHelper.ts b/sdk/textanalytics/ai-text-analytics/test/public/utils/resultHelper.ts index 0bca4345f286..1a41a380b978 100644 --- a/sdk/textanalytics/ai-text-analytics/test/public/utils/resultHelper.ts +++ b/sdk/textanalytics/ai-text-analytics/test/public/utils/resultHelper.ts @@ -4,7 +4,7 @@ import { isRestError } from "@azure/core-rest-pipeline"; import { assert } from "chai"; -import { TextAnalyticsErrorResult, TextAnalyticsSuccessResult } from "../../../src/"; +import type { TextAnalyticsErrorResult, TextAnalyticsSuccessResult } from "../../../src/"; export function assertAllSuccess( results: (TextAnalyticsErrorResult | TSuccess)[], diff --git a/sdk/textanalytics/ai-text-analytics/test/public/utils/stringIndexTypeHelpers.ts b/sdk/textanalytics/ai-text-analytics/test/public/utils/stringIndexTypeHelpers.ts index 8f538d1f9a1d..876997768f24 100644 --- a/sdk/textanalytics/ai-text-analytics/test/public/utils/stringIndexTypeHelpers.ts +++ b/sdk/textanalytics/ai-text-analytics/test/public/utils/stringIndexTypeHelpers.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Entity, StringIndexType, TextAnalyticsClient } from "../../../src"; +import type { Entity, StringIndexType, TextAnalyticsClient } from "../../../src"; /** * calls the recognizePiiEntities on the input document and checks wether the diff --git a/sdk/translation/ai-translation-document-rest/review/ai-translation-document.api.md b/sdk/translation/ai-translation-document-rest/review/ai-translation-document.api.md index 7912358013cb..8e8424ad1b30 100644 --- a/sdk/translation/ai-translation-document-rest/review/ai-translation-document.api.md +++ b/sdk/translation/ai-translation-document-rest/review/ai-translation-document.api.md @@ -4,22 +4,22 @@ ```ts -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'; -import { ErrorResponse } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { OperationState } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PathUncheckedResponse } from '@azure-rest/core-client'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { AbortSignalLike } from '@azure/abort-controller'; +import type { CancelOnProgress } from '@azure/core-lro'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { CreateHttpPollerOptions } from '@azure/core-lro'; +import type { ErrorResponse } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { OperationState } from '@azure/core-lro'; +import type { PagedAsyncIterableIterator } from '@azure/core-paging'; +import type { PathUncheckedResponse } from '@azure-rest/core-client'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface BatchRequest { diff --git a/sdk/translation/ai-translation-document-rest/src/clientDefinitions.ts b/sdk/translation/ai-translation-document-rest/src/clientDefinitions.ts index 0537002de237..46e31e9dc14b 100644 --- a/sdk/translation/ai-translation-document-rest/src/clientDefinitions.ts +++ b/sdk/translation/ai-translation-document-rest/src/clientDefinitions.ts @@ -4,7 +4,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { +import type { DocumentTranslateParameters, StartTranslationParameters, GetTranslationsStatusParameters, @@ -14,7 +14,7 @@ import { GetDocumentsStatusParameters, GetSupportedFormatsParameters, } from "./parameters.js"; -import { +import type { DocumentTranslate200Response, DocumentTranslateDefaultResponse, StartTranslation202Response, @@ -32,7 +32,7 @@ import { GetSupportedFormats200Response, GetSupportedFormatsDefaultResponse, } from "./responses.js"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface DocumentTranslate { /** Use this API to submit a single translation request to the Document Translation Service. */ diff --git a/sdk/translation/ai-translation-document-rest/src/documentTranslationClient.ts b/sdk/translation/ai-translation-document-rest/src/documentTranslationClient.ts index a5ff5e05a896..68ae03c98fd5 100644 --- a/sdk/translation/ai-translation-document-rest/src/documentTranslationClient.ts +++ b/sdk/translation/ai-translation-document-rest/src/documentTranslationClient.ts @@ -4,10 +4,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "./logger"; -import { TokenCredential, KeyCredential } from "@azure/core-auth"; -import { DocumentTranslationClient } from "./clientDefinitions"; +import type { TokenCredential, KeyCredential } from "@azure/core-auth"; +import type { DocumentTranslationClient } from "./clientDefinitions"; /** The optional parameters for the client */ export interface DocumentTranslationClientOptions extends ClientOptions { diff --git a/sdk/translation/ai-translation-document-rest/src/isUnexpected.ts b/sdk/translation/ai-translation-document-rest/src/isUnexpected.ts index e14648bc9c1f..1b30c35b5f0d 100644 --- a/sdk/translation/ai-translation-document-rest/src/isUnexpected.ts +++ b/sdk/translation/ai-translation-document-rest/src/isUnexpected.ts @@ -4,7 +4,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { +import type { DocumentTranslate200Response, DocumentTranslateDefaultResponse, StartTranslation202Response, diff --git a/sdk/translation/ai-translation-document-rest/src/paginateHelper.ts b/sdk/translation/ai-translation-document-rest/src/paginateHelper.ts index 50bd3bbfed76..f506b03afc2e 100644 --- a/sdk/translation/ai-translation-document-rest/src/paginateHelper.ts +++ b/sdk/translation/ai-translation-document-rest/src/paginateHelper.ts @@ -4,8 +4,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { getPagedAsyncIterator, PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; -import { Client, createRestError, PathUncheckedResponse } from "@azure-rest/core-client"; +import type { PagedAsyncIterableIterator, PagedResult } from "@azure/core-paging"; +import { getPagedAsyncIterator } from "@azure/core-paging"; +import type { Client, PathUncheckedResponse } from "@azure-rest/core-client"; +import { createRestError } from "@azure-rest/core-client"; /** * Helper type to extract the type of an array diff --git a/sdk/translation/ai-translation-document-rest/src/parameters.ts b/sdk/translation/ai-translation-document-rest/src/parameters.ts index 959347358014..43802f4d19dc 100644 --- a/sdk/translation/ai-translation-document-rest/src/parameters.ts +++ b/sdk/translation/ai-translation-document-rest/src/parameters.ts @@ -4,9 +4,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; -import { RequestParameters } from "@azure-rest/core-client"; -import { DocumentTranslateContent, StartTranslationDetails, FileFormatType } from "./models.js"; +import type { RawHttpHeadersInput } from "@azure/core-rest-pipeline"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { + DocumentTranslateContent, + StartTranslationDetails, + FileFormatType, +} from "./models.js"; export interface DocumentTranslateHeaders { /** An opaque, globally-unique, client-generated string identifier for the request. */ diff --git a/sdk/translation/ai-translation-document-rest/src/pollingHelper.ts b/sdk/translation/ai-translation-document-rest/src/pollingHelper.ts index 1497121c109c..75c8bfe26346 100644 --- a/sdk/translation/ai-translation-document-rest/src/pollingHelper.ts +++ b/sdk/translation/ai-translation-document-rest/src/pollingHelper.ts @@ -4,17 +4,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { Client, HttpResponse } from "@azure-rest/core-client"; -import { AbortSignalLike } from "@azure/abort-controller"; -import { +import type { Client, HttpResponse } from "@azure-rest/core-client"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { CancelOnProgress, CreateHttpPollerOptions, RunningOperation, OperationResponse, OperationState, - createHttpPoller, } from "@azure/core-lro"; -import { +import { createHttpPoller } from "@azure/core-lro"; +import type { StartTranslation202Response, StartTranslationDefaultResponse, StartTranslationLogicalResponse, diff --git a/sdk/translation/ai-translation-document-rest/src/responses.ts b/sdk/translation/ai-translation-document-rest/src/responses.ts index 625cc8f018ae..999b2ca5a2fe 100644 --- a/sdk/translation/ai-translation-document-rest/src/responses.ts +++ b/sdk/translation/ai-translation-document-rest/src/responses.ts @@ -4,9 +4,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; -import { +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; +import type { TranslationsStatusOutput, DocumentStatusOutput, TranslationStatusOutput, diff --git a/sdk/translation/ai-translation-document-rest/test/public/getSupportedFormatsTest.spec.ts b/sdk/translation/ai-translation-document-rest/test/public/getSupportedFormatsTest.spec.ts index e606d5b4d15a..8788a67af6a2 100644 --- a/sdk/translation/ai-translation-document-rest/test/public/getSupportedFormatsTest.spec.ts +++ b/sdk/translation/ai-translation-document-rest/test/public/getSupportedFormatsTest.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { DocumentTranslationClient, isUnexpected } from "../../src"; +import type { DocumentTranslationClient } from "../../src"; +import { isUnexpected } from "../../src"; import { createDocumentTranslationClient, startRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("GetSupportedFormats tests", () => { let recorder: Recorder; diff --git a/sdk/translation/ai-translation-document-rest/test/public/node/cancelTranslationTest.spec.ts b/sdk/translation/ai-translation-document-rest/test/public/node/cancelTranslationTest.spec.ts index 0f9eb4a5bf6e..13a274adde03 100644 --- a/sdk/translation/ai-translation-document-rest/test/public/node/cancelTranslationTest.spec.ts +++ b/sdk/translation/ai-translation-document-rest/test/public/node/cancelTranslationTest.spec.ts @@ -1,16 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { DocumentTranslationClient, isUnexpected } from "../../../src"; +import type { DocumentTranslationClient } from "../../../src"; +import { isUnexpected } from "../../../src"; import { createDocumentTranslationClient, startRecorder } from "../utils/recordedClient"; import { ONE_TEST_DOCUMENTS, createSourceContainer, createTargetContainer, } from "./containerHelper"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createBatchRequest, createSourceInput, diff --git a/sdk/translation/ai-translation-document-rest/test/public/node/containerHelper.ts b/sdk/translation/ai-translation-document-rest/test/public/node/containerHelper.ts index 00a6c79d6a52..792beada61a3 100644 --- a/sdk/translation/ai-translation-document-rest/test/public/node/containerHelper.ts +++ b/sdk/translation/ai-translation-document-rest/test/public/node/containerHelper.ts @@ -1,10 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; -import { ContainerClient, BlobServiceClient } from "@azure/storage-blob"; -import { TestDocument, createTestDocument } from "../utils/TestDocument"; -import { Pipeline } from "@azure/core-rest-pipeline"; +import type { Recorder } from "@azure-tools/test-recorder"; +import type { ContainerClient } from "@azure/storage-blob"; +import { BlobServiceClient } from "@azure/storage-blob"; +import type { TestDocument } from "../utils/TestDocument"; +import { createTestDocument } from "../utils/TestDocument"; +import type { Pipeline } from "@azure/core-rest-pipeline"; import { createTestCredential } from "@azure-tools/test-credential"; export const ONE_TEST_DOCUMENTS = [ diff --git a/sdk/translation/ai-translation-document-rest/test/public/node/documentFilterTest.spec.ts b/sdk/translation/ai-translation-document-rest/test/public/node/documentFilterTest.spec.ts index 5e4347eef074..57cf53484eb5 100644 --- a/sdk/translation/ai-translation-document-rest/test/public/node/documentFilterTest.spec.ts +++ b/sdk/translation/ai-translation-document-rest/test/public/node/documentFilterTest.spec.ts @@ -1,17 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { - DocumentTranslationClient, - isUnexpected, - getLongRunningPoller, - StartTranslation202Response, -} from "../../../src"; +import type { DocumentTranslationClient, StartTranslation202Response } from "../../../src"; +import { isUnexpected, getLongRunningPoller } from "../../../src"; import { createDocumentTranslationClient, startRecorder } from "../utils/recordedClient"; import { createSourceContainer, createTargetContainer } from "./containerHelper"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createBatchRequest, createDummyTestDocuments, diff --git a/sdk/translation/ai-translation-document-rest/test/public/node/documentTranslationTest.spec.ts b/sdk/translation/ai-translation-document-rest/test/public/node/documentTranslationTest.spec.ts index 838647e63f13..1b5402a8d238 100644 --- a/sdk/translation/ai-translation-document-rest/test/public/node/documentTranslationTest.spec.ts +++ b/sdk/translation/ai-translation-document-rest/test/public/node/documentTranslationTest.spec.ts @@ -1,25 +1,25 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isLiveMode, isPlaybackMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { +import type { DocumentStatusOutput, DocumentTranslationClient, GetDocumentStatus200Response, GetTranslationStatus200Response, StartTranslationDefaultResponse, TranslationStatusOutput, - getLongRunningPoller, - isUnexpected, } from "../../../src"; +import { getLongRunningPoller, isUnexpected } from "../../../src"; import { createDocumentTranslationClient, createDocumentTranslationClientWithEndpointAndCredentials, startRecorder, } from "../utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { ONE_TEST_DOCUMENTS, TWO_TEST_DOCUMENTS, @@ -38,7 +38,7 @@ import { sleep, } from "../utils/testHelper"; import { createTestDocument } from "../utils/TestDocument"; -import { BatchRequest } from "../../../src/models"; +import type { BatchRequest } from "../../../src/models"; export const testPollingOptions = { intervalInMs: isPlaybackMode() ? 0 : undefined, diff --git a/sdk/translation/ai-translation-document-rest/test/public/node/translationFilterTest.spec.ts b/sdk/translation/ai-translation-document-rest/test/public/node/translationFilterTest.spec.ts index b9445d929473..a28b334b9fc9 100644 --- a/sdk/translation/ai-translation-document-rest/test/public/node/translationFilterTest.spec.ts +++ b/sdk/translation/ai-translation-document-rest/test/public/node/translationFilterTest.spec.ts @@ -1,18 +1,18 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, isPlaybackMode } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { isPlaybackMode } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { +import type { DocumentTranslationClient, - isUnexpected, - getLongRunningPoller, GetTranslationStatus200Response, TranslationStatusOutput, } from "../../../src"; +import { isUnexpected, getLongRunningPoller } from "../../../src"; import { createDocumentTranslationClient, startRecorder } from "../utils/recordedClient"; import { createSourceContainer, createTargetContainer } from "./containerHelper"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { createBatchRequest, createDummyTestDocuments, diff --git a/sdk/translation/ai-translation-document-rest/test/public/singleDocumentTranslateTest.spec.ts b/sdk/translation/ai-translation-document-rest/test/public/singleDocumentTranslateTest.spec.ts index e9826872041a..905deb5cf7de 100644 --- a/sdk/translation/ai-translation-document-rest/test/public/singleDocumentTranslateTest.spec.ts +++ b/sdk/translation/ai-translation-document-rest/test/public/singleDocumentTranslateTest.spec.ts @@ -1,16 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { +import type { DocumentTranslateDefaultResponse, DocumentTranslateParameters, DocumentTranslationClient, - isUnexpected, } from "../../src"; +import { isUnexpected } from "../../src"; import { createDocumentTranslationClient, startRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("SingleDocumentTranslate tests", () => { let recorder: Recorder; diff --git a/sdk/translation/ai-translation-document-rest/test/public/utils/StaticAccessTokenCredential.ts b/sdk/translation/ai-translation-document-rest/test/public/utils/StaticAccessTokenCredential.ts index 27f5c8a0ed70..9f874129017d 100644 --- a/sdk/translation/ai-translation-document-rest/test/public/utils/StaticAccessTokenCredential.ts +++ b/sdk/translation/ai-translation-document-rest/test/public/utils/StaticAccessTokenCredential.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential, AccessToken } from "@azure/core-auth"; +import type { TokenCredential, AccessToken } from "@azure/core-auth"; export class StaticAccessTokenCredential implements TokenCredential { // AccessToken is an object with two properties: diff --git a/sdk/translation/ai-translation-document-rest/test/public/utils/recordedClient.ts b/sdk/translation/ai-translation-document-rest/test/public/utils/recordedClient.ts index 4d220e1ab5ba..be5975709c5c 100644 --- a/sdk/translation/ai-translation-document-rest/test/public/utils/recordedClient.ts +++ b/sdk/translation/ai-translation-document-rest/test/public/utils/recordedClient.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; +import type { Context } from "mocha"; import { Recorder, env } from "@azure-tools/test-recorder"; -import { ClientOptions } from "@azure-rest/core-client"; -import { DocumentTranslationClient, default as createClient } from "../../../src"; -import { KeyCredential, TokenCredential } from "@azure/core-auth"; +import type { ClientOptions } from "@azure-rest/core-client"; +import type { DocumentTranslationClient } from "../../../src"; +import { default as createClient } from "../../../src"; +import type { KeyCredential, TokenCredential } from "@azure/core-auth"; import { createTestCredential } from "@azure-tools/test-credential"; export async function startRecorder(context: Context): Promise { diff --git a/sdk/translation/ai-translation-document-rest/test/public/utils/samplesHelper.ts b/sdk/translation/ai-translation-document-rest/test/public/utils/samplesHelper.ts index be7a087f6427..b9b54d48ef04 100644 --- a/sdk/translation/ai-translation-document-rest/test/public/utils/samplesHelper.ts +++ b/sdk/translation/ai-translation-document-rest/test/public/utils/samplesHelper.ts @@ -1,14 +1,16 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { ContainerClient, ContainerSASPermissions, BlobServiceClient } from "@azure/storage-blob"; -import { TestDocument, createTestDocument } from "../utils/TestDocument"; -import { +import type { ContainerClient } from "@azure/storage-blob"; +import { ContainerSASPermissions, BlobServiceClient } from "@azure/storage-blob"; +import type { TestDocument } from "../utils/TestDocument"; +import { createTestDocument } from "../utils/TestDocument"; +import type { BatchRequest, DocumentTranslationClient, StartTranslationDefaultResponse, - getLongRunningPoller, } from "../../../src"; +import { getLongRunningPoller } from "../../../src"; const connectionString = process.env["DOCUMENT_TRANSLATION_CONNECTION_STRING"] || "ConnectionString"; diff --git a/sdk/translation/ai-translation-document-rest/test/public/utils/testHelper.ts b/sdk/translation/ai-translation-document-rest/test/public/utils/testHelper.ts index 54e3a157491c..66cd9046235f 100644 --- a/sdk/translation/ai-translation-document-rest/test/public/utils/testHelper.ts +++ b/sdk/translation/ai-translation-document-rest/test/public/utils/testHelper.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { isPlaybackMode } from "@azure-tools/test-recorder"; -import { +import type { BatchRequest, DocumentFilter, Glossary, @@ -11,7 +11,8 @@ import { StorageSource, TargetInput, } from "../../../src"; -import { TestDocument, createTestDocument } from "./TestDocument"; +import type { TestDocument } from "./TestDocument"; +import { createTestDocument } from "./TestDocument"; export function createSourceInput( sourceUrl: string, diff --git a/sdk/translation/ai-translation-text-rest/review/ai-translation-text.api.md b/sdk/translation/ai-translation-text-rest/review/ai-translation-text.api.md index 2d84f2e689fd..0ca842f5da27 100644 --- a/sdk/translation/ai-translation-text-rest/review/ai-translation-text.api.md +++ b/sdk/translation/ai-translation-text-rest/review/ai-translation-text.api.md @@ -5,14 +5,14 @@ ```ts import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; import { HttpResponse } from '@azure-rest/core-client'; -import { KeyCredential } from '@azure/core-auth'; +import type { KeyCredential } from '@azure/core-auth'; import { RawHttpHeaders } from '@azure/core-rest-pipeline'; import { RawHttpHeadersInput } from '@azure/core-rest-pipeline'; import { RequestParameters } from '@azure-rest/core-client'; import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { TokenCredential } from '@azure/core-auth'; // @public export interface BackTranslationOutput { diff --git a/sdk/translation/ai-translation-text-rest/src/authentication.ts b/sdk/translation/ai-translation-text-rest/src/authentication.ts index a2f5c682982d..4402fa7a5caf 100644 --- a/sdk/translation/ai-translation-text-rest/src/authentication.ts +++ b/sdk/translation/ai-translation-text-rest/src/authentication.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AzureKeyCredential, TokenCredential } from "@azure/core-auth"; -import { +import type { AzureKeyCredential, TokenCredential } from "@azure/core-auth"; +import type { PipelinePolicy, PipelineRequest, PipelineResponse, diff --git a/sdk/translation/ai-translation-text-rest/src/customClient.ts b/sdk/translation/ai-translation-text-rest/src/customClient.ts index 7d9c07d0f236..62522b421709 100644 --- a/sdk/translation/ai-translation-text-rest/src/customClient.ts +++ b/sdk/translation/ai-translation-text-rest/src/customClient.ts @@ -1,19 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "./generated/logger"; import * as coreRestPipeline from "@azure/core-rest-pipeline"; -import { TextTranslationClient } from "./generated/clientDefinitions"; +import type { TextTranslationClient } from "./generated/clientDefinitions"; +import type { TranslatorCredential, TranslatorTokenCredential } from "./authentication"; import { DEFAULT_SCOPE, - TranslatorCredential, - TranslatorTokenCredential, TranslatorAuthenticationPolicy, TranslatorAzureKeyAuthenticationPolicy, TranslatorTokenCredentialAuthenticationPolicy, } from "./authentication"; -import { AzureKeyCredential, KeyCredential, TokenCredential } from "@azure/core-auth"; +import type { AzureKeyCredential, KeyCredential, TokenCredential } from "@azure/core-auth"; const DEFAULT_ENPOINT = "https://api.cognitive.microsofttranslator.com"; const PLATFORM_HOST = "cognitiveservices"; diff --git a/sdk/translation/ai-translation-text-rest/test/public/breakSentenceTest.spec.ts b/sdk/translation/ai-translation-text-rest/test/public/breakSentenceTest.spec.ts index bd2eacc3a21e..be5bd29a27d1 100644 --- a/sdk/translation/ai-translation-text-rest/test/public/breakSentenceTest.spec.ts +++ b/sdk/translation/ai-translation-text-rest/test/public/breakSentenceTest.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { TextTranslationClient, isUnexpected } from "../../src"; +import type { TextTranslationClient } from "../../src"; +import { isUnexpected } from "../../src"; import { createTranslationClient, startRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("BreakSentence tests", () => { let recorder: Recorder; diff --git a/sdk/translation/ai-translation-text-rest/test/public/dictionaryExamplesTest.spec.ts b/sdk/translation/ai-translation-text-rest/test/public/dictionaryExamplesTest.spec.ts index 0e653983f1b3..e644a7f4dd15 100644 --- a/sdk/translation/ai-translation-text-rest/test/public/dictionaryExamplesTest.spec.ts +++ b/sdk/translation/ai-translation-text-rest/test/public/dictionaryExamplesTest.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { TextTranslationClient, isUnexpected } from "../../src"; +import type { TextTranslationClient } from "../../src"; +import { isUnexpected } from "../../src"; import { createTranslationClient, startRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("DictionaryExamples tests", () => { let recorder: Recorder; diff --git a/sdk/translation/ai-translation-text-rest/test/public/dictionaryLookupTest.spec.ts b/sdk/translation/ai-translation-text-rest/test/public/dictionaryLookupTest.spec.ts index be1976a9372d..11dcf377ba2c 100644 --- a/sdk/translation/ai-translation-text-rest/test/public/dictionaryLookupTest.spec.ts +++ b/sdk/translation/ai-translation-text-rest/test/public/dictionaryLookupTest.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { TextTranslationClient, isUnexpected } from "../../src"; +import type { TextTranslationClient } from "../../src"; +import { isUnexpected } from "../../src"; import { createTranslationClient, startRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("DictionaryLookup tests", () => { let recorder: Recorder; diff --git a/sdk/translation/ai-translation-text-rest/test/public/getLanguagesTest.spec.ts b/sdk/translation/ai-translation-text-rest/test/public/getLanguagesTest.spec.ts index 8d9fc8b89ced..6a24cd096658 100644 --- a/sdk/translation/ai-translation-text-rest/test/public/getLanguagesTest.spec.ts +++ b/sdk/translation/ai-translation-text-rest/test/public/getLanguagesTest.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { TextTranslationClient, isUnexpected } from "../../src"; +import type { TextTranslationClient } from "../../src"; +import { isUnexpected } from "../../src"; import { createTranslationClient, startRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("GetLanguages tests", () => { let recorder: Recorder; diff --git a/sdk/translation/ai-translation-text-rest/test/public/translateTest.spec.ts b/sdk/translation/ai-translation-text-rest/test/public/translateTest.spec.ts index 0815772ba98a..d57985fb46de 100644 --- a/sdk/translation/ai-translation-text-rest/test/public/translateTest.spec.ts +++ b/sdk/translation/ai-translation-text-rest/test/public/translateTest.spec.ts @@ -1,9 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { TextTranslationClient, isUnexpected } from "../../src"; +import type { TextTranslationClient } from "../../src"; +import { isUnexpected } from "../../src"; import { createCustomTranslationClient, createTranslationClient, @@ -11,7 +12,7 @@ import { createAADAuthenticationTranslationClient, startRecorder, } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; describe("Translate tests", () => { let recorder: Recorder; diff --git a/sdk/translation/ai-translation-text-rest/test/public/transliterateTest.spec.ts b/sdk/translation/ai-translation-text-rest/test/public/transliterateTest.spec.ts index 6e6e6b039691..2fef24892a57 100644 --- a/sdk/translation/ai-translation-text-rest/test/public/transliterateTest.spec.ts +++ b/sdk/translation/ai-translation-text-rest/test/public/transliterateTest.spec.ts @@ -1,11 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; import { assert } from "chai"; -import { TextTranslationClient, isUnexpected } from "../../src"; +import type { TextTranslationClient } from "../../src"; +import { isUnexpected } from "../../src"; import { createTranslationClient, startRecorder } from "./utils/recordedClient"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { editDistance } from "./utils/testHelper"; describe("Transliterate tests", () => { diff --git a/sdk/translation/ai-translation-text-rest/test/public/utils/StaticAccessTokenCredential.ts b/sdk/translation/ai-translation-text-rest/test/public/utils/StaticAccessTokenCredential.ts index 27f5c8a0ed70..9f874129017d 100644 --- a/sdk/translation/ai-translation-text-rest/test/public/utils/StaticAccessTokenCredential.ts +++ b/sdk/translation/ai-translation-text-rest/test/public/utils/StaticAccessTokenCredential.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { TokenCredential, AccessToken } from "@azure/core-auth"; +import type { TokenCredential, AccessToken } from "@azure/core-auth"; export class StaticAccessTokenCredential implements TokenCredential { // AccessToken is an object with two properties: diff --git a/sdk/translation/ai-translation-text-rest/test/public/utils/recordedClient.ts b/sdk/translation/ai-translation-text-rest/test/public/utils/recordedClient.ts index 2db999cabc3c..60664ffa55de 100644 --- a/sdk/translation/ai-translation-text-rest/test/public/utils/recordedClient.ts +++ b/sdk/translation/ai-translation-text-rest/test/public/utils/recordedClient.ts @@ -1,22 +1,19 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { - Recorder, - RecorderStartOptions, - isPlaybackMode, - assertEnvironmentVariable, -} from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder, isPlaybackMode, assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { StaticAccessTokenCredential } from "./StaticAccessTokenCredential"; -import createTextTranslationClient, { +import type { TranslatorCredential, TranslatorTokenCredential, TextTranslationClient, } from "../../../src"; -import { ClientOptions } from "@azure-rest/core-client"; +import createTextTranslationClient from "../../../src"; +import type { ClientOptions } from "@azure-rest/core-client"; import { createDefaultHttpClient, createPipelineRequest } from "@azure/core-rest-pipeline"; -import { TokenCredential } from "@azure/core-auth"; +import type { TokenCredential } from "@azure/core-auth"; import { ClientSecretCredential } from "@azure/identity"; const envSetupForPlayback: Record = { diff --git a/sdk/vision/ai-vision-image-analysis-rest/review/ai-vision-image-analysis.api.md b/sdk/vision/ai-vision-image-analysis-rest/review/ai-vision-image-analysis.api.md index a5a042e0007b..358631ea5669 100644 --- a/sdk/vision/ai-vision-image-analysis-rest/review/ai-vision-image-analysis.api.md +++ b/sdk/vision/ai-vision-image-analysis-rest/review/ai-vision-image-analysis.api.md @@ -4,15 +4,15 @@ ```ts -import { Client } from '@azure-rest/core-client'; -import { ClientOptions } from '@azure-rest/core-client'; -import { ErrorResponse } from '@azure-rest/core-client'; -import { HttpResponse } from '@azure-rest/core-client'; -import { KeyCredential } from '@azure/core-auth'; -import { RawHttpHeaders } from '@azure/core-rest-pipeline'; -import { RequestParameters } from '@azure-rest/core-client'; -import { StreamableMethod } from '@azure-rest/core-client'; -import { TokenCredential } from '@azure/core-auth'; +import type { Client } from '@azure-rest/core-client'; +import type { ClientOptions } from '@azure-rest/core-client'; +import type { ErrorResponse } from '@azure-rest/core-client'; +import type { HttpResponse } from '@azure-rest/core-client'; +import type { KeyCredential } from '@azure/core-auth'; +import type { RawHttpHeaders } from '@azure/core-rest-pipeline'; +import type { RequestParameters } from '@azure-rest/core-client'; +import type { StreamableMethod } from '@azure-rest/core-client'; +import type { TokenCredential } from '@azure/core-auth'; // @public (undocumented) export interface AnalyzeFromImageData { diff --git a/sdk/vision/ai-vision-image-analysis-rest/src/clientDefinitions.ts b/sdk/vision/ai-vision-image-analysis-rest/src/clientDefinitions.ts index b86f13d29767..3fa4dae04942 100644 --- a/sdk/vision/ai-vision-image-analysis-rest/src/clientDefinitions.ts +++ b/sdk/vision/ai-vision-image-analysis-rest/src/clientDefinitions.ts @@ -1,14 +1,14 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AnalyzeFromImageDataParameters, AnalyzeFromUrlParameters } from "./parameters"; -import { +import type { AnalyzeFromImageDataParameters, AnalyzeFromUrlParameters } from "./parameters"; +import type { AnalyzeFromImageData200Response, AnalyzeFromImageDataDefaultResponse, AnalyzeFromUrl200Response, AnalyzeFromUrlDefaultResponse, } from "./responses"; -import { Client, StreamableMethod } from "@azure-rest/core-client"; +import type { Client, StreamableMethod } from "@azure-rest/core-client"; export interface AnalyzeFromImageData { /** Performs a single Image Analysis operation */ diff --git a/sdk/vision/ai-vision-image-analysis-rest/src/imageAnalysisClient.ts b/sdk/vision/ai-vision-image-analysis-rest/src/imageAnalysisClient.ts index ffdefcfe8f30..d65dcd6d391d 100644 --- a/sdk/vision/ai-vision-image-analysis-rest/src/imageAnalysisClient.ts +++ b/sdk/vision/ai-vision-image-analysis-rest/src/imageAnalysisClient.ts @@ -1,10 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { getClient, ClientOptions } from "@azure-rest/core-client"; +import type { ClientOptions } from "@azure-rest/core-client"; +import { getClient } from "@azure-rest/core-client"; import { logger } from "./logger"; -import { TokenCredential, KeyCredential } from "@azure/core-auth"; -import { ImageAnalysisClient } from "./clientDefinitions"; +import type { TokenCredential, KeyCredential } from "@azure/core-auth"; +import type { ImageAnalysisClient } from "./clientDefinitions"; /** The optional parameters for the client */ export interface ImageAnalysisClientOptions extends ClientOptions { diff --git a/sdk/vision/ai-vision-image-analysis-rest/src/isUnexpected.ts b/sdk/vision/ai-vision-image-analysis-rest/src/isUnexpected.ts index 707ebf4f4309..f9f87e6a6cb1 100644 --- a/sdk/vision/ai-vision-image-analysis-rest/src/isUnexpected.ts +++ b/sdk/vision/ai-vision-image-analysis-rest/src/isUnexpected.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AnalyzeFromImageData200Response, AnalyzeFromImageDataDefaultResponse, AnalyzeFromUrl200Response, diff --git a/sdk/vision/ai-vision-image-analysis-rest/src/parameters.ts b/sdk/vision/ai-vision-image-analysis-rest/src/parameters.ts index 0269c7f2528a..ca56ecca549d 100644 --- a/sdk/vision/ai-vision-image-analysis-rest/src/parameters.ts +++ b/sdk/vision/ai-vision-image-analysis-rest/src/parameters.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestParameters } from "@azure-rest/core-client"; -import { VisualFeatures, ImageUrl } from "./models.js"; +import type { RequestParameters } from "@azure-rest/core-client"; +import type { VisualFeatures, ImageUrl } from "./models.js"; export interface AnalyzeFromImageDataBodyParam { /** diff --git a/sdk/vision/ai-vision-image-analysis-rest/src/responses.ts b/sdk/vision/ai-vision-image-analysis-rest/src/responses.ts index bcbd27d988a0..5b85823a3c0b 100644 --- a/sdk/vision/ai-vision-image-analysis-rest/src/responses.ts +++ b/sdk/vision/ai-vision-image-analysis-rest/src/responses.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RawHttpHeaders } from "@azure/core-rest-pipeline"; -import { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; -import { ImageAnalysisResultOutput } from "./outputModels"; +import type { RawHttpHeaders } from "@azure/core-rest-pipeline"; +import type { HttpResponse, ErrorResponse } from "@azure-rest/core-client"; +import type { ImageAnalysisResultOutput } from "./outputModels"; /** The request has succeeded. */ export interface AnalyzeFromImageData200Response extends HttpResponse { diff --git a/sdk/vision/ai-vision-image-analysis-rest/test/public/AnalysisTests.spec.ts b/sdk/vision/ai-vision-image-analysis-rest/test/public/AnalysisTests.spec.ts index 535e2f95818b..90c325c74c79 100644 --- a/sdk/vision/ai-vision-image-analysis-rest/test/public/AnalysisTests.spec.ts +++ b/sdk/vision/ai-vision-image-analysis-rest/test/public/AnalysisTests.spec.ts @@ -2,8 +2,8 @@ // Licensed under the MIT License. import { assert } from "chai"; -import { Context } from "mocha"; -import { +import type { Context } from "mocha"; +import type { ImageAnalysisClient, CaptionResultOutput, ImageAnalysisResultOutput, @@ -12,7 +12,8 @@ import { TagsResultOutput, } from "../../src/index.js"; import { createRecorder } from "./utils/recordedClient"; -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import { createClient } from "./utils/clientMethods"; import { AzureKeyCredential } from "@azure/core-auth"; import { createTestCredential } from "@azure-tools/test-credential"; diff --git a/sdk/vision/ai-vision-image-analysis-rest/test/public/utils/clientMethods.ts b/sdk/vision/ai-vision-image-analysis-rest/test/public/utils/clientMethods.ts index 03adef0d9484..142ec49a1d00 100644 --- a/sdk/vision/ai-vision-image-analysis-rest/test/public/utils/clientMethods.ts +++ b/sdk/vision/ai-vision-image-analysis-rest/test/public/utils/clientMethods.ts @@ -1,10 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; +import type { Recorder } from "@azure-tools/test-recorder"; +import { assertEnvironmentVariable } from "@azure-tools/test-recorder"; import "./env"; -import { AzureKeyCredential, TokenCredential } from "@azure/core-auth"; -import importedCreateClient, { ImageAnalysisClient } from "../../../src/index"; +import type { AzureKeyCredential, TokenCredential } from "@azure/core-auth"; +import type { ImageAnalysisClient } from "../../../src/index"; +import importedCreateClient from "../../../src/index"; export async function createClient( recorder: Recorder, diff --git a/sdk/vision/ai-vision-image-analysis-rest/test/public/utils/recordedClient.ts b/sdk/vision/ai-vision-image-analysis-rest/test/public/utils/recordedClient.ts index b20caf8699bb..08700cf0bc99 100644 --- a/sdk/vision/ai-vision-image-analysis-rest/test/public/utils/recordedClient.ts +++ b/sdk/vision/ai-vision-image-analysis-rest/test/public/utils/recordedClient.ts @@ -1,8 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { Context } from "mocha"; -import { Recorder, RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { Context } from "mocha"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder } from "@azure-tools/test-recorder"; const envSetupForPlayback: Record = { ENDPOINT: "https://endpoint", diff --git a/sdk/web-pubsub/web-pubsub-client-protobuf/review/web-pubsub-client-protobuf.api.md b/sdk/web-pubsub/web-pubsub-client-protobuf/review/web-pubsub-client-protobuf.api.md index 920165c229aa..101e1bd4c0d9 100644 --- a/sdk/web-pubsub/web-pubsub-client-protobuf/review/web-pubsub-client-protobuf.api.md +++ b/sdk/web-pubsub/web-pubsub-client-protobuf/review/web-pubsub-client-protobuf.api.md @@ -4,7 +4,7 @@ ```ts -import { WebPubSubClientProtocol } from '@azure/web-pubsub-client'; +import type { WebPubSubClientProtocol } from '@azure/web-pubsub-client'; // @public export const WebPubSubProtobufProtocol: () => WebPubSubClientProtocol; diff --git a/sdk/web-pubsub/web-pubsub-client-protobuf/src/index.ts b/sdk/web-pubsub/web-pubsub-client-protobuf/src/index.ts index cf3fa9996211..1b745d634580 100644 --- a/sdk/web-pubsub/web-pubsub-client-protobuf/src/index.ts +++ b/sdk/web-pubsub/web-pubsub-client-protobuf/src/index.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { WebPubSubClientProtocol } from "@azure/web-pubsub-client"; +import type { WebPubSubClientProtocol } from "@azure/web-pubsub-client"; import { WebPubSubProtobufProtocolImpl } from "./webPubSubProtobufProtocol.js"; import { WebPubSubProtobufReliableProtocolImpl } from "./webPubSubProtobufReliableProtocol.js"; diff --git a/sdk/web-pubsub/web-pubsub-client-protobuf/src/webPubSubProtobufProtocol.ts b/sdk/web-pubsub/web-pubsub-client-protobuf/src/webPubSubProtobufProtocol.ts index 677487b997b6..fc7de361578b 100644 --- a/sdk/web-pubsub/web-pubsub-client-protobuf/src/webPubSubProtobufProtocol.ts +++ b/sdk/web-pubsub/web-pubsub-client-protobuf/src/webPubSubProtobufProtocol.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { WebPubSubMessage, WebPubSubClientProtocol } from "@azure/web-pubsub-client"; +import type { WebPubSubMessage, WebPubSubClientProtocol } from "@azure/web-pubsub-client"; import { WebPubSubProtobufProtocolBase } from "./webPubSubProtobufProtocolBase.js"; /** diff --git a/sdk/web-pubsub/web-pubsub-client-protobuf/src/webPubSubProtobufProtocolBase.ts b/sdk/web-pubsub/web-pubsub-client-protobuf/src/webPubSubProtobufProtocolBase.ts index 2a3ec3fb14f5..01bf683a5374 100644 --- a/sdk/web-pubsub/web-pubsub-client-protobuf/src/webPubSubProtobufProtocolBase.ts +++ b/sdk/web-pubsub/web-pubsub-client-protobuf/src/webPubSubProtobufProtocolBase.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AckMessage, AckMessageError, ConnectedMessage, @@ -12,15 +12,14 @@ import { WebPubSubMessage, JSONTypes, } from "@azure/web-pubsub-client"; +import type { IMessageData, IUpstreamMessage } from "./generated/clientProto.js"; import { DownstreamMessage, - IMessageData, - IUpstreamMessage, MessageData, UpstreamMessage, google, } from "./generated/clientProto.js"; -import Long from "long"; +import type Long from "long"; /** * The "protobuf.reliable.webpubsub.azure.v1" protocol diff --git a/sdk/web-pubsub/web-pubsub-client-protobuf/src/webPubSubProtobufReliableProtocol.ts b/sdk/web-pubsub/web-pubsub-client-protobuf/src/webPubSubProtobufReliableProtocol.ts index 2399e8a52026..14953c81b6e7 100644 --- a/sdk/web-pubsub/web-pubsub-client-protobuf/src/webPubSubProtobufReliableProtocol.ts +++ b/sdk/web-pubsub/web-pubsub-client-protobuf/src/webPubSubProtobufReliableProtocol.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { WebPubSubMessage, WebPubSubClientProtocol } from "@azure/web-pubsub-client"; +import type { WebPubSubMessage, WebPubSubClientProtocol } from "@azure/web-pubsub-client"; import { WebPubSubProtobufProtocolBase } from "./webPubSubProtobufProtocolBase.js"; /** diff --git a/sdk/web-pubsub/web-pubsub-client-protobuf/test/client.spec.ts b/sdk/web-pubsub/web-pubsub-client-protobuf/test/client.spec.ts index feb82ca92cfd..62d5c2d13031 100644 --- a/sdk/web-pubsub/web-pubsub-client-protobuf/test/client.spec.ts +++ b/sdk/web-pubsub/web-pubsub-client-protobuf/test/client.spec.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AckMessage, ConnectedMessage, DisconnectedMessage, diff --git a/sdk/web-pubsub/web-pubsub-client/review/web-pubsub-client.api.md b/sdk/web-pubsub/web-pubsub-client/review/web-pubsub-client.api.md index f988d2ae16f9..e20248866b8d 100644 --- a/sdk/web-pubsub/web-pubsub-client/review/web-pubsub-client.api.md +++ b/sdk/web-pubsub/web-pubsub-client/review/web-pubsub-client.api.md @@ -4,7 +4,7 @@ ```ts -import { AbortSignalLike } from '@azure/abort-controller'; +import type { AbortSignalLike } from '@azure/abort-controller'; // @public export interface AckMessage extends WebPubSubMessageBase { diff --git a/sdk/web-pubsub/web-pubsub-client/src/errors/index.ts b/sdk/web-pubsub/web-pubsub-client/src/errors/index.ts index caeede095198..99f99cb466b2 100644 --- a/sdk/web-pubsub/web-pubsub-client/src/errors/index.ts +++ b/sdk/web-pubsub/web-pubsub-client/src/errors/index.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AckMessageError } from "../models/messages"; +import type { AckMessageError } from "../models/messages"; /** * Error when sending message failed diff --git a/sdk/web-pubsub/web-pubsub-client/src/models/index.ts b/sdk/web-pubsub/web-pubsub-client/src/models/index.ts index 51c84c692b5a..2b262b4db02d 100644 --- a/sdk/web-pubsub/web-pubsub-client/src/models/index.ts +++ b/sdk/web-pubsub/web-pubsub-client/src/models/index.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { WebPubSubClientProtocol } from "../protocols"; -import { DisconnectedMessage, GroupDataMessage, ServerDataMessage } from "./messages"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { WebPubSubClientProtocol } from "../protocols"; +import type { DisconnectedMessage, GroupDataMessage, ServerDataMessage } from "./messages"; /** * The client options diff --git a/sdk/web-pubsub/web-pubsub-client/src/models/messages.ts b/sdk/web-pubsub/web-pubsub-client/src/models/messages.ts index 201f3d324691..f736ed763109 100644 --- a/sdk/web-pubsub/web-pubsub-client/src/models/messages.ts +++ b/sdk/web-pubsub/web-pubsub-client/src/models/messages.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { JSONTypes } from "../webPubSubClient"; +import type { JSONTypes } from "../webPubSubClient"; /** * The web pubsub message diff --git a/sdk/web-pubsub/web-pubsub-client/src/protocols/index.ts b/sdk/web-pubsub/web-pubsub-client/src/protocols/index.ts index 141dd4d40063..9ca9c6d495d5 100644 --- a/sdk/web-pubsub/web-pubsub-client/src/protocols/index.ts +++ b/sdk/web-pubsub/web-pubsub-client/src/protocols/index.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { WebPubSubMessage } from "../models/messages"; +import type { WebPubSubMessage } from "../models/messages"; import { WebPubSubJsonProtocolImpl } from "./webPubSubJsonProtocol"; import { WebPubSubJsonReliableProtocolImpl } from "./webPubSubJsonReliableProtocol"; diff --git a/sdk/web-pubsub/web-pubsub-client/src/protocols/jsonProtocolBase.ts b/sdk/web-pubsub/web-pubsub-client/src/protocols/jsonProtocolBase.ts index c7bfbea00eaa..7b1032de89fc 100644 --- a/sdk/web-pubsub/web-pubsub-client/src/protocols/jsonProtocolBase.ts +++ b/sdk/web-pubsub/web-pubsub-client/src/protocols/jsonProtocolBase.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { AckMessage, ConnectedMessage, DisconnectedMessage, @@ -10,7 +10,7 @@ import { WebPubSubDataType, WebPubSubMessage, } from "../models/messages"; -import { JSONTypes } from "../webPubSubClient"; +import type { JSONTypes } from "../webPubSubClient"; // eslint-disable-next-line @typescript-eslint/no-redeclare import { Buffer } from "buffer"; diff --git a/sdk/web-pubsub/web-pubsub-client/src/protocols/webPubSubJsonProtocol.ts b/sdk/web-pubsub/web-pubsub-client/src/protocols/webPubSubJsonProtocol.ts index e6b46d6476ce..49fb6578eb05 100644 --- a/sdk/web-pubsub/web-pubsub-client/src/protocols/webPubSubJsonProtocol.ts +++ b/sdk/web-pubsub/web-pubsub-client/src/protocols/webPubSubJsonProtocol.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { WebPubSubClientProtocol } from "."; -import { WebPubSubMessage } from "../models/messages"; +import type { WebPubSubClientProtocol } from "."; +import type { WebPubSubMessage } from "../models/messages"; import * as base from "./jsonProtocolBase"; /** diff --git a/sdk/web-pubsub/web-pubsub-client/src/protocols/webPubSubJsonReliableProtocol.ts b/sdk/web-pubsub/web-pubsub-client/src/protocols/webPubSubJsonReliableProtocol.ts index 753d3adad7db..225fcc868f27 100644 --- a/sdk/web-pubsub/web-pubsub-client/src/protocols/webPubSubJsonReliableProtocol.ts +++ b/sdk/web-pubsub/web-pubsub-client/src/protocols/webPubSubJsonReliableProtocol.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { WebPubSubClientProtocol } from "."; -import { WebPubSubMessage } from "../models/messages"; +import type { WebPubSubClientProtocol } from "."; +import type { WebPubSubMessage } from "../models/messages"; import * as base from "./jsonProtocolBase"; /** diff --git a/sdk/web-pubsub/web-pubsub-client/src/utils/abortablePromise.ts b/sdk/web-pubsub/web-pubsub-client/src/utils/abortablePromise.ts index 0cc88146ea12..ad22aa9cbc78 100644 --- a/sdk/web-pubsub/web-pubsub-client/src/utils/abortablePromise.ts +++ b/sdk/web-pubsub/web-pubsub-client/src/utils/abortablePromise.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortError, AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import { AbortError } from "@azure/abort-controller"; export async function abortablePromise( promise: Promise, diff --git a/sdk/web-pubsub/web-pubsub-client/src/webPubSubClient.ts b/sdk/web-pubsub/web-pubsub-client/src/webPubSubClient.ts index 93bded0f0e9b..0c04059051ee 100644 --- a/sdk/web-pubsub/web-pubsub-client/src/webPubSubClient.ts +++ b/sdk/web-pubsub/web-pubsub-client/src/webPubSubClient.ts @@ -1,12 +1,13 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; import { delay } from "@azure/core-util"; import EventEmitter from "events"; -import { SendMessageError, SendMessageErrorOptions } from "./errors"; +import type { SendMessageErrorOptions } from "./errors"; +import { SendMessageError } from "./errors"; import { logger } from "./logger"; -import { +import type { WebPubSubResult, JoinGroupOptions, LeaveGroupOptions, @@ -23,7 +24,7 @@ import { StartOptions, GetClientAccessUrlOptions, } from "./models"; -import { +import type { ConnectedMessage, DisconnectedMessage, GroupDataMessage, @@ -37,10 +38,14 @@ import { AckMessage, SequenceAckMessage, } from "./models/messages"; -import { WebPubSubClientProtocol, WebPubSubJsonReliableProtocol } from "./protocols"; -import { WebPubSubClientCredential } from "./webPubSubClientCredential"; +import type { WebPubSubClientProtocol } from "./protocols"; +import { WebPubSubJsonReliableProtocol } from "./protocols"; +import type { WebPubSubClientCredential } from "./webPubSubClientCredential"; import { WebSocketClientFactory } from "./websocket/websocketClient"; -import { WebSocketClientFactoryLike, WebSocketClientLike } from "./websocket/websocketClientLike"; +import type { + WebSocketClientFactoryLike, + WebSocketClientLike, +} from "./websocket/websocketClientLike"; import { abortablePromise } from "./utils/abortablePromise"; enum WebPubSubClientState { diff --git a/sdk/web-pubsub/web-pubsub-client/src/webPubSubClientCredential.ts b/sdk/web-pubsub/web-pubsub-client/src/webPubSubClientCredential.ts index 48474b6415aa..5fac27a83959 100644 --- a/sdk/web-pubsub/web-pubsub-client/src/webPubSubClientCredential.ts +++ b/sdk/web-pubsub/web-pubsub-client/src/webPubSubClientCredential.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { GetClientAccessUrlOptions } from "./models"; +import type { GetClientAccessUrlOptions } from "./models"; /** * The WebPubSubClient credential diff --git a/sdk/web-pubsub/web-pubsub-client/src/websocket/websocketClient.browser.ts b/sdk/web-pubsub/web-pubsub-client/src/websocket/websocketClient.browser.ts index a98d83151215..23e8e641f2dd 100644 --- a/sdk/web-pubsub/web-pubsub-client/src/websocket/websocketClient.browser.ts +++ b/sdk/web-pubsub/web-pubsub-client/src/websocket/websocketClient.browser.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; -import { WebSocketClientFactoryLike, WebSocketClientLike } from "./websocketClientLike"; +import type { AbortSignalLike } from "@azure/abort-controller"; +import type { WebSocketClientFactoryLike, WebSocketClientLike } from "./websocketClientLike"; export class WebSocketClient implements WebSocketClientLike { private _socket: WebSocket; diff --git a/sdk/web-pubsub/web-pubsub-client/src/websocket/websocketClient.ts b/sdk/web-pubsub/web-pubsub-client/src/websocket/websocketClient.ts index e116260c5778..7d703231ee07 100644 --- a/sdk/web-pubsub/web-pubsub-client/src/websocket/websocketClient.ts +++ b/sdk/web-pubsub/web-pubsub-client/src/websocket/websocketClient.ts @@ -1,10 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; // eslint-disable-next-line @typescript-eslint/no-redeclare -import WebSocket, { CloseEvent, MessageEvent, ErrorEvent } from "ws"; -import { WebSocketClientLike, WebSocketClientFactoryLike } from "./websocketClientLike"; +import type { CloseEvent, MessageEvent, ErrorEvent } from "ws"; +// eslint-disable-next-line @typescript-eslint/no-redeclare +import WebSocket from "ws"; +import type { WebSocketClientLike, WebSocketClientFactoryLike } from "./websocketClientLike"; export class WebSocketClient implements WebSocketClientLike { private _socket: WebSocket; diff --git a/sdk/web-pubsub/web-pubsub-client/src/websocket/websocketClientLike.ts b/sdk/web-pubsub/web-pubsub-client/src/websocket/websocketClientLike.ts index 7e61e593d799..13d12e889328 100644 --- a/sdk/web-pubsub/web-pubsub-client/src/websocket/websocketClientLike.ts +++ b/sdk/web-pubsub/web-pubsub-client/src/websocket/websocketClientLike.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; export interface WebSocketClientLike { onclose(fn: (code: number, reason: string) => void): void; diff --git a/sdk/web-pubsub/web-pubsub-client/test/client.lifetime.spec.ts b/sdk/web-pubsub/web-pubsub-client/test/client.lifetime.spec.ts index 8f2056f6d6c2..909ebd672ff9 100644 --- a/sdk/web-pubsub/web-pubsub-client/test/client.lifetime.spec.ts +++ b/sdk/web-pubsub/web-pubsub-client/test/client.lifetime.spec.ts @@ -3,7 +3,7 @@ import { assert, expect } from "chai"; import sinon from "sinon"; -import { +import type { JoinGroupMessage, JoinGroupOptions, LeaveGroupMessage, diff --git a/sdk/web-pubsub/web-pubsub-client/test/client.messages.spec.ts b/sdk/web-pubsub/web-pubsub-client/test/client.messages.spec.ts index 9e2eda3eb2e1..7950ed642b4d 100644 --- a/sdk/web-pubsub/web-pubsub-client/test/client.messages.spec.ts +++ b/sdk/web-pubsub/web-pubsub-client/test/client.messages.spec.ts @@ -3,7 +3,7 @@ import { assert } from "@azure-tools/test-utils"; import sinon from "sinon"; -import { +import type { DisconnectedMessage, GroupDataMessage, JoinGroupMessage, diff --git a/sdk/web-pubsub/web-pubsub-client/test/client.spec.ts b/sdk/web-pubsub/web-pubsub-client/test/client.spec.ts index 947b01bc558c..a1857dfec34d 100644 --- a/sdk/web-pubsub/web-pubsub-client/test/client.spec.ts +++ b/sdk/web-pubsub/web-pubsub-client/test/client.spec.ts @@ -2,10 +2,10 @@ // Licensed under the MIT License. import { assert, expect } from "@azure-tools/test-utils"; -import { WebPubSubClientOptions } from "../src/models"; +import type { WebPubSubClientOptions } from "../src/models"; import { WebPubSubJsonProtocol } from "../src/protocols"; import { WebPubSubClient } from "../src/webPubSubClient"; -import { WebPubSubClientCredential } from "../src/webPubSubClientCredential"; +import type { WebPubSubClientCredential } from "../src/webPubSubClientCredential"; describe("WebPubSubClient", function () { describe("Construct a new client and options", () => { diff --git a/sdk/web-pubsub/web-pubsub-client/test/jsonProtocol.spec.ts b/sdk/web-pubsub/web-pubsub-client/test/jsonProtocol.spec.ts index 757ad633c68a..0882e0c4cac3 100644 --- a/sdk/web-pubsub/web-pubsub-client/test/jsonProtocol.spec.ts +++ b/sdk/web-pubsub/web-pubsub-client/test/jsonProtocol.spec.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import { assert } from "@azure-tools/test-utils"; -import { +import type { AckMessage, ConnectedMessage, DisconnectedMessage, diff --git a/sdk/web-pubsub/web-pubsub-client/test/testWebSocketClient.ts b/sdk/web-pubsub/web-pubsub-client/test/testWebSocketClient.ts index 3bcc6c296b7a..706ca13e1120 100644 --- a/sdk/web-pubsub/web-pubsub-client/test/testWebSocketClient.ts +++ b/sdk/web-pubsub/web-pubsub-client/test/testWebSocketClient.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { AbortSignalLike } from "@azure/abort-controller"; +import type { AbortSignalLike } from "@azure/abort-controller"; import EventEmitter from "events"; -import { WebPubSubClient } from "../src/webPubSubClient"; -import { +import type { WebPubSubClient } from "../src/webPubSubClient"; +import type { WebSocketClientFactoryLike, WebSocketClientLike, } from "../src/websocket/websocketClientLike"; diff --git a/sdk/web-pubsub/web-pubsub-express/review/web-pubsub-express.api.md b/sdk/web-pubsub/web-pubsub-express/review/web-pubsub-express.api.md index b75468724931..3d36ef760242 100644 --- a/sdk/web-pubsub/web-pubsub-express/review/web-pubsub-express.api.md +++ b/sdk/web-pubsub/web-pubsub-express/review/web-pubsub-express.api.md @@ -4,7 +4,7 @@ ```ts -import express from 'express-serve-static-core'; +import type express from 'express-serve-static-core'; // @public export interface Certificate { diff --git a/sdk/web-pubsub/web-pubsub-express/src/cloudEventsDispatcher.ts b/sdk/web-pubsub/web-pubsub-express/src/cloudEventsDispatcher.ts index d961ab88b3b1..d6f02afb92c0 100644 --- a/sdk/web-pubsub/web-pubsub-express/src/cloudEventsDispatcher.ts +++ b/sdk/web-pubsub/web-pubsub-express/src/cloudEventsDispatcher.ts @@ -2,7 +2,7 @@ // Licensed under the MIT License. import * as utils from "./utils.js"; -import { IncomingMessage, ServerResponse } from "node:http"; +import type { IncomingMessage, ServerResponse } from "node:http"; import { URL } from "node:url"; import { logger } from "./logger.js"; diff --git a/sdk/web-pubsub/web-pubsub-express/src/cloudEventsProtocols.ts b/sdk/web-pubsub/web-pubsub-express/src/cloudEventsProtocols.ts index 5afcd89c9c33..1b6c8eef28c8 100644 --- a/sdk/web-pubsub/web-pubsub-express/src/cloudEventsProtocols.ts +++ b/sdk/web-pubsub/web-pubsub-express/src/cloudEventsProtocols.ts @@ -1,9 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { MqttDisconnectReasonCode } from "./enum/MqttErrorCodes/mqttDisconnectReasonCode.js"; -import { MqttV311ConnectReturnCode } from "./enum/MqttErrorCodes/mqttV311ConnectReturnCode.js"; -import { MqttV500ConnectReasonCode } from "./enum/MqttErrorCodes/mqttV500ConnectReasonCode.js"; +import type { MqttDisconnectReasonCode } from "./enum/MqttErrorCodes/mqttDisconnectReasonCode.js"; +import type { MqttV311ConnectReturnCode } from "./enum/MqttErrorCodes/mqttV311ConnectReturnCode.js"; +import type { MqttV500ConnectReasonCode } from "./enum/MqttErrorCodes/mqttV500ConnectReasonCode.js"; /** * Response of the connect event. diff --git a/sdk/web-pubsub/web-pubsub-express/src/utils.ts b/sdk/web-pubsub/web-pubsub-express/src/utils.ts index 4705159c298b..85683dbc096a 100644 --- a/sdk/web-pubsub/web-pubsub-express/src/utils.ts +++ b/sdk/web-pubsub/web-pubsub-express/src/utils.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { IncomingMessage } from "node:http"; +import type { IncomingMessage } from "node:http"; function isJsonObject(obj: any): boolean { return obj && typeof obj === "object" && !Array.isArray(obj); diff --git a/sdk/web-pubsub/web-pubsub-express/src/webPubSubEventHandler.ts b/sdk/web-pubsub/web-pubsub-express/src/webPubSubEventHandler.ts index 7a947f7ebeb1..6de4f04233f1 100644 --- a/sdk/web-pubsub/web-pubsub-express/src/webPubSubEventHandler.ts +++ b/sdk/web-pubsub/web-pubsub-express/src/webPubSubEventHandler.ts @@ -1,10 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import express from "express-serve-static-core"; +import type express from "express-serve-static-core"; import { CloudEventsDispatcher } from "./cloudEventsDispatcher.js"; -import { WebPubSubEventHandlerOptions } from "./cloudEventsProtocols.js"; +import type { WebPubSubEventHandlerOptions } from "./cloudEventsProtocols.js"; /** * The handler to handle incoming CloudEvents messages diff --git a/sdk/web-pubsub/web-pubsub/CHANGELOG.md b/sdk/web-pubsub/web-pubsub/CHANGELOG.md index 92a1960772f6..471989f7649d 100644 --- a/sdk/web-pubsub/web-pubsub/CHANGELOG.md +++ b/sdk/web-pubsub/web-pubsub/CHANGELOG.md @@ -3,6 +3,7 @@ ## 1.1.4 (Unreleased) ### Features Added +- Added support to generate client access URL and token for `socketio` client protocol. ### Breaking Changes diff --git a/sdk/web-pubsub/web-pubsub/assets.json b/sdk/web-pubsub/web-pubsub/assets.json index 069532579f85..ada23945f50a 100644 --- a/sdk/web-pubsub/web-pubsub/assets.json +++ b/sdk/web-pubsub/web-pubsub/assets.json @@ -2,5 +2,5 @@ "AssetsRepo": "Azure/azure-sdk-assets", "AssetsRepoPrefixPath": "js", "TagPrefix": "js/web-pubsub/web-pubsub", - "Tag": "js/web-pubsub/web-pubsub_54a6c7602b" + "Tag": "js/web-pubsub/web-pubsub_0e1077ac6f" } diff --git a/sdk/web-pubsub/web-pubsub/review/web-pubsub.api.md b/sdk/web-pubsub/web-pubsub/review/web-pubsub.api.md index 44ddc00f3c61..371698f917b3 100644 --- a/sdk/web-pubsub/web-pubsub/review/web-pubsub.api.md +++ b/sdk/web-pubsub/web-pubsub/review/web-pubsub.api.md @@ -5,10 +5,10 @@ ```ts import { AzureKeyCredential } from '@azure/core-auth'; -import { CommonClientOptions } from '@azure/core-client'; -import { OperationOptions } from '@azure/core-client'; -import { RequestBodyType } from '@azure/core-rest-pipeline'; -import { TokenCredential } from '@azure/core-auth'; +import type { CommonClientOptions } from '@azure/core-client'; +import type { OperationOptions } from '@azure/core-client'; +import type { RequestBodyType } from '@azure/core-rest-pipeline'; +import type { TokenCredential } from '@azure/core-auth'; export { AzureKeyCredential } @@ -159,7 +159,7 @@ export function odata(strings: TemplateStringsArray, ...values: unknown[]): stri export type Permission = "joinLeaveGroup" | "sendToGroup"; // @public -export type WebPubSubClientProtocol = "default" | "mqtt"; +export type WebPubSubClientProtocol = "default" | "mqtt" | "socketio"; // @public (undocumented) export interface WebPubSubGroup { diff --git a/sdk/web-pubsub/web-pubsub/src/groupClient.ts b/sdk/web-pubsub/web-pubsub/src/groupClient.ts index 88b575beaef5..11296fcc8ae7 100644 --- a/sdk/web-pubsub/web-pubsub/src/groupClient.ts +++ b/sdk/web-pubsub/web-pubsub/src/groupClient.ts @@ -1,12 +1,17 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions, FullOperationResponse, OperationOptions } from "@azure/core-client"; -import { RestError, RequestBodyType } from "@azure/core-rest-pipeline"; -import { GeneratedClient } from "./generated/generatedClient"; +import type { + CommonClientOptions, + FullOperationResponse, + OperationOptions, +} from "@azure/core-client"; +import type { RequestBodyType } from "@azure/core-rest-pipeline"; +import { RestError } from "@azure/core-rest-pipeline"; +import type { GeneratedClient } from "./generated/generatedClient"; import { tracingClient } from "./tracing"; import { getPayloadForMessage } from "./utils"; -import { JSONTypes } from "./hubClient"; +import type { JSONTypes } from "./hubClient"; /** * Options for constructing a GroupAdmin client. diff --git a/sdk/web-pubsub/web-pubsub/src/hubClient.ts b/sdk/web-pubsub/web-pubsub/src/hubClient.ts index 157d21c5ba40..7042d639872c 100644 --- a/sdk/web-pubsub/web-pubsub/src/hubClient.ts +++ b/sdk/web-pubsub/web-pubsub/src/hubClient.ts @@ -1,23 +1,29 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { CommonClientOptions, FullOperationResponse, OperationOptions } from "@azure/core-client"; -import { RestError, RequestBodyType } from "@azure/core-rest-pipeline"; +import type { + CommonClientOptions, + FullOperationResponse, + OperationOptions, +} from "@azure/core-client"; +import type { RequestBodyType } from "@azure/core-rest-pipeline"; +import { RestError } from "@azure/core-rest-pipeline"; import { GeneratedClient } from "./generated/generatedClient"; -import { +import type { WebPubSubGroup, - WebPubSubGroupImpl, GroupAddConnectionOptions, GroupRemoveConnectionOptions, } from "./groupClient"; -import { AzureKeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; +import { WebPubSubGroupImpl } from "./groupClient"; +import type { AzureKeyCredential, TokenCredential } from "@azure/core-auth"; +import { isTokenCredential } from "@azure/core-auth"; import { webPubSubKeyCredentialPolicy } from "./webPubSubCredentialPolicy"; import { tracingClient } from "./tracing"; import { logger } from "./logger"; import { parseConnectionString } from "./parseConnectionString"; import jwt from "jsonwebtoken"; import { getPayloadForMessage } from "./utils"; -import { +import type { GeneratedClientOptionalParams, AddToGroupsRequest, RemoveFromGroupsRequest, @@ -238,7 +244,7 @@ export interface HubHasPermissionOptions extends OperationOptions { /** * The type of client endpoint that is being requested. */ -export type WebPubSubClientProtocol = "default" | "mqtt"; +export type WebPubSubClientProtocol = "default" | "mqtt" | "socketio"; /** * Options for generating a token to connect a client to the Azure Web Pubsub service. @@ -958,10 +964,14 @@ export class WebPubSubServiceClient { const endpoint = this.endpoint.endsWith("/") ? this.endpoint : this.endpoint + "/"; const clientEndpoint = endpoint.replace(/(http)(s?:\/\/)/gi, "ws$2"); const clientProtocol = updatedOptions.clientProtocol; - const clientPath = - clientProtocol && clientProtocol === "mqtt" - ? `clients/mqtt/hubs/${this.hubName}` - : `client/hubs/${this.hubName}`; + let clientPath = `client/hubs/${this.hubName}`; + switch (clientProtocol) { + case "mqtt": + clientPath = `clients/mqtt/hubs/${this.hubName}`; + break; + case "socketio": + clientPath = `clients/socketio/hubs/${this.hubName}`; + } const baseUrl = clientEndpoint + clientPath; let token: string; diff --git a/sdk/web-pubsub/web-pubsub/src/reverseProxyPolicy.ts b/sdk/web-pubsub/web-pubsub/src/reverseProxyPolicy.ts index 5a697dd646ea..9694be5f977d 100644 --- a/sdk/web-pubsub/web-pubsub/src/reverseProxyPolicy.ts +++ b/sdk/web-pubsub/web-pubsub/src/reverseProxyPolicy.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { +import type { PipelineResponse, PipelineRequest, SendRequest, diff --git a/sdk/web-pubsub/web-pubsub/src/utils.ts b/sdk/web-pubsub/web-pubsub/src/utils.ts index a293926b8209..e020a2b6366d 100644 --- a/sdk/web-pubsub/web-pubsub/src/utils.ts +++ b/sdk/web-pubsub/web-pubsub/src/utils.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RequestBodyType } from "@azure/core-rest-pipeline"; +import type { RequestBodyType } from "@azure/core-rest-pipeline"; function isRequestBody(obj: unknown): obj is RequestBodyType { return ( diff --git a/sdk/web-pubsub/web-pubsub/src/webPubSubCredentialPolicy.ts b/sdk/web-pubsub/web-pubsub/src/webPubSubCredentialPolicy.ts index 283f35046e1f..5cd498a81075 100644 --- a/sdk/web-pubsub/web-pubsub/src/webPubSubCredentialPolicy.ts +++ b/sdk/web-pubsub/web-pubsub/src/webPubSubCredentialPolicy.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { KeyCredential } from "@azure/core-auth"; -import { +import type { KeyCredential } from "@azure/core-auth"; +import type { PipelineResponse, PipelineRequest, SendRequest, diff --git a/sdk/web-pubsub/web-pubsub/test/groups.spec.ts b/sdk/web-pubsub/web-pubsub/test/groups.spec.ts index f5ab252302c2..265142d67f46 100644 --- a/sdk/web-pubsub/web-pubsub/test/groups.spec.ts +++ b/sdk/web-pubsub/web-pubsub/test/groups.spec.ts @@ -2,11 +2,12 @@ // Licensed under the MIT License. /* eslint-disable no-invalid-this */ import { Recorder, assertEnvironmentVariable } from "@azure-tools/test-recorder"; -import { WebPubSubServiceClient, WebPubSubGroup } from "../src"; +import type { WebPubSubGroup } from "../src"; +import { WebPubSubServiceClient } from "../src"; import { assert } from "chai"; import recorderOptions from "./testEnv"; -import { FullOperationResponse } from "@azure/core-client"; -import { RestError } from "@azure/core-rest-pipeline"; +import type { FullOperationResponse } from "@azure/core-client"; +import type { RestError } from "@azure/core-rest-pipeline"; /* eslint-disable @typescript-eslint/no-invalid-this */ describe("Group client working with a group", function () { diff --git a/sdk/web-pubsub/web-pubsub/test/hubs.spec.ts b/sdk/web-pubsub/web-pubsub/test/hubs.spec.ts index c9ae7c77a83b..f5e8cf291451 100644 --- a/sdk/web-pubsub/web-pubsub/test/hubs.spec.ts +++ b/sdk/web-pubsub/web-pubsub/test/hubs.spec.ts @@ -5,7 +5,7 @@ import { Recorder, isLiveMode, assertEnvironmentVariable } from "@azure-tools/te import { WebPubSubServiceClient, AzureKeyCredential } from "../src"; import { assert } from "@azure-tools/test-utils"; import recorderOptions from "./testEnv"; -import { FullOperationResponse } from "@azure/core-client"; +import type { FullOperationResponse } from "@azure/core-client"; import { createTestCredential } from "@azure-tools/test-credential"; /* eslint-disable @typescript-eslint/no-invalid-this */ @@ -306,6 +306,18 @@ describe("HubClient", function () { assert.equal(url.pathname, `/client/hubs/${client.hubName}`); }); + it("can generate default client tokens", async () => { + const res = await client.getClientAccessToken({ + userId: "brian", + groups: ["group1"], + clientProtocol: "default", + }); + const url = new URL(res.url); + assert.ok(url.searchParams.has("access_token")); + assert.equal(url.host, new URL(client.endpoint).host); + assert.equal(url.pathname, `/client/hubs/${client.hubName}`); + }); + it("can generate client MQTT tokens", async () => { const res = await client.getClientAccessToken({ userId: "brian", @@ -317,5 +329,17 @@ describe("HubClient", function () { assert.equal(url.host, new URL(client.endpoint).host); assert.equal(url.pathname, `/clients/mqtt/hubs/${client.hubName}`); }); + + it("can generate socketIO client tokens", async () => { + const res = await client.getClientAccessToken({ + userId: "brian", + groups: ["group1"], + clientProtocol: "socketio", + }); + const url = new URL(res.url); + assert.ok(url.searchParams.has("access_token")); + assert.equal(url.host, new URL(client.endpoint).host); + assert.equal(url.pathname, `/clients/socketio/hubs/${client.hubName}`); + }); }); }); diff --git a/sdk/web-pubsub/web-pubsub/test/integration.spec.ts b/sdk/web-pubsub/web-pubsub/test/integration.spec.ts index e4b95e7f740f..998c9c31b800 100644 --- a/sdk/web-pubsub/web-pubsub/test/integration.spec.ts +++ b/sdk/web-pubsub/web-pubsub/test/integration.spec.ts @@ -3,7 +3,7 @@ /* eslint-disable no-invalid-this */ import { WebPubSubServiceClient, odata } from "../src/index"; import { isLiveMode, assertEnvironmentVariable } from "@azure-tools/test-recorder"; -import { Context } from "mocha"; +import type { Context } from "mocha"; import { assert } from "chai"; import ws from "ws"; diff --git a/sdk/web-pubsub/web-pubsub/test/testEnv.ts b/sdk/web-pubsub/web-pubsub/test/testEnv.ts index a828a8bd9dd4..82ae4414e3c2 100644 --- a/sdk/web-pubsub/web-pubsub/test/testEnv.ts +++ b/sdk/web-pubsub/web-pubsub/test/testEnv.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import { RecorderStartOptions } from "@azure-tools/test-recorder"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; const envSetupForPlayback: Record = { WPS_CONNECTION_STRING: "Endpoint=endpoint;AccessKey=api_key;Version=1.0;", @@ -12,6 +12,16 @@ const envSetupForPlayback: Record = { const recorderOptions: RecorderStartOptions = { envSetupForPlayback, + sanitizerOptions: { + generalSanitizers: [ + { + regex: true, + target: "(?<=http://|https://)(?[^/?]+)", + value: "Sanitized", + groupForReplace: "host", + }, + ], + }, }; export default recorderOptions; diff --git a/vitest.workspace.ts b/vitest.workspace.ts index 5a1174df9308..4532838f7533 100644 --- a/vitest.workspace.ts +++ b/vitest.workspace.ts @@ -1,109 +1 @@ -import { defineWorkspace } from "vitest/config"; - -export default defineWorkspace([ - "./sdk/notificationhubs/notification-hubs/vitest.int.config.ts", - "./sdk/notificationhubs/notification-hubs/vitest.browser.unit.config.ts", - "./sdk/notificationhubs/notification-hubs/vitest.unit.config.ts", - "./sdk/notificationhubs/notification-hubs/vitest.browser.int.config.ts", - "./common/tools/eslint-plugin-azure-sdk/vitest.config.mts", - "./common/tools/dev-tool/vitest.config.mts", - "./sdk/trustedsigning/arm-trustedsigning/vitest.config.ts", - "./sdk/trustedsigning/arm-trustedsigning/vitest.browser.config.ts", - "./sdk/computefleet/arm-computefleet/vitest.config.ts", - "./sdk/computefleet/arm-computefleet/vitest.browser.config.ts", - "./sdk/openai/openai/vitest.config.ts", - "./sdk/openai/openai/vitest.browser.config.ts", - "./sdk/playwrighttesting/create-microsoft-playwright-testing/vitest.config.ts", - "./sdk/standbypool/arm-standbypool/vitest.config.ts", - "./sdk/standbypool/arm-standbypool/vitest.browser.config.ts", - "./sdk/fabric/arm-fabric/vitest.config.ts", - "./sdk/fabric/arm-fabric/vitest.browser.config.ts", - "./sdk/communication/communication-common/vitest.config.ts", - "./sdk/communication/communication-common/vitest.browser.config.ts", - "./sdk/edgezones/arm-edgezones/vitest.browser.config.ts", - "./sdk/edgezones/arm-edgezones/vitest.config.ts", - "./sdk/devcenter/developer-devcenter-rest/vitest.config.ts", - "./sdk/devcenter/developer-devcenter-rest/vitest.browser.config.ts", - "./sdk/batch/batch-rest/vitest.config.ts", - "./sdk/batch/batch-rest/vitest.browser.config.ts", - "./sdk/ai/ai-inference-rest/vitest.config.ts", - "./sdk/ai/ai-inference-rest/vitest.browser.config.ts", - "./sdk/web-pubsub/web-pubsub-express/vitest.config.ts", - "./sdk/web-pubsub/web-pubsub-client-protobuf/vitest.config.ts", - "./sdk/eventhub/event-hubs/vitest.config.ts", - "./sdk/eventhub/event-hubs/vitest.browser.config.ts", - "./sdk/eventhub/eventhubs-checkpointstore-table/vitest.config.ts", - "./sdk/eventhub/eventhubs-checkpointstore-table/vitest.browser.config.ts", - "./sdk/eventhub/mock-hub/vitest.config.ts", - "./sdk/eventhub/eventhubs-checkpointstore-blob/vitest.config.ts", - "./sdk/eventhub/eventhubs-checkpointstore-blob/vitest.browser.config.ts", - "./sdk/computeschedule/arm-computeschedule/vitest.config.ts", - "./sdk/computeschedule/arm-computeschedule/vitest.browser.config.ts", - "./sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/vitest.config.ts", - "./sdk/instrumentation/opentelemetry-instrumentation-azure-sdk/vitest.browser.config.ts", - "./sdk/template/template/vitest.config.ts", - "./sdk/template/template/vitest.browser.config.ts", - "./sdk/appconfiguration/app-configuration/vitest.config.ts", - "./sdk/appconfiguration/app-configuration/vitest.browser.config.ts", - "./sdk/healthinsights/health-insights-radiologyinsights-rest/vitest.config.ts", - "./sdk/healthinsights/health-insights-radiologyinsights-rest/vitest.browser.config.ts", - "./sdk/healthdataaiservices/arm-healthdataaiservices/vitest.config.ts", - "./sdk/healthdataaiservices/arm-healthdataaiservices/vitest.browser.config.ts", - "./sdk/healthdataaiservices/azure-health-deidentification/vitest.browser.config.ts", - "./sdk/healthdataaiservices/azure-health-deidentification/vitest.config.ts", - "./sdk/keyvault/keyvault-common/vitest.config.ts", - "./sdk/keyvault/keyvault-common/vitest.browser.config.ts", - "./sdk/keyvault/keyvault-admin/vitest.config.ts", - "./sdk/keyvault/keyvault-secrets/vitest.config.ts", - "./sdk/keyvault/keyvault-keys/vitest.config.ts", - "./sdk/keyvault/keyvault-certificates/vitest.config.ts", - "./sdk/face/ai-vision-face-rest/vitest.config.ts", - "./sdk/face/ai-vision-face-rest/vitest.browser.config.ts", - "./sdk/core/core-http-compat/vitest.config.ts", - "./sdk/core/core-http-compat/vitest.browser.config.ts", - "./sdk/core/core-amqp/vitest.config.ts", - "./sdk/core/core-amqp/vitest.browser.config.ts", - "./sdk/core/core-sse/vitest.config.ts", - "./sdk/core/core-sse/vitest.browser.config.ts", - "./sdk/core/core-lro/vitest.config.ts", - "./sdk/core/core-lro/vitest.browser.config.ts", - "./sdk/core/core-tracing/vitest.config.ts", - "./sdk/core/core-tracing/vitest.browser.config.ts", - "./sdk/core/core-rest-pipeline/vitest.config.ts", - "./sdk/core/core-rest-pipeline/vitest.browser.config.ts", - "./sdk/core/core-client/vitest.config.ts", - "./sdk/core/core-client/vitest.browser.config.ts", - "./sdk/core/core-auth/vitest.config.ts", - "./sdk/core/core-auth/vitest.browser.config.ts", - "./sdk/core/core-paging/vitest.config.ts", - "./sdk/core/core-paging/vitest.browser.config.ts", - "./sdk/core/core-client-rest/vitest.config.ts", - "./sdk/core/core-client-rest/vitest.browser.config.ts", - "./sdk/core/ts-http-runtime/vitest.config.ts", - "./sdk/core/ts-http-runtime/vitest.browser.config.ts", - "./sdk/core/core-xml/vitest.config.ts", - "./sdk/core/core-xml/vitest.browser.config.ts", - "./sdk/core/core-util/vitest.config.ts", - "./sdk/core/core-util/vitest.browser.config.ts", - "./sdk/core/abort-controller/vitest.config.ts", - "./sdk/core/abort-controller/vitest.browser.config.ts", - "./sdk/core/logger/vitest.config.ts", - "./sdk/core/logger/vitest.browser.config.ts", - "./sdk/test-utils/recorder/vitest.browser.config.ts", - "./sdk/test-utils/recorder/vitest.config.ts", - "./sdk/test-utils/test-utils-vitest/vitest.config.ts", - "./sdk/test-utils/test-utils-vitest/vitest.browser.config.ts", - "./sdk/apimanagement/api-management-custom-widgets-tools/vitest.config.ts", - "./sdk/apimanagement/api-management-custom-widgets-tools/vitest.browser.config.ts", - "./sdk/servicebus/service-bus/vitest.config.ts", - "./sdk/servicebus/service-bus/vitest.unit.config.ts", - "./sdk/servicebus/service-bus/vitest.browser.config.ts", - "./sdk/apimanagement/api-management-custom-widgets-scaffolder/vitest.config.ts", - "./sdk/documentintelligence/ai-document-intelligence-rest/vitest.config.ts", - "./sdk/documentintelligence/ai-document-intelligence-rest/vitest.browser.config.ts", - "./sdk/mongocluster/arm-mongocluster/vitest.config.ts", - "./sdk/mongocluster/arm-mongocluster/vitest.browser.config.ts", - "./sdk/schemaregistry/schema-registry-avro/vitest.config.ts", - "./sdk/schemaregistry/schema-registry-avro/vitest.browser.config.ts", - "./eng/tools/dependency-testing/templates/vitest.dependency-test.config.ts", -]); +export default ["sdk/core/*/vitest.config.ts"];